diff --git a/babel.config.json b/babel.config.json new file mode 100644 index 000000000..4f06b0cd3 --- /dev/null +++ b/babel.config.json @@ -0,0 +1,6 @@ +{ + "presets": [ + "@babel/preset-env", + "@babel/preset-react" + ] +} diff --git a/client/dist/js/TinyMCE_sslink-file.js b/client/dist/js/TinyMCE_sslink-file.js index 73eb3fa7c..335931212 100644 --- a/client/dist/js/TinyMCE_sslink-file.js +++ b/client/dist/js/TinyMCE_sslink-file.js @@ -1,4 +1,4 @@ -!function(){var e,t,n={1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(394)),i=c(n(4754)),s=c(n(247)),l=c(n(5311)),a=n(3069),u=c(n(7086));function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,l.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,a.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,a.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(l.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(l.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=E(n(4754)),o=C(n(7363)),i=E(n(7820)),s=E(n(8264)),l=E(n(4744)),a=E(n(4271)),u=E(n(8729)),c=E(n(7241)),d=E(n(9777)),p=E(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=C(n(3521)),y=E(n(2175)),v=E(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function E(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class x extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){_(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(d.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,l=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const a=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:l},d=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,d.push("gallery-item__checkbox-label--disabled"));const p={className:d.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!a&&o.default.createElement(c.default,{className:"gallery-item__badge",status:a.status,message:a.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",S({},p,{htmlFor:l}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=x,x.propTypes={sectionConfig:p.default,item:l.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},x.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(_(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(x),F="GalleryItem",I=(0,m.createSelectable)((0,a.default)(F)(O));t.File=I;const A=(0,m.createSelectable)((0,u.default)(F)(I));t.Folder=A;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=a(n(7086)),i=n(2084),s=a(n(197)),l=a(n(7241));function a(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,c({},e.props,{isDragging:!0}))),t>1?r.default.createElement(l.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}d.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(d);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,l.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),l=n(1211);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8264:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(4754))&&r.__esModule?r:{default:r};var i={ACTIONS:{CREATE_FOLDER:"create-folder",EDIT_FILE:"edit"},MOVE_SUCCESS_DURATION:3e3,CSS_TRANSITION_TIME:300,SMALL_THUMBNAIL_HEIGHT:60,SMALL_THUMBNAIL_WIDTH:60,THUMBNAIL_HEIGHT:150,THUMBNAIL_WIDTH:200,BULK_ACTIONS:[{value:"delete",label:o.default._t("AssetAdmin.BULK_ACTIONS_DELETE","Delete"),className:"font-icon-trash",destructive:!0,callback:null,canApply:e=>e.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=R(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),l=D(n(5159)),a=D(n(4754)),u=D(n(7820)),c=R(n(3669)),d=R(n(5123)),p=R(n(2986)),f=R(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=R(n(1075)),b=D(n(6635)),C=D(n(8493)),E=D(n(168)),S=D(n(6307)),_=D(n(8264)),w=D(n(9900)),x=n(6648),O=R(n(9194)),F=D(n(6019)),I=D(n(7882)),A=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function R(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class M extends r.Component{constructor(e){super(e),this.state||(this.state={}),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}static getDerivedStateFromProps(e){return!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction),null}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return l.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(a.default.sprintf(a.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(a.default.sprintf(a.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),l=i.map((e=>e.message));if(s.length&&l.push(a.default.inject(a.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[a.default.inject(a.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),l.join("\n"),a.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,_.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,l=this.props.query&&this.props.query.view,a=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:l,filters:a,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:l}=this.props,{schemaUrl:a,targetId:u}=(0,F.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!a)return null;const c=[];s&&c.push({name:"requireLinkText",value:!0}),l&&c.push({name:"fileSelected",value:!0});const d={dialog:i,fileId:u,schemaUrl:a,schemaUrlQueries:c,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,d)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:l}=this.props,a=Boolean(t||(0,v.hasFilters)(n.filter)),c=this.props.sectionConfig.form.fileSearchForm.schemaUrl,d=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:a,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(A.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),l)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:c,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:d,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(I.default,{onConfirm:this.handleDelete}))}}t.Component=M,M.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},M.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var N=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(c,e),toasts:(0,s.bindActionCreators)(d,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,x.injectGraphql)("ReadFilesQuery"),C.default,E.default,S.default,y.withApollo)(M);t.default=N},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7363)),o=a(n(7086)),i=a(n(4754)),s=n(7803),l=n(1075);function a(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:a,onFolderIcon:u}=e;const c=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),a(...t)}},d=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:d(0,null,n),onClick:c(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:d(e.id,null,n),onClick:c(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:d(t.id,null,n),onClick:c(t.id,null,n),icons:e})}return(0,l.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var c=u;t.default=c},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),l=f(n(7056)),a=n(3069),u=f(n(7902)),c=f(n(8264)),d=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(c.default.ACTIONS).map((e=>c.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${c.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===c.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),l=Object.assign({},n);return(s||l.page<=1)&&delete l.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:l,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:c.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,a.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(l.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:d.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),l=u(n(8264)),a=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}const d={folderId:null,fileId:null,query:{},action:l.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},d,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),a=this.getFolderId(),u=o!==a&&null!==a,c=Object.assign({},n);return(u||c.page<=1)&&delete c.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:c,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||l.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(l.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,a.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),l=n(7588),a=n(6648),u=y(n(9194)),c=y(n(602)),d=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:l,onCancel:a,onConfirm:u}=e,p=null,g=[{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:a}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:a,color:"primary"},{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![c.CANCELING,c.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:a,onClosed:l})};t.Component=C,C.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const E=(0,o.compose)((0,a.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,a.injectGraphql)("readDescendantFileCountsQuery"),l.withApollo)(C),S={onCancel:u.cancel,onModalClose:u.modalClose};var _=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),S))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(E,b({},o,{files:n})):null}));t.default=_},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=a(n(7086)),s=n(4267);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function a(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var c=u;t.default=c},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=l(n(7363)),i=l(n(7086)),s=n(8127);function l(e){return e&&e.__esModule?e:{default:e}}const a=e=>{let{isOpen:t,body:n,onCancel:i,actions:l}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,l.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};a.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=a;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),l={totalItems:0,totalCount:0},a=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=a;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),l);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=S(n(4754)),o=n(1624),i=n(2827),s=E(n(7363)),l=S(n(8264)),a=S(n(8238)),u=S(n(4912)),c=E(n(5910)),d=S(n(4744)),p=S(n(7086)),f=n(6648),h=E(n(9194)),m=E(n(4478)),g=E(n(1827)),y=S(n(7820)),v=S(n(1872)),b=S(n(7902));function C(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(C=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=C(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function S(e){return e&&e.__esModule?e:{default:e}}function _(){return _=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==l.default.SPACE_KEY_CODE&&e.keyCode!==l.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:l,file:a}=this.props,u=this.getFormSchemaUrl();let c=g.buttonStates.SWITCH;r&&a&&"folder"!==a.type&&(c=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:d}=n,p=o&&a&&"folder"!==a.type?()=>{l.modal.stashFormValues(d,u),l.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:c,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,_({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),l=this.props.loadingComponent,{file:c}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(a.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:c}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(l,null)))}}t.Component=w,w.propTypes={file:d.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var x=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(c,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=x},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),l=u(n(7086)),a=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const c=e=>t=>{t.preventDefault(),e&&e()},d="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:d,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:l,children:u}=e;const g=c(t),y=[d,f,h].indexOf(l)>=0,v=[p,f,m].indexOf(l)>=0,b=(0,a.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(l)>=0}),C=(0,a.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(l)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:c(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:C,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:l.default.func,onDetails:l.default.func,showButton:l.default.oneOf(Object.keys(g).map((e=>g[e]))),children:l.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=A(n(7363)),s=D(n(394)),l=n(1624),a=n(2827),u=D(n(1856)),c=D(n(1783)),d=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=A(n(3669)),g=A(n(5123)),y=A(n(2986)),v=A(n(9194)),b=D(n(4093)),C=n(7588),E=n(8088),S=D(n(9900)),_=D(n(1338)),w=n(6648),x=D(n(7086)),O=D(n(4065)),F=D(n(35));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class R extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,_.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,l=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),a=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return a.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(c.default,{actions:l,items:a,total:n,key:a.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:d.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:l,limit:a,sort:u,selectedFiles:c,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:l,limit:a,sort:u,selectedFiles:c,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:l}=this.props,a={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:l,view:n,sort:t,folder:r};return i.default.createElement(e,a)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,l=this.props.LoadingComponent,a=r&&r.length>0;if(!e)return n||a?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),a&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(l,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const c=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),d={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(F.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(E.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:d,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},c,this.renderGalleryView()))),this.props.loading&&i.default.createElement(l,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=R;const M={page:1,limit:15},N={sectionConfig:S.default,loading:x.default.bool,sort:x.default.string,files:x.default.arrayOf(x.default.shape({id:x.default.number,parent:x.default.shape({id:x.default.number})})).isRequired,selectedFiles:x.default.arrayOf(x.default.number),totalCount:x.default.number,page:x.default.number,limit:x.default.number,badges:x.default.arrayOf(x.default.shape({id:x.default.number,message:x.default.node,status:x.default.string})),onOpenFile:x.default.func.isRequired,onOpenFolder:x.default.func.isRequired,onSort:x.default.func.isRequired,onSetPage:x.default.func.isRequired,maxFilesSelect:x.default.number},T=Object.assign({},M,{selectableItems:!1});t.galleryViewDefaultProps=T;const k=Object.assign({},N,{selectableItems:x.default.bool,selectableFolders:x.default.bool,onSelect:x.default.func,onCancelUpload:x.default.func,onRemoveErroredUpload:x.default.func,onEnableDropzone:x.default.func});t.galleryViewPropTypes=k,R.defaultProps=Object.assign({},M,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),R.propTypes=Object.assign({},N,{onSuccessfulUpload:x.default.func,onSuccessfulUploadQueue:x.default.func,onCreateFolder:x.default.func,onMoveFilesSuccess:x.default.func,onPublish:x.default.func,onUnpublish:x.default.func,type:x.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:x.default.oneOf(["tile","table"]),lastSelected:x.default.number,dialog:x.default.bool,fileId:x.default.number,folderId:x.default.number.isRequired,folder:x.default.shape({id:x.default.number,title:x.default.string,parentId:x.default.number,canView:x.default.bool,canEdit:x.default.bool}),files:x.default.array,errorMessage:x.default.string,graphQLErrors:x.default.arrayOf(x.default.string),actions:x.default.object,securityId:x.default.string,onViewChange:x.default.func.isRequired,createFileApiUrl:x.default.string,createFileApiMethod:x.default.string,search:x.default.object,enableDropzone:x.default.bool,concatenateSelect:x.default.bool,GalleryToolbar:x.default.elementType,sorters:x.default.arrayOf(x.default.shape({field:x.default.string.isRequired,direction:x.default.oneOf(["asc","desc"]).isRequired,label:x.default.string.isRequired})).isRequired});var j=(0,a.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,l.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:l,concatenateSelect:a,loading:u,sorters:c,lastSelected:d}=e.assetAdmin.gallery;return!n&&c&&c[0]&&(n=`${c[0].field},${c[0].direction}`),{lastSelected:d,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:l,concatenateSelect:a,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:c,sort:n}}),(function(e){return{actions:{gallery:(0,a.bindActionCreators)(m,e),toasts:(0,a.bindActionCreators)(g,e),queuedFiles:(0,a.bindActionCreators)(y,e),confirmDeletion:(0,a.bindActionCreators)(v,e)}}})),b.default,(e=>(0,C.withApollo)(e)))(R);t.default=j},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=a(n(7820)),i=a(n(5710)),s=a(n(7086)),l=a(n(7431));function a(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}c.contextTypes={dragDropManager:s.default.object},c.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var d=(0,l.default)(c);t.default=d},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),l=b(n(7056)),a=b(n(1746)),u=b(n(6513)),c=v(n(3669)),d=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class C extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(l.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=C,C.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},C.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var E=(0,i.compose)(a.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:l,targetId:a}=(0,m.default)(s);if(!l)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let c=g.default.stringify(u);return c=c?`?${c}`:"",{schemaUrl:`${l}/${a}${c}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(c,e),modal:(0,i.bindActionCreators)(d,e)}}})),u.default)(C);t.default=E},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),l=h(n(8264)),a=h(n(7086)),u=n(3669),c=n(5123),d=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:a,setError:u,setBadge:c}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),c(n,`${r.length}`,"success",l.default.MOVE_SUCCESS_DURATION),a(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(d.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:a.default.number.isRequired,isOpen:a.default.bool,onClosed:a.default.func,setNotice:a.default.func,setBadge:a.default.func,setError:a.default.func,title:a.default.string,onSuccess:a.default.func,onOpenFolder:a.default.func.isRequired,selectedFiles:a.default.array.isRequired,actions:a.default.shape({files:a.default.shape({moveFiles:a.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===l.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,c.display)({text:t,type:"success",actions:n}))},setError(t){e((0,c.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),l=p(n(9777)),a=n(4288),u=n(3069),c=n(6648),d=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(l.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(l.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],l={};return s.push(`${i}--${o}`),"image"===o&&t&&(l.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:l})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=a.galleryViewDefaultProps,h.propTypes={...a.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,d.compose)((0,c.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),l=c(n(8345)),a=c(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class d extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(l.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:l,selectableFolders:a}=this.props,u=r.find((t=>t.id===e.id));let c={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;c={...c,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;c={...c,onActivate:"folder"===e.type?t:n}}if(l&&(a||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?c.onActivate:this.props.onSelect;c={...c,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return c={...c,onDropFiles:e},o.default.createElement(n,c)}return o.default.createElement(t,c)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=d,d.defaultProps=s.galleryViewDefaultProps,d.propTypes={...s.galleryViewPropTypes,File:a.default.elementType.isRequired,Folder:a.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(d);t.default=p},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:l}=e,a=null,u=null;if(n===i)return a=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:a,targetId:u};if(n===s&&o){switch(l){case"insert-media":a=t.fileInsertForm.schemaUrl;break;case"insert-link":a=t.fileEditorLinkForm.schemaUrl;break;case"select":a=t.fileSelectForm.schemaUrl;break;default:a=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:a,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` +!function(){var e,t,n={1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(394)),i=c(n(4754)),s=c(n(247)),l=c(n(5311)),a=n(3069),u=c(n(7086));function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,l.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,a.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,a.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(l.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(l.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=E(n(4754)),o=C(n(7363)),i=E(n(7820)),s=E(n(8264)),l=E(n(4744)),a=E(n(4271)),u=E(n(8729)),c=E(n(7241)),d=E(n(9777)),p=E(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=C(n(3521)),y=E(n(2175)),v=E(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function E(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class x extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){_(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(d.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,l=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const a=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:l},d=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,d.push("gallery-item__checkbox-label--disabled"));const p={className:d.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!a&&o.default.createElement(c.default,{className:"gallery-item__badge",status:a.status,message:a.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",S({},p,{htmlFor:l}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=x,x.propTypes={sectionConfig:p.default,item:l.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},x.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(_(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(x),F="GalleryItem",I=(0,m.createSelectable)((0,a.default)(F)(O));t.File=I;const A=(0,m.createSelectable)((0,u.default)(F)(I));t.Folder=A;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=a(n(7086)),i=n(2084),s=a(n(197)),l=a(n(7241));function a(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,c({},e.props,{isDragging:!0}))),t>1?r.default.createElement(l.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}d.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(d);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,l.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),l=n(1211);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8264:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(4754))&&r.__esModule?r:{default:r};var i={ACTIONS:{CREATE_FOLDER:"create-folder",EDIT_FILE:"edit"},MOVE_SUCCESS_DURATION:3e3,CSS_TRANSITION_TIME:300,SMALL_THUMBNAIL_HEIGHT:60,SMALL_THUMBNAIL_WIDTH:60,THUMBNAIL_HEIGHT:150,THUMBNAIL_WIDTH:200,BULK_ACTIONS:[{value:"delete",label:o.default._t("AssetAdmin.BULK_ACTIONS_DELETE","Delete"),className:"font-icon-trash",destructive:!0,callback:null,canApply:e=>e.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=R(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),l=D(n(5159)),a=D(n(4754)),u=D(n(7820)),c=R(n(3669)),d=R(n(5123)),p=R(n(2986)),f=R(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=R(n(1075)),b=D(n(6635)),C=D(n(8493)),E=D(n(168)),S=D(n(6307)),_=D(n(8264)),w=D(n(9900)),x=n(6648),O=R(n(9194)),F=D(n(6019)),I=D(n(7882)),A=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function R(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class M extends r.Component{constructor(e){super(e),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}componentWillReceiveProps(e){"function"==typeof e.onReplaceUrl&&!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction)}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return l.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(a.default.sprintf(a.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(a.default.sprintf(a.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),l=i.map((e=>e.message));if(s.length&&l.push(a.default.inject(a.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[a.default.inject(a.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),l.join("\n"),a.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,_.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,l=this.props.query&&this.props.query.view,a=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:l,filters:a,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:l}=this.props,{schemaUrl:a,targetId:u}=(0,F.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!a)return null;const c=[];s&&c.push({name:"requireLinkText",value:!0}),l&&c.push({name:"fileSelected",value:!0});const d={dialog:i,fileId:u,schemaUrl:a,schemaUrlQueries:c,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,d)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:l}=this.props,a=Boolean(t||(0,v.hasFilters)(n.filter)),c=this.props.sectionConfig.form.fileSearchForm.schemaUrl,d=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:a,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(A.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),l)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:c,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:d,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(I.default,{onConfirm:this.handleDelete}))}}t.Component=M,M.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},M.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var N=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(c,e),toasts:(0,s.bindActionCreators)(d,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,x.injectGraphql)("ReadFilesQuery"),C.default,E.default,S.default,y.withApollo)(M);t.default=N},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7363)),o=a(n(7086)),i=a(n(4754)),s=n(7803),l=n(1075);function a(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:a,onFolderIcon:u}=e;const c=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),a(...t)}},d=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:d(0,null,n),onClick:c(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:d(e.id,null,n),onClick:c(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:d(t.id,null,n),onClick:c(t.id,null,n),icons:e})}return(0,l.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var c=u;t.default=c},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),l=f(n(7056)),a=n(3069),u=f(n(7902)),c=f(n(8264)),d=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(c.default.ACTIONS).map((e=>c.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${c.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===c.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),l=Object.assign({},n);return(s||l.page<=1)&&delete l.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:l,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:c.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,a.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(l.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:d.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),l=u(n(8264)),a=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}const d={folderId:null,fileId:null,query:{},action:l.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},d,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),a=this.getFolderId(),u=o!==a&&null!==a,c=Object.assign({},n);return(u||c.page<=1)&&delete c.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:c,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||l.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:l.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(l.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,a.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),l=n(7588),a=n(6648),u=y(n(9194)),c=y(n(602)),d=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:l,onCancel:a,onConfirm:u}=e,p=null,g=[{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:a}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:a,color:"primary"},{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![c.CANCELING,c.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:a,onClosed:l})};t.Component=C,C.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const E=(0,o.compose)((0,a.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,a.injectGraphql)("readDescendantFileCountsQuery"),l.withApollo)(C),S={onCancel:u.cancel,onModalClose:u.modalClose};var _=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),S))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(E,b({},o,{files:n})):null}));t.default=_},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=a(n(7086)),s=n(4267);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}function a(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var c=u;t.default=c},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=l(n(7363)),i=l(n(7086)),s=n(8127);function l(e){return e&&e.__esModule?e:{default:e}}const a=e=>{let{isOpen:t,body:n,onCancel:i,actions:l}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,l.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};a.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=a;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),l={totalItems:0,totalCount:0},a=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=a;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),l);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=S(n(4754)),o=n(1624),i=n(2827),s=E(n(7363)),l=S(n(8264)),a=S(n(8238)),u=S(n(4912)),c=E(n(5910)),d=S(n(4744)),p=S(n(7086)),f=n(6648),h=E(n(9194)),m=E(n(4478)),g=E(n(1827)),y=S(n(7820)),v=S(n(1872)),b=S(n(7902));function C(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(C=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=C(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function S(e){return e&&e.__esModule?e:{default:e}}function _(){return _=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==l.default.SPACE_KEY_CODE&&e.keyCode!==l.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:l,file:a}=this.props,u=this.getFormSchemaUrl();let c=g.buttonStates.SWITCH;r&&a&&"folder"!==a.type&&(c=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:d}=n,p=o&&a&&"folder"!==a.type?()=>{l.modal.stashFormValues(d,u),l.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:c,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,_({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),l=this.props.loadingComponent,{file:c}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(a.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:c}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(l,null)))}}t.Component=w,w.propTypes={file:d.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var x=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(c,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=x},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),l=u(n(7086)),a=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const c=e=>t=>{t.preventDefault(),e&&e()},d="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:d,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:l,children:u}=e;const g=c(t),y=[d,f,h].indexOf(l)>=0,v=[p,f,m].indexOf(l)>=0,b=(0,a.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(l)>=0}),C=(0,a.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(l)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:c(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:C,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:l.default.func,onDetails:l.default.func,showButton:l.default.oneOf(Object.keys(g).map((e=>g[e]))),children:l.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=A(n(7363)),s=D(n(394)),l=n(1624),a=n(2827),u=D(n(1856)),c=D(n(1783)),d=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=A(n(3669)),g=A(n(5123)),y=A(n(2986)),v=A(n(9194)),b=D(n(4093)),C=n(7588),E=n(8088),S=D(n(9900)),_=D(n(1338)),w=n(6648),x=D(n(7086)),O=D(n(4065)),F=D(n(35));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class R extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,_.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,l=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),a=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return a.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(c.default,{actions:l,items:a,total:n,key:a.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:d.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:l,limit:a,sort:u,selectedFiles:c,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:l,limit:a,sort:u,selectedFiles:c,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:l}=this.props,a={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:l,view:n,sort:t,folder:r};return i.default.createElement(e,a)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,l=this.props.LoadingComponent,a=r&&r.length>0;if(!e)return n||a?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),a&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(l,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const c=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),d={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(F.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(E.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:d,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},c,this.renderGalleryView()))),this.props.loading&&i.default.createElement(l,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=R;const M={page:1,limit:15},N={sectionConfig:S.default,loading:x.default.bool,sort:x.default.string,files:x.default.arrayOf(x.default.shape({id:x.default.number,parent:x.default.shape({id:x.default.number})})).isRequired,selectedFiles:x.default.arrayOf(x.default.number),totalCount:x.default.number,page:x.default.number,limit:x.default.number,badges:x.default.arrayOf(x.default.shape({id:x.default.number,message:x.default.node,status:x.default.string})),onOpenFile:x.default.func.isRequired,onOpenFolder:x.default.func.isRequired,onSort:x.default.func.isRequired,onSetPage:x.default.func.isRequired,maxFilesSelect:x.default.number},T=Object.assign({},M,{selectableItems:!1});t.galleryViewDefaultProps=T;const k=Object.assign({},N,{selectableItems:x.default.bool,selectableFolders:x.default.bool,onSelect:x.default.func,onCancelUpload:x.default.func,onRemoveErroredUpload:x.default.func,onEnableDropzone:x.default.func});t.galleryViewPropTypes=k,R.defaultProps=Object.assign({},M,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),R.propTypes=Object.assign({},N,{onSuccessfulUpload:x.default.func,onSuccessfulUploadQueue:x.default.func,onCreateFolder:x.default.func,onMoveFilesSuccess:x.default.func,onPublish:x.default.func,onUnpublish:x.default.func,type:x.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:x.default.oneOf(["tile","table"]),lastSelected:x.default.number,dialog:x.default.bool,fileId:x.default.number,folderId:x.default.number.isRequired,folder:x.default.shape({id:x.default.number,title:x.default.string,parentId:x.default.number,canView:x.default.bool,canEdit:x.default.bool}),files:x.default.array,errorMessage:x.default.string,graphQLErrors:x.default.arrayOf(x.default.string),actions:x.default.object,securityId:x.default.string,onViewChange:x.default.func.isRequired,createFileApiUrl:x.default.string,createFileApiMethod:x.default.string,search:x.default.object,enableDropzone:x.default.bool,concatenateSelect:x.default.bool,GalleryToolbar:x.default.elementType,sorters:x.default.arrayOf(x.default.shape({field:x.default.string.isRequired,direction:x.default.oneOf(["asc","desc"]).isRequired,label:x.default.string.isRequired})).isRequired});var j=(0,a.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,l.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:l,concatenateSelect:a,loading:u,sorters:c,lastSelected:d}=e.assetAdmin.gallery;return!n&&c&&c[0]&&(n=`${c[0].field},${c[0].direction}`),{lastSelected:d,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:l,concatenateSelect:a,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:c,sort:n}}),(function(e){return{actions:{gallery:(0,a.bindActionCreators)(m,e),toasts:(0,a.bindActionCreators)(g,e),queuedFiles:(0,a.bindActionCreators)(y,e),confirmDeletion:(0,a.bindActionCreators)(v,e)}}})),b.default,(e=>(0,C.withApollo)(e)))(R);t.default=j},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=a(n(7820)),i=a(n(5710)),s=a(n(7086)),l=a(n(7431));function a(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}c.contextTypes={dragDropManager:s.default.object},c.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var d=(0,l.default)(c);t.default=d},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),l=b(n(7056)),a=b(n(1746)),u=b(n(6513)),c=v(n(3669)),d=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class C extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(l.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=C,C.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},C.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var E=(0,i.compose)(a.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:l,targetId:a}=(0,m.default)(s);if(!l)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let c=g.default.stringify(u);return c=c?`?${c}`:"",{schemaUrl:`${l}/${a}${c}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(c,e),modal:(0,i.bindActionCreators)(d,e)}}})),u.default)(C);t.default=E},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),l=h(n(8264)),a=h(n(7086)),u=n(3669),c=n(5123),d=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:a,setError:u,setBadge:c}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),c(n,`${r.length}`,"success",l.default.MOVE_SUCCESS_DURATION),a(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(d.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:a.default.number.isRequired,isOpen:a.default.bool,onClosed:a.default.func,setNotice:a.default.func,setBadge:a.default.func,setError:a.default.func,title:a.default.string,onSuccess:a.default.func,onOpenFolder:a.default.func.isRequired,selectedFiles:a.default.array.isRequired,actions:a.default.shape({files:a.default.shape({moveFiles:a.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===l.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,c.display)({text:t,type:"success",actions:n}))},setError(t){e((0,c.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),l=p(n(9777)),a=n(4288),u=n(3069),c=n(6648),d=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(l.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(l.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],l={};return s.push(`${i}--${o}`),"image"===o&&t&&(l.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:l})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=a.galleryViewDefaultProps,h.propTypes={...a.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,d.compose)((0,c.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),l=c(n(8345)),a=c(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class d extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(l.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:l,selectableFolders:a}=this.props,u=r.find((t=>t.id===e.id));let c={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;c={...c,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;c={...c,onActivate:"folder"===e.type?t:n}}if(l&&(a||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?c.onActivate:this.props.onSelect;c={...c,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return c={...c,onDropFiles:e},o.default.createElement(n,c)}return o.default.createElement(t,c)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=d,d.defaultProps=s.galleryViewDefaultProps,d.propTypes={...s.galleryViewPropTypes,File:a.default.elementType.isRequired,Folder:a.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(d);t.default=p},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:l}=e,a=null,u=null;if(n===i)return a=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:a,targetId:u};if(n===s&&o){switch(l){case"insert-media":a=t.fileInsertForm.schemaUrl;break;case"insert-link":a=t.fileEditorLinkForm.schemaUrl;break;case"select":a=t.fileSelectForm.schemaUrl;break;default:a=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:a,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` mutation ${t}($ids:[ID]!, $force:Boolean, $quiet:Boolean) { ${e}(ids: $ids, force: $force, quiet: $quiet) { ...on File { diff --git a/client/dist/js/TinyMCE_ssmedia.js b/client/dist/js/TinyMCE_ssmedia.js index 370cbd24d..151082711 100644 --- a/client/dist/js/TinyMCE_ssmedia.js +++ b/client/dist/js/TinyMCE_ssmedia.js @@ -1,4 +1,4 @@ -!function(){var e,t,n={1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(394)),i=c(n(4754)),s=c(n(247)),a=c(n(5311)),l=n(3069),u=c(n(7086));function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,a.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,l.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,l.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(a.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(a.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=E(n(4754)),o=C(n(7363)),i=E(n(7820)),s=E(n(8264)),a=E(n(4744)),l=E(n(4271)),u=E(n(8729)),c=E(n(7241)),d=E(n(9777)),p=E(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=C(n(3521)),y=E(n(2175)),v=E(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function E(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class x extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){_(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(d.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,a=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const l=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:a},d=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,d.push("gallery-item__checkbox-label--disabled"));const p={className:d.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!l&&o.default.createElement(c.default,{className:"gallery-item__badge",status:l.status,message:l.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",S({},p,{htmlFor:a}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=x,x.propTypes={sectionConfig:p.default,item:a.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},x.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(_(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(x),F="GalleryItem",I=(0,m.createSelectable)((0,l.default)(F)(O));t.File=I;const A=(0,m.createSelectable)((0,u.default)(F)(I));t.Folder=A;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7086)),i=n(2084),s=l(n(197)),a=l(n(7241));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,c({},e.props,{isDragging:!0}))),t>1?r.default.createElement(a.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}d.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(d);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,a.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),a=n(1211);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},8264:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(4754))&&r.__esModule?r:{default:r};var i={ACTIONS:{CREATE_FOLDER:"create-folder",EDIT_FILE:"edit"},MOVE_SUCCESS_DURATION:3e3,CSS_TRANSITION_TIME:300,SMALL_THUMBNAIL_HEIGHT:60,SMALL_THUMBNAIL_WIDTH:60,THUMBNAIL_HEIGHT:150,THUMBNAIL_WIDTH:200,BULK_ACTIONS:[{value:"delete",label:o.default._t("AssetAdmin.BULK_ACTIONS_DELETE","Delete"),className:"font-icon-trash",destructive:!0,callback:null,canApply:e=>e.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=M(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),a=D(n(5159)),l=D(n(4754)),u=D(n(7820)),c=M(n(3669)),d=M(n(5123)),p=M(n(2986)),f=M(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=M(n(1075)),b=D(n(6635)),C=D(n(8493)),E=D(n(168)),S=D(n(6307)),_=D(n(8264)),w=D(n(9900)),x=n(6648),O=M(n(9194)),F=D(n(6019)),I=D(n(7882)),A=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function M(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class R extends r.Component{constructor(e){super(e),this.state||(this.state={}),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}static getDerivedStateFromProps(e){return!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction),null}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return a.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),a=i.map((e=>e.message));if(s.length&&a.push(l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),a.join("\n"),l.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,_.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,a=this.props.query&&this.props.query.view,l=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:a,filters:l,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:a}=this.props,{schemaUrl:l,targetId:u}=(0,F.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!l)return null;const c=[];s&&c.push({name:"requireLinkText",value:!0}),a&&c.push({name:"fileSelected",value:!0});const d={dialog:i,fileId:u,schemaUrl:l,schemaUrlQueries:c,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,d)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:a}=this.props,l=Boolean(t||(0,v.hasFilters)(n.filter)),c=this.props.sectionConfig.form.fileSearchForm.schemaUrl,d=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:l,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(A.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),a)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:c,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:d,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(I.default,{onConfirm:this.handleDelete}))}}t.Component=R,R.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},R.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var N=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(c,e),toasts:(0,s.bindActionCreators)(d,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,x.injectGraphql)("ReadFilesQuery"),C.default,E.default,S.default,y.withApollo)(R);t.default=N},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(7363)),o=l(n(7086)),i=l(n(4754)),s=n(7803),a=n(1075);function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:l,onFolderIcon:u}=e;const c=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),l(...t)}},d=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:d(0,null,n),onClick:c(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:d(e.id,null,n),onClick:c(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:d(t.id,null,n),onClick:c(t.id,null,n),icons:e})}return(0,a.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var c=u;t.default=c},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),a=f(n(7056)),l=n(3069),u=f(n(7902)),c=f(n(8264)),d=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(c.default.ACTIONS).map((e=>c.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${c.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===c.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),a=Object.assign({},n);return(s||a.page<=1)&&delete a.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:a,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:c.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,l.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(a.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:d.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),a=u(n(8264)),l=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}const d={folderId:null,fileId:null,query:{},action:a.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},d,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),l=this.getFolderId(),u=o!==l&&null!==l,c=Object.assign({},n);return(u||c.page<=1)&&delete c.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:c,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||a.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(a.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,l.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),a=n(7588),l=n(6648),u=y(n(9194)),c=y(n(602)),d=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:a,onCancel:l,onConfirm:u}=e,p=null,g=[{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:l}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:l,color:"primary"},{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![c.CANCELING,c.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:l,onClosed:a})};t.Component=C,C.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const E=(0,o.compose)((0,l.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,l.injectGraphql)("readDescendantFileCountsQuery"),a.withApollo)(C),S={onCancel:u.cancel,onModalClose:u.modalClose};var _=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),S))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(E,b({},o,{files:n})):null}));t.default=_},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=l(n(7086)),s=n(4267);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var c=u;t.default=c},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=a(n(7363)),i=a(n(7086)),s=n(8127);function a(e){return e&&e.__esModule?e:{default:e}}const l=e=>{let{isOpen:t,body:n,onCancel:i,actions:a}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,a.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};l.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=l;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),a={totalItems:0,totalCount:0},l=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=l;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),a);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=S(n(4754)),o=n(1624),i=n(2827),s=E(n(7363)),a=S(n(8264)),l=S(n(8238)),u=S(n(4912)),c=E(n(5910)),d=S(n(4744)),p=S(n(7086)),f=n(6648),h=E(n(9194)),m=E(n(4478)),g=E(n(1827)),y=S(n(7820)),v=S(n(1872)),b=S(n(7902));function C(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(C=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=C(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function S(e){return e&&e.__esModule?e:{default:e}}function _(){return _=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==a.default.SPACE_KEY_CODE&&e.keyCode!==a.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:a,file:l}=this.props,u=this.getFormSchemaUrl();let c=g.buttonStates.SWITCH;r&&l&&"folder"!==l.type&&(c=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:d}=n,p=o&&l&&"folder"!==l.type?()=>{a.modal.stashFormValues(d,u),a.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:c,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,_({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),a=this.props.loadingComponent,{file:c}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(l.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:c}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(a,null)))}}t.Component=w,w.propTypes={file:d.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var x=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(c,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=x},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),a=u(n(7086)),l=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const c=e=>t=>{t.preventDefault(),e&&e()},d="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:d,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:a,children:u}=e;const g=c(t),y=[d,f,h].indexOf(a)>=0,v=[p,f,m].indexOf(a)>=0,b=(0,l.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(a)>=0}),C=(0,l.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(a)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:c(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:C,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:a.default.func,onDetails:a.default.func,showButton:a.default.oneOf(Object.keys(g).map((e=>g[e]))),children:a.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=A(n(7363)),s=D(n(394)),a=n(1624),l=n(2827),u=D(n(1856)),c=D(n(1783)),d=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=A(n(3669)),g=A(n(5123)),y=A(n(2986)),v=A(n(9194)),b=D(n(4093)),C=n(7588),E=n(8088),S=D(n(9900)),_=D(n(1338)),w=n(6648),x=D(n(7086)),O=D(n(4065)),F=D(n(35));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class M extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,_.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,a=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),l=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return l.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(c.default,{actions:a,items:l,total:n,key:l.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:d.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:a,limit:l,sort:u,selectedFiles:c,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:a,limit:l,sort:u,selectedFiles:c,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:a}=this.props,l={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:a,view:n,sort:t,folder:r};return i.default.createElement(e,l)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,a=this.props.LoadingComponent,l=r&&r.length>0;if(!e)return n||l?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),l&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(a,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const c=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),d={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(F.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(E.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:d,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},c,this.renderGalleryView()))),this.props.loading&&i.default.createElement(a,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=M;const R={page:1,limit:15},N={sectionConfig:S.default,loading:x.default.bool,sort:x.default.string,files:x.default.arrayOf(x.default.shape({id:x.default.number,parent:x.default.shape({id:x.default.number})})).isRequired,selectedFiles:x.default.arrayOf(x.default.number),totalCount:x.default.number,page:x.default.number,limit:x.default.number,badges:x.default.arrayOf(x.default.shape({id:x.default.number,message:x.default.node,status:x.default.string})),onOpenFile:x.default.func.isRequired,onOpenFolder:x.default.func.isRequired,onSort:x.default.func.isRequired,onSetPage:x.default.func.isRequired,maxFilesSelect:x.default.number},T=Object.assign({},R,{selectableItems:!1});t.galleryViewDefaultProps=T;const k=Object.assign({},N,{selectableItems:x.default.bool,selectableFolders:x.default.bool,onSelect:x.default.func,onCancelUpload:x.default.func,onRemoveErroredUpload:x.default.func,onEnableDropzone:x.default.func});t.galleryViewPropTypes=k,M.defaultProps=Object.assign({},R,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),M.propTypes=Object.assign({},N,{onSuccessfulUpload:x.default.func,onSuccessfulUploadQueue:x.default.func,onCreateFolder:x.default.func,onMoveFilesSuccess:x.default.func,onPublish:x.default.func,onUnpublish:x.default.func,type:x.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:x.default.oneOf(["tile","table"]),lastSelected:x.default.number,dialog:x.default.bool,fileId:x.default.number,folderId:x.default.number.isRequired,folder:x.default.shape({id:x.default.number,title:x.default.string,parentId:x.default.number,canView:x.default.bool,canEdit:x.default.bool}),files:x.default.array,errorMessage:x.default.string,graphQLErrors:x.default.arrayOf(x.default.string),actions:x.default.object,securityId:x.default.string,onViewChange:x.default.func.isRequired,createFileApiUrl:x.default.string,createFileApiMethod:x.default.string,search:x.default.object,enableDropzone:x.default.bool,concatenateSelect:x.default.bool,GalleryToolbar:x.default.elementType,sorters:x.default.arrayOf(x.default.shape({field:x.default.string.isRequired,direction:x.default.oneOf(["asc","desc"]).isRequired,label:x.default.string.isRequired})).isRequired});var j=(0,l.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,a.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:u,sorters:c,lastSelected:d}=e.assetAdmin.gallery;return!n&&c&&c[0]&&(n=`${c[0].field},${c[0].direction}`),{lastSelected:d,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:c,sort:n}}),(function(e){return{actions:{gallery:(0,l.bindActionCreators)(m,e),toasts:(0,l.bindActionCreators)(g,e),queuedFiles:(0,l.bindActionCreators)(y,e),confirmDeletion:(0,l.bindActionCreators)(v,e)}}})),b.default,(e=>(0,C.withApollo)(e)))(M);t.default=j},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7820)),i=l(n(5710)),s=l(n(7086)),a=l(n(7431));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}c.contextTypes={dragDropManager:s.default.object},c.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var d=(0,a.default)(c);t.default=d},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),a=b(n(7056)),l=b(n(1746)),u=b(n(6513)),c=v(n(3669)),d=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class C extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(a.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=C,C.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},C.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var E=(0,i.compose)(l.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:a,targetId:l}=(0,m.default)(s);if(!a)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let c=g.default.stringify(u);return c=c?`?${c}`:"",{schemaUrl:`${a}/${l}${c}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(c,e),modal:(0,i.bindActionCreators)(d,e)}}})),u.default)(C);t.default=E},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),a=h(n(8264)),l=h(n(7086)),u=n(3669),c=n(5123),d=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:l,setError:u,setBadge:c}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),c(n,`${r.length}`,"success",a.default.MOVE_SUCCESS_DURATION),l(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(d.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:l.default.number.isRequired,isOpen:l.default.bool,onClosed:l.default.func,setNotice:l.default.func,setBadge:l.default.func,setError:l.default.func,title:l.default.string,onSuccess:l.default.func,onOpenFolder:l.default.func.isRequired,selectedFiles:l.default.array.isRequired,actions:l.default.shape({files:l.default.shape({moveFiles:l.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===a.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,c.display)({text:t,type:"success",actions:n}))},setError(t){e((0,c.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),a=p(n(9777)),l=n(4288),u=n(3069),c=n(6648),d=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(a.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(a.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],a={};return s.push(`${i}--${o}`),"image"===o&&t&&(a.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:a})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=l.galleryViewDefaultProps,h.propTypes={...l.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,d.compose)((0,c.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),a=c(n(8345)),l=c(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class d extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(a.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:a,selectableFolders:l}=this.props,u=r.find((t=>t.id===e.id));let c={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;c={...c,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;c={...c,onActivate:"folder"===e.type?t:n}}if(a&&(l||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?c.onActivate:this.props.onSelect;c={...c,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return c={...c,onDropFiles:e},o.default.createElement(n,c)}return o.default.createElement(t,c)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=d,d.defaultProps=s.galleryViewDefaultProps,d.propTypes={...s.galleryViewPropTypes,File:l.default.elementType.isRequired,Folder:l.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(d);t.default=p},4495:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.imageSizePresetButtons=function(e,t){return t.map((t=>function(e,t){const{name:n,width:r,text:o}=t,i=`ssmedia${n}`;e.on("init",(()=>{e.formatter.register(i,{selector:"img",attributes:{width:r?r.toString():""}})}));const s=()=>{const t=e.selection.getNode();return t&&"IMG"===t.tagName?t:void 0},a=e=>{const t=s();e.disabled(!(!t||!r)&&t.naturalWidth{if(e.formatter.match(i))return!0;const t=s();if(!r&&t){const e=t.getAttribute("width");return!e||e.toString()===t.naturalWidth.toString()}return!1},u=t=>{const n=t.target,o=()=>{n.active(l())};if(e.on("NodeChange",(()=>{a(n),o()})),a(n),e.formatter&&(e.formatter.formatChanged(i,o),l())){e.formatter.apply(i);const t=s();t.setAttribute("width",r||t.naturalWidth)}},c=()=>{const t=s();t&&(t.removeAttribute("height"),t.removeAttribute("width"),e.formatter.apply(i),r?t.setAttribute("height",t.clientHeight):(t.setAttribute("width",t.naturalWidth),t.setAttribute("height",t.naturalHeight)))};return e.ui.registry.addButton(i,{text:o,onAction:c,onPostRender:u}),i}(e,t)))}},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:a}=e,l=null,u=null;if(n===i)return l=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:l,targetId:u};if(n===s&&o){switch(a){case"insert-media":l=t.fileInsertForm.schemaUrl;break;case"insert-link":l=t.fileEditorLinkForm.schemaUrl;break;case"select":l=t.fileSelectForm.schemaUrl;break;default:l=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:l,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` +!function(){var e,t,n={1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(394)),i=c(n(4754)),s=c(n(247)),a=c(n(5311)),l=n(3069),u=c(n(7086));function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,a.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,l.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,l.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(a.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(a.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=E(n(4754)),o=C(n(7363)),i=E(n(7820)),s=E(n(8264)),a=E(n(4744)),l=E(n(4271)),u=E(n(8729)),c=E(n(7241)),d=E(n(9777)),p=E(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=C(n(3521)),y=E(n(2175)),v=E(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function C(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function E(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class x extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){_(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(d.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,a=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const l=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:a},d=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,d.push("gallery-item__checkbox-label--disabled"));const p={className:d.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!l&&o.default.createElement(c.default,{className:"gallery-item__badge",status:l.status,message:l.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",S({},p,{htmlFor:a}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=x,x.propTypes={sectionConfig:p.default,item:a.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},x.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(_(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(x),F="GalleryItem",I=(0,m.createSelectable)((0,l.default)(F)(O));t.File=I;const A=(0,m.createSelectable)((0,u.default)(F)(I));t.Folder=A;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7086)),i=n(2084),s=l(n(197)),a=l(n(7241));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,c({},e.props,{isDragging:!0}))),t>1?r.default.createElement(a.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}d.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(d);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,a.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),a=n(1211);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},8264:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(4754))&&r.__esModule?r:{default:r};var i={ACTIONS:{CREATE_FOLDER:"create-folder",EDIT_FILE:"edit"},MOVE_SUCCESS_DURATION:3e3,CSS_TRANSITION_TIME:300,SMALL_THUMBNAIL_HEIGHT:60,SMALL_THUMBNAIL_WIDTH:60,THUMBNAIL_HEIGHT:150,THUMBNAIL_WIDTH:200,BULK_ACTIONS:[{value:"delete",label:o.default._t("AssetAdmin.BULK_ACTIONS_DELETE","Delete"),className:"font-icon-trash",destructive:!0,callback:null,canApply:e=>e.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=M(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),a=D(n(5159)),l=D(n(4754)),u=D(n(7820)),c=M(n(3669)),d=M(n(5123)),p=M(n(2986)),f=M(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=M(n(1075)),b=D(n(6635)),C=D(n(8493)),E=D(n(168)),S=D(n(6307)),_=D(n(8264)),w=D(n(9900)),x=n(6648),O=M(n(9194)),F=D(n(6019)),I=D(n(7882)),A=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function M(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class R extends r.Component{constructor(e){super(e),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}componentWillReceiveProps(e){"function"==typeof e.onReplaceUrl&&!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction)}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return a.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),a=i.map((e=>e.message));if(s.length&&a.push(l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),a.join("\n"),l.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,_.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,a=this.props.query&&this.props.query.view,l=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:a,filters:l,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:a}=this.props,{schemaUrl:l,targetId:u}=(0,F.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!l)return null;const c=[];s&&c.push({name:"requireLinkText",value:!0}),a&&c.push({name:"fileSelected",value:!0});const d={dialog:i,fileId:u,schemaUrl:l,schemaUrlQueries:c,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,d)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:a}=this.props,l=Boolean(t||(0,v.hasFilters)(n.filter)),c=this.props.sectionConfig.form.fileSearchForm.schemaUrl,d=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:l,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(A.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),a)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:c,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:d,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(I.default,{onConfirm:this.handleDelete}))}}t.Component=R,R.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},R.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var N=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(c,e),toasts:(0,s.bindActionCreators)(d,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,x.injectGraphql)("ReadFilesQuery"),C.default,E.default,S.default,y.withApollo)(R);t.default=N},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(7363)),o=l(n(7086)),i=l(n(4754)),s=n(7803),a=n(1075);function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:l,onFolderIcon:u}=e;const c=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),l(...t)}},d=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:d(0,null,n),onClick:c(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:d(e.id,null,n),onClick:c(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:d(t.id,null,n),onClick:c(t.id,null,n),icons:e})}return(0,a.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var c=u;t.default=c},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),a=f(n(7056)),l=n(3069),u=f(n(7902)),c=f(n(8264)),d=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(c.default.ACTIONS).map((e=>c.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${c.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===c.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:c.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),a=Object.assign({},n);return(s||a.page<=1)&&delete a.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:a,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:c.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,l.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(a.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:d.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),a=u(n(8264)),l=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}const d={folderId:null,fileId:null,query:{},action:a.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},d,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),l=this.getFolderId(),u=o!==l&&null!==l,c=Object.assign({},n);return(u||c.page<=1)&&delete c.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:c,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||a.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(a.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,l.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),a=n(7588),l=n(6648),u=y(n(9194)),c=y(n(602)),d=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:a,onCancel:l,onConfirm:u}=e,p=null,g=[{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:l}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:d.default._t("AssetAdmin.CANCEL","Cancel"),handler:l,color:"primary"},{label:d.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![c.CANCELING,c.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:l,onClosed:a})};t.Component=C,C.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const E=(0,o.compose)((0,l.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,l.injectGraphql)("readDescendantFileCountsQuery"),a.withApollo)(C),S={onCancel:u.cancel,onModalClose:u.modalClose};var _=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),S))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(E,b({},o,{files:n})):null}));t.default=_},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=l(n(7086)),s=n(4267);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var c=u;t.default=c},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=a(n(7363)),i=a(n(7086)),s=n(8127);function a(e){return e&&e.__esModule?e:{default:e}}const l=e=>{let{isOpen:t,body:n,onCancel:i,actions:a}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,a.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};l.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=l;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),a={totalItems:0,totalCount:0},l=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=l;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),a);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=S(n(4754)),o=n(1624),i=n(2827),s=E(n(7363)),a=S(n(8264)),l=S(n(8238)),u=S(n(4912)),c=E(n(5910)),d=S(n(4744)),p=S(n(7086)),f=n(6648),h=E(n(9194)),m=E(n(4478)),g=E(n(1827)),y=S(n(7820)),v=S(n(1872)),b=S(n(7902));function C(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(C=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=C(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function S(e){return e&&e.__esModule?e:{default:e}}function _(){return _=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==a.default.SPACE_KEY_CODE&&e.keyCode!==a.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:a,file:l}=this.props,u=this.getFormSchemaUrl();let c=g.buttonStates.SWITCH;r&&l&&"folder"!==l.type&&(c=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:d}=n,p=o&&l&&"folder"!==l.type?()=>{a.modal.stashFormValues(d,u),a.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:c,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,_({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),a=this.props.loadingComponent,{file:c}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(l.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:c}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(a,null)))}}t.Component=w,w.propTypes={file:d.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var x=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(c,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=x},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),a=u(n(7086)),l=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const c=e=>t=>{t.preventDefault(),e&&e()},d="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:d,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:a,children:u}=e;const g=c(t),y=[d,f,h].indexOf(a)>=0,v=[p,f,m].indexOf(a)>=0,b=(0,l.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(a)>=0}),C=(0,l.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(a)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:c(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:C,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:a.default.func,onDetails:a.default.func,showButton:a.default.oneOf(Object.keys(g).map((e=>g[e]))),children:a.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=A(n(7363)),s=D(n(394)),a=n(1624),l=n(2827),u=D(n(1856)),c=D(n(1783)),d=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=A(n(3669)),g=A(n(5123)),y=A(n(2986)),v=A(n(9194)),b=D(n(4093)),C=n(7588),E=n(8088),S=D(n(9900)),_=D(n(1338)),w=n(6648),x=D(n(7086)),O=D(n(4065)),F=D(n(35));function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(I=function(e){return e?n:t})(e)}function A(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=I(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class M extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,_.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,a=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),l=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return l.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(c.default,{actions:a,items:l,total:n,key:l.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:d.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:a,limit:l,sort:u,selectedFiles:c,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:a,limit:l,sort:u,selectedFiles:c,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:a}=this.props,l={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:a,view:n,sort:t,folder:r};return i.default.createElement(e,l)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,a=this.props.LoadingComponent,l=r&&r.length>0;if(!e)return n||l?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),l&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(a,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const c=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),d={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(F.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(E.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:d,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},c,this.renderGalleryView()))),this.props.loading&&i.default.createElement(a,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=M;const R={page:1,limit:15},N={sectionConfig:S.default,loading:x.default.bool,sort:x.default.string,files:x.default.arrayOf(x.default.shape({id:x.default.number,parent:x.default.shape({id:x.default.number})})).isRequired,selectedFiles:x.default.arrayOf(x.default.number),totalCount:x.default.number,page:x.default.number,limit:x.default.number,badges:x.default.arrayOf(x.default.shape({id:x.default.number,message:x.default.node,status:x.default.string})),onOpenFile:x.default.func.isRequired,onOpenFolder:x.default.func.isRequired,onSort:x.default.func.isRequired,onSetPage:x.default.func.isRequired,maxFilesSelect:x.default.number},T=Object.assign({},R,{selectableItems:!1});t.galleryViewDefaultProps=T;const k=Object.assign({},N,{selectableItems:x.default.bool,selectableFolders:x.default.bool,onSelect:x.default.func,onCancelUpload:x.default.func,onRemoveErroredUpload:x.default.func,onEnableDropzone:x.default.func});t.galleryViewPropTypes=k,M.defaultProps=Object.assign({},R,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),M.propTypes=Object.assign({},N,{onSuccessfulUpload:x.default.func,onSuccessfulUploadQueue:x.default.func,onCreateFolder:x.default.func,onMoveFilesSuccess:x.default.func,onPublish:x.default.func,onUnpublish:x.default.func,type:x.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:x.default.oneOf(["tile","table"]),lastSelected:x.default.number,dialog:x.default.bool,fileId:x.default.number,folderId:x.default.number.isRequired,folder:x.default.shape({id:x.default.number,title:x.default.string,parentId:x.default.number,canView:x.default.bool,canEdit:x.default.bool}),files:x.default.array,errorMessage:x.default.string,graphQLErrors:x.default.arrayOf(x.default.string),actions:x.default.object,securityId:x.default.string,onViewChange:x.default.func.isRequired,createFileApiUrl:x.default.string,createFileApiMethod:x.default.string,search:x.default.object,enableDropzone:x.default.bool,concatenateSelect:x.default.bool,GalleryToolbar:x.default.elementType,sorters:x.default.arrayOf(x.default.shape({field:x.default.string.isRequired,direction:x.default.oneOf(["asc","desc"]).isRequired,label:x.default.string.isRequired})).isRequired});var j=(0,l.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,a.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:u,sorters:c,lastSelected:d}=e.assetAdmin.gallery;return!n&&c&&c[0]&&(n=`${c[0].field},${c[0].direction}`),{lastSelected:d,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:c,sort:n}}),(function(e){return{actions:{gallery:(0,l.bindActionCreators)(m,e),toasts:(0,l.bindActionCreators)(g,e),queuedFiles:(0,l.bindActionCreators)(y,e),confirmDeletion:(0,l.bindActionCreators)(v,e)}}})),b.default,(e=>(0,C.withApollo)(e)))(M);t.default=j},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7820)),i=l(n(5710)),s=l(n(7086)),a=l(n(7431));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}c.contextTypes={dragDropManager:s.default.object},c.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var d=(0,a.default)(c);t.default=d},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),a=b(n(7056)),l=b(n(1746)),u=b(n(6513)),c=v(n(3669)),d=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class C extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(a.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=C,C.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},C.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var E=(0,i.compose)(l.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:a,targetId:l}=(0,m.default)(s);if(!a)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let c=g.default.stringify(u);return c=c?`?${c}`:"",{schemaUrl:`${a}/${l}${c}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(c,e),modal:(0,i.bindActionCreators)(d,e)}}})),u.default)(C);t.default=E},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),a=h(n(8264)),l=h(n(7086)),u=n(3669),c=n(5123),d=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:l,setError:u,setBadge:c}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),c(n,`${r.length}`,"success",a.default.MOVE_SUCCESS_DURATION),l(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(d.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:l.default.number.isRequired,isOpen:l.default.bool,onClosed:l.default.func,setNotice:l.default.func,setBadge:l.default.func,setError:l.default.func,title:l.default.string,onSuccess:l.default.func,onOpenFolder:l.default.func.isRequired,selectedFiles:l.default.array.isRequired,actions:l.default.shape({files:l.default.shape({moveFiles:l.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===a.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,c.display)({text:t,type:"success",actions:n}))},setError(t){e((0,c.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),a=p(n(9777)),l=n(4288),u=n(3069),c=n(6648),d=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(a.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(a.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],a={};return s.push(`${i}--${o}`),"image"===o&&t&&(a.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:a})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=l.galleryViewDefaultProps,h.propTypes={...l.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,d.compose)((0,c.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),a=c(n(8345)),l=c(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class d extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(a.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:a,selectableFolders:l}=this.props,u=r.find((t=>t.id===e.id));let c={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;c={...c,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;c={...c,onActivate:"folder"===e.type?t:n}}if(a&&(l||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?c.onActivate:this.props.onSelect;c={...c,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return c={...c,onDropFiles:e},o.default.createElement(n,c)}return o.default.createElement(t,c)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=d,d.defaultProps=s.galleryViewDefaultProps,d.propTypes={...s.galleryViewPropTypes,File:l.default.elementType.isRequired,Folder:l.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(d);t.default=p},4495:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.imageSizePresetButtons=function(e,t){return t.map((t=>function(e,t){const{name:n,width:r,text:o}=t,i=`ssmedia${n}`;e.on("init",(()=>{e.formatter.register(i,{selector:"img",attributes:{width:r?r.toString():""}})}));const s=()=>{const t=e.selection.getNode();return t&&"IMG"===t.tagName?t:void 0},a=e=>{const t=s();e.disabled(!(!t||!r)&&t.naturalWidth{if(e.formatter.match(i))return!0;const t=s();if(!r&&t){const e=t.getAttribute("width");return!e||e.toString()===t.naturalWidth.toString()}return!1},u=t=>{const n=t.target,o=()=>{n.active(l())};if(e.on("NodeChange",(()=>{a(n),o()})),a(n),e.formatter&&(e.formatter.formatChanged(i,o),l())){e.formatter.apply(i);const t=s();t.setAttribute("width",r||t.naturalWidth)}},c=()=>{const t=s();t&&(t.removeAttribute("height"),t.removeAttribute("width"),e.formatter.apply(i),r?t.setAttribute("height",t.clientHeight):(t.setAttribute("width",t.naturalWidth),t.setAttribute("height",t.naturalHeight)))};return e.ui.registry.addButton(i,{text:o,onAction:c,onPostRender:u}),i}(e,t)))}},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:a}=e,l=null,u=null;if(n===i)return l=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:l,targetId:u};if(n===s&&o){switch(a){case"insert-media":l=t.fileInsertForm.schemaUrl;break;case"insert-link":l=t.fileEditorLinkForm.schemaUrl;break;case"select":l=t.fileSelectForm.schemaUrl;break;default:l=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:l,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` mutation ${t}($ids:[ID]!, $force:Boolean, $quiet:Boolean) { ${e}(ids: $ids, force: $force, quiet: $quiet) { ...on File { diff --git a/client/dist/js/bundle.js b/client/dist/js/bundle.js index 29c0699e4..e3431eb1a 100644 --- a/client/dist/js/bundle.js +++ b/client/dist/js/bundle.js @@ -1,4 +1,4 @@ -!function(){var e,t,n={4811:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=s(n(6648)),o=s(n(3466)),i=s(n(4026));function s(e){return e&&e.__esModule?e:{default:e}}var a=()=>{r.default.transform("move-form-disabled",(e=>{e.component("TreeDropdownField.AssetAdmin.MoveForm",i.default)})),r.default.transform("owner-unpublishing",(e=>{e.component("FormAction.AssetAdmin.EditForm.action_unpublish",o.default)}))};t.default=a},7274:function(e,t,n){"use strict";var r=c(n(4510)),o=c(n(2873)),i=c(n(6290)),s=c(n(4811)),a=c(n(4180)),l=c(n(9521)),u=c(n(6154)),d=n(4845);function c(e){return e&&e.__esModule?e:{default:e}}document.addEventListener("DOMContentLoaded",(()=>{(0,l.default)(),(0,s.default)();const e=r.default.getSection("SilverStripe\\AssetAdmin\\Controller\\AssetAdmin").reactRoutePath;o.default.add({path:"/",routes:[{path:(0,d.joinUrlPaths)(e,"show/:folderId/:viewAction/:fileId"),component:i.default},{path:(0,d.joinUrlPaths)(e,"show/:folderId/:viewAction"),component:i.default},{path:(0,d.joinUrlPaths)(e,"show/:folderId"),component:i.default},{path:e,component:i.default}]}),(0,u.default)(),(0,a.default)()}))},9521:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=f(n(6648)),o=f(n(6334)),i=f(n(614)),s=f(n(1856)),a=f(n(2896)),l=f(n(8962)),u=f(n(8278)),d=f(n(1204)),c=f(n(6505)),p=n(197);function f(e){return e&&e.__esModule?e:{default:e}}var h=()=>{r.default.component.registerMany({UploadField:o.default,UploadFieldItem:i.default,PreviewImageField:l.default,HistoryList:d.default,ProportionConstraintField:u.default,AssetDropzone:s.default,InsertMediaModal:a.default,GalleryToolbar:c.default,GalleryItemFile:p.File,GalleryItemFolder:p.Folder})};t.default=h},6154:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(6648)),o=n(2214),i=c(n(7100)),s=c(n(1280)),a=c(n(5380)),l=c(n(8115)),u=c(n(7298)),d=c(n(1421));function c(e){return e&&e.__esModule?e:{default:e}}const p=!!document.body.getAttribute("data-graphql-legacy");var f=()=>{r.default.query.registerFragment("FileInterfaceFields",o.fileInterface),r.default.query.registerFragment("FileFields",o.file),r.default.query.register("ReadFilesQuery",p?a.default:i.default),r.default.query.register("readDescendantFileCountsQuery",l.default),r.default.query.register("ReadOneFileQuery",p?u.default:s.default),r.default.query.register("readFileUsageQuery",d.default)};t.default=f},4180:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=f(n(6648)),o=n(2827),i=f(n(3627)),s=f(n(5456)),a=f(n(7437)),l=f(n(4350)),u=f(n(4694)),d=f(n(325)),c=f(n(6529)),p=f(n(7897));function f(e){return e&&e.__esModule?e:{default:e}}var h=()=>{r.default.reducer.register("assetAdmin",(0,o.combineReducers)({gallery:i.default,queuedFiles:s.default,uploadField:a.default,previewField:l.default,imageLoad:u.default,displaySearch:d.default,confirmDeletion:c.default,modal:p.default}))};t.default=h},1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=d(n(394)),i=d(n(4754)),s=d(n(247)),a=d(n(5311)),l=n(3069),u=d(n(7086));function d(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,a.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,l.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,l.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(a.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(a.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=_(n(4754)),o=E(n(7363)),i=_(n(7820)),s=_(n(8264)),a=_(n(4744)),l=_(n(4271)),u=_(n(8729)),d=_(n(7241)),c=_(n(9777)),p=_(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=E(n(3521)),y=_(n(2175)),v=_(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function _(e){return e&&e.__esModule?e:{default:e}}function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class F extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){S(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(c.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,a=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const l=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:a},c=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,c.push("gallery-item__checkbox-label--disabled"));const p={className:c.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!l&&o.default.createElement(d.default,{className:"gallery-item__badge",status:l.status,message:l.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",C({},p,{htmlFor:a}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=F,F.propTypes={sectionConfig:p.default,item:a.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},F.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(S(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(F),I="GalleryItem",A=(0,m.createSelectable)((0,l.default)(I)(O));t.File=A;const x=(0,m.createSelectable)((0,u.default)(I)(A));t.Folder=x;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7086)),i=n(2084),s=l(n(197)),a=l(n(7241));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,d({},e.props,{isDragging:!0}))),t>1?r.default.createElement(a.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}c.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(c);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,a.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),a=n(1211);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},5529:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(7086)),i=s(n(4754));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{constructor(){super(),this.handleCreateFolder=this.handleCreateFolder.bind(this)}handleCreateFolder(e){const{onCreateFolder:t}=this.props;e.preventDefault(),"function"==typeof t&&t()}render(){const{canEdit:e}=this.props;return r.default.createElement("button",{id:"add-folder-button",className:"btn btn-secondary font-icon-folder-add btn--icon-xl",type:"button",onClick:this.handleCreateFolder,disabled:!e},r.default.createElement("span",{className:"btn__text btn__title"},i.default._t("AssetAdmin.ADD_FOLDER_BUTTON")))}}l.propTypes={canEdit:o.default.bool.isRequired,onCreateFolder:o.default.func.isRequired};var u=l;t.default=u},9539:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(7086)),i=s(n(3667));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{constructor(e){super(e),this.handleBackClick=this.handleBackClick.bind(this)}handleBackClick(e){const{onOpenFolder:t,folder:n}=this.props;e.preventDefault(),"function"==typeof t&&t(n.parentId)}render(){const{folder:e,badges:t,onMoveFiles:n}=this.props,{parentId:o}=e;if(null===o)return null;const s=t.find((e=>e.id===o));return r.default.createElement("div",{className:"gallery__back-container"},r.default.createElement(i.default,{item:{id:o},onClick:this.handleBackClick,onDropFiles:n,badge:s}))}}l.propTypes={folder:o.default.shape({id:o.default.number,title:o.default.string,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}).isRequired,badges:o.default.arrayOf(o.default.shape({id:o.default.number,message:o.default.node,status:o.default.string})).isRequired,onOpenFolder:o.default.func.isRequired,onMoveFiles:o.default.func.isRequired};var u=l;t.default=u},9617:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(4754)),i=s(n(7086));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{render(){const{canEdit:e}=this.props;return r.default.createElement("button",{id:"upload-button",className:"btn btn-secondary font-icon-upload btn--icon-xl",type:"button",disabled:!e},r.default.createElement("span",{className:"btn__text btn__title"},o.default._t("AssetAdmin.DROPZONE_UPLOAD")))}}l.defaultProps={canEdit:i.default.func.isRequired};var u=l;t.default=u},6505:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=u(n(9539)),a=u(n(9617)),l=u(n(5529));function u(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.handleSelectSort=this.handleSelectSort.bind(this),this.handleViewChange=this.handleViewChange.bind(this)}handleSelectSort(e){this.props.onSort(e.currentTarget.value)}handleViewChange(e){const t=e.currentTarget.value;this.props.onViewChange(t)}renderSort(){return"tile"!==this.props.view?null:r.default.createElement("div",{className:"gallery__sort fieldholder-small"},r.default.createElement("select",{className:"dropdown no-change-track no-chzn",tabIndex:"0",style:{width:"160px"},defaultValue:this.props.sort},this.props.sorters.map((e=>{const t=e.label.replace(/^\w|[\s\-]+\w/g,(e=>e.toUpperCase()));return r.default.createElement("option",{key:`${e.field}-${e.direction}`,onClick:this.handleSelectSort,"data-field":e.field,"data-direction":e.direction,value:`${e.field},${e.direction}`},t)}))))}renderViewChangeButtons(){return["tile","table"].map((e=>{const t="table"===e?"list":"thumbnails",n=["gallery__view-change-button","btn btn-secondary","btn--icon-sm","btn--no-text"];return e===this.props.view?null:(n.push(`font-icon-${t}`),r.default.createElement("button",{id:`button-view-${e}`,key:e,className:n.join(" "),type:"button",title:"Change view gallery/list",onClick:this.handleViewChange,value:e}))}))}render(){const{badges:e,children:t,folder:n,onMoveFiles:o,onOpenFolder:i,onCreateFolder:s,BackButton:a,UploadButton:l,AddFolderButton:u}=this.props,{canEdit:d}=n;return r.default.createElement("div",{className:"toolbar--content toolbar--space-save"},r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"gallery__btn-toolbar flexbox-area-grow"},r.default.createElement("div",{className:"btn-toolbar"},r.default.createElement(a,{folder:n,badges:e,onOpenFolder:i,onMoveFiles:o}),r.default.createElement(l,{canEdit:d}),r.default.createElement(u,{canEdit:d,onCreateFolder:s}),t)),r.default.createElement("div",{className:"gallery__state-buttons"},this.renderSort(),r.default.createElement("div",{className:"btn-group",role:"group","aria-label":"View mode"},this.renderViewChangeButtons()))))}}t.Component=c,c.propTypes={onMoveFiles:o.default.func.isRequired,onCreateFolder:o.default.func.isRequired,onViewChange:o.default.func.isRequired,onOpenFolder:o.default.func.isRequired,onSort:o.default.func.isRequired,folder:o.default.shape({id:o.default.number,title:o.default.string,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}).isRequired,view:o.default.oneOf(["tile","table"]),sort:o.default.string,badges:o.default.arrayOf(o.default.shape({id:o.default.number,message:o.default.node,status:o.default.string})),BackButton:o.default.elementType,UploadButton:o.default.elementType,AddFolderButton:o.default.elementType},c.defaultProps={view:"tile",BackButton:s.default,UploadButton:a.default,AddFolderButton:l.default};var p=(0,i.connect)((function(e,t){let{sort:n}=t;const{badges:r,sorters:o}=e.assetAdmin.gallery;return""===n&&(n=`${o[0].field},${o[0].direction}`),{badges:r,sorters:o,sort:n}}))(c);t.default=p},961:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=f(n(4754)),o=p(n(7363)),i=n(2827),s=n(1624),a=f(n(4912)),l=p(n(3573)),u=f(n(7086)),d=n(4845);function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function p(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentWillMount(){this.setOverrides(this.props)}componentWillReceiveProps(e){e.isOpen&&!this.props.isOpen&&this.setOverrides(e)}componentWillUnmount(){this.clearOverrides()}setOverrides(e){if(this.props.schemaUrl!==e.schemaUrl&&this.clearOverrides(),e.schemaUrl){const t=Object.assign({},e.fileAttributes);delete t.ID;const n={fields:Object.entries(t).map((e=>{const[t,n]=e;return{name:t,value:n}}))};this.props.actions.schema.setSchemaStateOverrides(e.schemaUrl,n)}}getModalProps(){const e=Object.assign({onSubmit:this.handleSubmit,onLoadingError:this.handleLoadingError,showErrorMessage:!0,responseClassBad:"alert alert-danger",identifier:"AssetAdmin.InsertEmbedModal"},this.props,{className:`insert-embed-modal ${this.props.className}`,size:"lg",onClosed:this.props.onClosed,title:this.props.targetUrl?r.default._t("AssetAdmin.EditTitle","Media from the web"):r.default._t("AssetAdmin.CreateTitle","Insert new media from the web")});return delete e.sectionConfig,delete e.onInsert,delete e.fileAttributes,e}clearOverrides(){this.props.actions.schema.setSchemaStateOverrides(this.props.schemaUrl,null)}handleLoadingError(e){"function"==typeof this.props.onLoadingError&&this.props.onLoadingError(e)}handleSubmit(e,t){switch(t){case"action_addmedia":this.props.onCreate(e);break;case"action_insertmedia":this.props.onInsert(e);break;case"action_cancel":this.props.onClosed()}return Promise.resolve()}render(){return o.default.createElement(a.default,this.getModalProps())}}t.Component=h,h.propTypes={sectionConfig:u.default.shape({url:u.default.string,form:u.default.object}),isOpen:u.default.bool,onInsert:u.default.func.isRequired,onCreate:u.default.func.isRequired,fileAttributes:u.default.shape({Url:u.default.string,CaptionText:u.default.string,PreviewUrl:u.default.string,Placement:u.default.string,Width:u.default.number,Height:u.default.number}),onClosed:u.default.func.isRequired,className:u.default.string,actions:u.default.object,schemaUrl:u.default.string.isRequired,targetUrl:u.default.string,onLoadingError:u.default.func},h.defaultProps={className:"",fileAttributes:{}};var m=(0,s.connect)((function(e,t){const n=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name)),r=t.fileAttributes?t.fileAttributes.Url:"",o=n.form.remoteEditForm.schemaUrl,i=r&&(0,d.joinUrlPaths)(o,`/?embedurl=${encodeURIComponent(r)}`),s=n.form.remoteCreateForm.schemaUrl;return{sectionConfig:n,schemaUrl:i||s,targetUrl:r}}),(function(e){return{actions:{schema:(0,i.bindActionCreators)(l,e)}}}))(h);t.default=m},8962:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=b(n(1856)),s=b(n(8264)),a=n(1624),l=n(2827),u=n(5762),d=v(n(7513)),c=n(3069),p=b(n(720)),f=b(n(7820)),h=b(n(7086)),m=b(n(1872)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class E extends o.Component{constructor(e){super(e),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleSending=this.handleSending.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.canFileUpload=this.canFileUpload.bind(this),this.updateFormData=this.updateFormData.bind(this),this.cacheBustUrl=this.cacheBustUrl.bind(this)}componentDidUpdate(e){(e.data.url&&this.props.data.url!==e.data.url||e.data.version&&this.props.data.version!==e.data.version)&&this.props.actions.previewField.removeFile(e.id)}componentWillUnmount(){this.props.actions.previewField.removeFile(this.props.id)}getDropzoneProps(){const e=this.props.data.uploadFileEndpoint,t=this.props.name,n={url:e&&e.url,method:e&&e.method,paramName:"Upload",clickable:!0,maxFiles:1},r={height:s.default.THUMBNAIL_HEIGHT,width:s.default.THUMBNAIL_WIDTH},o=this.props.securityID;return{name:t,className:["asset-dropzone--button","preview-image-field__container",this.props.className,this.props.extraClass].join(" "),canUpload:e&&this.canEdit(),preview:r,folderId:this.props.data.parentid,options:n,securityID:o,uploadButton:!1,onAddedFile:this.handleAddedFile,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,onUploadComplete:this.handleUploadComplete,canFileUpload:this.canFileUpload,updateFormData:this.updateFormData}}getButtonClasses(e){return(0,f.default)([`preview-image-field__toolbar-button--${e}`,"preview-image-field__toolbar-button"])}updateFormData(e){e.append("ID",this.props.data.id),e.append("Name",this.props.nameValue)}handleSending(e,t){this.props.actions.previewField.updateFile(this.props.id,{xhr:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);"function"==typeof this.props.onAutofill&&(this.props.onAutofill("FileFilename",t.Filename),this.props.onAutofill("FileHash",t.Hash),this.props.onAutofill("FileVariant",t.Variant),t.Name&&this.props.onAutofill(this.props.data.nameField,t.Name))}handleFailedUpload(e,t){this.props.actions.previewField.failUpload(this.props.id,t)}handleAddedFile(e){this.props.actions.previewField.addFile(this.props.id,e)}handleRemoveErroredUpload(){if("function"==typeof this.props.onAutofill){const e=this.props.data.initialValues;this.props.onAutofill("FileFilename",e.FileFilename),this.props.onAutofill("FileHash",e.FileHash),this.props.onAutofill("FileVariant",e.FileVariant)}this.props.actions.previewField.removeFile(this.props.id)}handleCancelUpload(){this.props.upload.xhr&&this.props.upload.xhr.abort(),this.handleRemoveErroredUpload()}canFileUpload(e){const t=this.props.data.initialValues.FileFilename,n=(0,c.getFileExtension)(t),o=(0,c.getFileExtension)(e.name);if(!n||n===o)return!0;const i=r.default._t("AssetAdmin.CONFIRM_CHANGE_EXTENSION","Are you sure you want upload a file with a different extension?");return this.props.confirm(i)}preventDefault(e){e.preventDefault()}canEdit(){return!this.props.readOnly&&!this.props.disabled&&"folder"!==this.props.data.category}handleUploadProgress(e,t){this.props.actions.previewField.updateFile(this.props.id,{progress:t})}handleUploadComplete(e){this.props.actions.previewField.updateStatus(this.props.id,{status:e})}preview(e,t,n){if(e&&"image"!==e)return s.default.DEFAULT_PREVIEW;const r=t.url||n.preview||n.url;if(r){return r.startsWith("data:image/")?r:this.cacheBustUrl(r,n.version)}return null}cacheBustUrl(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||this.props.data.version;if(!1===this.props.bustCache||!t)return e;const n=m.default.parse(e),r={...g.default.parse(n.query),vid:t};return m.default.format({...n,search:g.default.stringify(r)})}renderImage(){const{data:e,upload:t}=this.props;if(!e.mock&&!e.exists&&!t.url)return o.default.createElement("div",{className:"editor__file-preview-message--file-missing"},r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"));const{category:n,progress:i,message:s}=t,a=t.errors?t.errors[0]:null,l=t.status?t.status:null,u=this.preview(n,t,e),d=o.default.createElement("img",{alt:"preview",src:u,className:"editor__thumbnail"}),c=e.url&&!i?o.default.createElement("a",{className:"editor__file-preview-link",href:this.cacheBustUrl(e.url),target:"_blank",rel:"noopener noreferrer"},d):null,p=i>0&&i<100?o.default.createElement("div",{className:"preview-image-field__progress"},o.default.createElement("div",{className:"preview-image-field__progress-bar",style:{width:`${i}%`}})):null;let f=null;if(a||"error"===l){const e=a&&a.value?a.value:r.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),t=a&&a.type?a.type:"error";f=o.default.createElement("div",{className:`preview-image-field__message preview-image-field__message--${t}`},e)}else s?f=o.default.createElement("div",{className:`preview-image-field__message preview-image-field__message--${s.type}`},s.value):100===i&&"success"===l&&(f=o.default.createElement("div",{className:"preview-image-field__message preview-image-field__message--success"},r.default._t("AssetAdmin.REPlACE_FILE_SUCCESS","Upload successful, the file will be replaced when you Save."),(i||s)&&o.default.createElement("button",{onClick:this.handleCancelUpload,className:"preview-image-field__message-button btn btn-outline-light",type:"button"},r.default._t("AssetAdmin.REPLACE_FILE_UNDO","Undo"))));return o.default.createElement("div",{className:"editor__thumbnail-container"},c||d,p,f)}render(){const e=this.getDropzoneProps();if(this.canEdit())return o.default.createElement(i.default,e,this.renderImage());const t=["preview-image-field__container",this.props.className,this.props.extraClass];return o.default.createElement("div",{className:t.join(" ")},this.renderImage())}}t.Component=E,E.propTypes={id:h.default.string.isRequired,name:h.default.string,className:h.default.string,extraClass:h.default.string,readOnly:h.default.bool,disabled:h.default.bool,bustCache:h.default.bool,onAutofill:h.default.func,formid:h.default.string,nameValue:h.default.string,data:h.default.shape({id:h.default.number,parentid:h.default.number,version:h.default.number,url:h.default.string,mock:h.default.bool,exists:h.default.bool,preview:h.default.string,category:h.default.string,nameField:h.default.string,uploadFileEndpoint:h.default.shape({url:h.default.string.isRequired,method:h.default.string.isRequired,payloadFormat:h.default.string}),initialValues:h.default.object}).isRequired,upload:h.default.shape({url:h.default.string,progress:h.default.number,xhr:h.default.object,category:h.default.string,message:h.default.shape({type:h.default.string.isRequired,value:h.default.string.isRequired}),status:h.default.string}),actions:h.default.object,securityID:h.default.string,confirm:h.default.func},E.defaultProps={extraClass:"",className:"",data:{},upload:{},confirm:e=>window.confirm(e),bustCache:!0};var _=(0,a.connect)((function(e,t){const n=e.config.SecurityID,r=t.id,o=e.assetAdmin.previewField[r]||{},i=(0,u.formValueSelector)(t.formid,p.default),{bustCache:s}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{securityID:n,upload:o,nameValue:i(e,"Name"),bustCache:s}}),(function(e){return{actions:{previewField:(0,l.bindActionCreators)(d,e)}}}))(E);t.default=_},4678:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7363)),o=a(n(7086)),i=n(8127),s=a(n(4754));function a(e){return e&&e.__esModule?e:{default:e}}function l(){return l=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{onSelect:t,currentWidth:n,originalWidth:o,width:a,text:l}=e;return r.default.createElement(i.Button,{color:"link",size:"sm",onClick:()=>t(a||o),disabled:os.default.inject(s.default._t("AssetAdmin.SET_IMAGE_SIZE_TO",'Set image size to "{preset}"'),{preset:e}))(l)),r.default.createElement("span",{"aria-hidden":"true"},l))},d=e=>{let{imageSizePresets:t,...n}=e;return t?r.default.createElement("ul",{className:"image-size-preset-list"},t.map((e=>r.default.createElement("li",{key:e.text,className:"image-size-preset-list__list-item"},r.default.createElement(u,l({},e,n)))))):null};d.propTypes={onSelect:o.default.func,imageSizePresets:o.default.arrayOf(o.default.shape({text:o.default.string,width:o.default.number})),currentWidth:o.default.number,originalWidth:o.default.number.isRequired};var c=d;t.default=c},8278:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(7086)),i=n(6648),s=c(n(4678)),a=n(5762),l=c(n(720)),u=n(1624),d=n(2827);function c(e){return e&&e.__esModule?e:{default:e}}function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&this.syncFields(e,r)}syncFields(e,t){const{children:n,active:r,onAutofill:o,data:{ratio:i}}=this.props,s=0===e?1:0,a=n[e].props.name,l=n[s].props.name,u=0===e?1/i:i;o(a,t),r&&o(l,Math.round(t*u))}handlePresetSelect(e){this.syncFields(0,e);const{key:t}=this.props.children[0],n=document.getElementById(t);n&&n.focus()}handleBlur(e,t){this.setState({hasFocus:!1});const n=parseInt(t&&t.target&&t.target.value,10);(!n||n<=0)&&(t.preventDefault(),this.resetDimensions())}handleFocus(){this.setState({hasFocus:!0})}defaultWidth(){const{imageSizePresets:e,data:{originalWidth:t}}=this.props,n=e&&e.find((e=>e.default)),r=n&&n.width||t||600;return t&&t(0,r.cloneElement)(e,{onChange:(e,n)=>this.handleChange(t,e,n),onBlur:e=>this.handleBlur(t,e),onFocus:()=>this.handleFocus(),key:t},e.props.children))),!n&&r.default.createElement(s.default,{originalWidth:parseInt(t,10),currentWidth:o,imageSizePresets:i,onSelect:this.handlePresetSelect})))}}t.Component=h,h.propTypes={children:o.default.array,onAutofill:o.default.func,active:o.default.bool,data:o.default.shape({ratio:o.default.number.isRequired,isRemoteFile:o.default.bool,originalWidth:o.default.number,originalHeight:o.default.number}),current:o.default.shape({width:o.default.oneOfType([o.default.number,o.default.string]),height:o.default.oneOfType([o.default.number,o.default.string])}).isRequired,FieldGroup:o.default.elementType.isRequired,imageSizePresets:o.default.arrayOf(o.default.shape({width:o.default.number,text:o.default.string,default:o.default.bool}))},h.defaultProps={active:!0};var m=(0,d.compose)((0,u.connect)((function(e,t){let{formid:n}=t;const r=(0,a.formValueSelector)(n,l.default),o=r(e,"Width"),i=r(e,"Height");return{current:{width:o?parseInt(o,10):void 0,heigth:i?parseInt(i,10):void 0},imageSizePresets:e.assetAdmin.modal.imageSizePresets}})),(0,i.inject)(["FieldGroup"]))(h);t.default=m},6334:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ConnectedUploadField=t.Component=void 0;var r=v(n(4754)),o=y(n(7363)),i=n(1624),s=n(2827),a=n(6648),l=v(n(8264)),u=v(n(1042)),d=v(n(4744)),c=v(n(1338)),p=y(n(4504)),f=y(n(4478)),h=v(n(7086)),m=v(n(8214));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}class b extends o.Component{constructor(e){super(e),this.getMaxFiles=this.getMaxFiles.bind(this),this.getFolderId=this.getFolderId.bind(this),this.renderChild=this.renderChild.bind(this),this.handleAddShow=this.handleAddShow.bind(this),this.handleHide=this.handleHide.bind(this),this.handleAddInsert=this.handleAddInsert.bind(this),this.handleInsertMany=this.handleInsertMany.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleSending=this.handleSending.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleItemRemove=this.handleItemRemove.bind(this),this.handleReplaceShow=this.handleReplaceShow.bind(this),this.handleChange=this.handleChange.bind(this),this.handleReplace=this.handleReplace.bind(this),this.canEdit=this.canEdit.bind(this),this.canAttach=this.canAttach.bind(this),this.canUpload=this.canUpload.bind(this),this.state={selecting:!1,selectingItem:null}}componentDidMount(){const{id:e,formSchemaFilesHash:t,data:n,value:r,actions:o,files:i}=this.props,s=(0,m.default)(JSON.stringify(r.Files)).toString();if(t!==s)return o.uploadField.setFormSchemaFilesHash(e,s),void o.uploadField.setFiles(e,n.files);o.uploadField.setFiles(e,i)}componentWillReceiveProps(e){(function(e,t){if(e.length!==t.length)return!0;for(let n=0;n!u.includes(e))).length)return;const d=o.map((e=>e.id));d.length===i.length&&0===d.filter((e=>!i.includes(e))).length||a(t,r.files)}getMaxFiles(){const e=this.props.data.multi?this.props.data.maxFiles:1;if(null==e)return null;const t=this.props.files.filter((e=>e.id>0&&(!e.message||"error"!==e.message.type))).length;return Math.max(e-t,0)}getMaxFilesize(){return this.props.data.maxFilesize||null}getFolderId(){const{selectingItem:e}=this.state;return e&&"object"==typeof e?e.parent.id:this.props.data.parentid||0}handleAddedFile(e){const t={...e,uploaded:!0};this.props.actions.uploadField.addFile(this.props.id,t)}handleSending(e,t){this.props.actions.uploadField.updateQueuedFile(this.props.id,e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.uploadField.updateQueuedFile(this.props.id,e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);void 0===t[0].error?this.props.actions.uploadField.succeedUpload(this.props.id,e._queuedId,t[0]):this.handleFailedUpload(e)}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,c.default)(e.xhr.status):"";this.props.actions.uploadField.failUpload(this.props.id,e._queuedId,t,n)}handleItemRemove(e,t){this.props.actions.uploadField.removeFile(this.props.id,t)}handleReplaceShow(e,t){this.props.actions.modal.initFormStack("select","admin"),this.setState({selecting:!0,selectingItem:t})}handleChange(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.props;if("function"==typeof t.onChange){const n={Files:t.files.filter((e=>e.id)).map((e=>e.id))};t.onChange(e,{id:t.id,value:n})}}handleUploadButton(e){e.preventDefault()}handleAddShow(e){e.preventDefault(),this.props.actions.modal.initFormStack("select","admin"),this.setState({selecting:!0,selectingItem:null})}handleHide(){this.props.actions.modal.reset(),this.setState({selecting:!1,selectingItem:null})}handleAddInsert(e,t,n){return this.props.actions.uploadField.addFile(this.props.id,n),this.handleHide(),Promise.resolve({})}handleInsertMany(e,t){const{selectingItem:n}=this.state;n?this.handleReplace(e,null,t[0]):t.forEach((t=>{this.handleAddInsert(e,null,t)}))}handleReplace(e,t,n){const{selectingItem:r}=this.state,{id:o,actions:{uploadField:{addFile:i,removeFile:s}}}=this.props;if(!r)throw new Error("Tried to replace a file when none was selected.");return s(o,r),i(o,n),this.handleHide(),Promise.resolve({})}canEdit(){return!this.props.disabled&&!this.props.readOnly&&(this.props.data.canUpload||this.props.data.canAttach)}canUpload(){return this.canEdit()&&this.props.data.canUpload}canAttach(){return this.canEdit()&&this.props.data.canAttach}renderDropzone(){const{AssetDropzone:e}=this.props;if(!this.props.data.createFileEndpoint)return null;const t={height:l.default.SMALL_THUMBNAIL_HEIGHT,width:l.default.SMALL_THUMBNAIL_WIDTH},n=this.getMaxFiles(),i=this.getMaxFilesize(),s={url:this.props.data.createFileEndpoint.url,method:this.props.data.createFileEndpoint.method,paramName:"Upload",maxFiles:n,maxFilesize:i,thumbnailWidth:l.default.SMALL_THUMBNAIL_WIDTH,thumbnailHeight:l.default.SMALL_THUMBNAIL_HEIGHT},a=["uploadfield__dropzone"];if(0===n&&a.push("uploadfield__dropzone--hidden"),!this.canEdit())return this.props.files.length?null:o.default.createElement("p",null,r.default._t("AssetAdmin.EMPTY","No files"));const u=this.props.securityId,d=[];return this.canUpload()&&d.push(o.default.createElement("button",{key:"uploadbutton",type:"button",onClick:this.handleUploadButton,className:"uploadfield__upload-button"},r.default._t("AssetAdmin.UPLOADFIELD_UPLOAD_NEW","Upload new"))),this.canAttach()&&(d.length&&d.push(o.default.createElement("span",{key:"uploadjoin",className:"uploadfield__join"},r.default._t("AssetAdmin.OR","or"))),d.push(o.default.createElement("button",{key:"attachbutton",type:"button",onClick:this.handleAddShow,className:"uploadfield__add-button"},r.default._t("AssetAdmin.UPLOADFIELD_CHOOSE_EXISTING","Choose existing")))),o.default.createElement(e,{name:this.props.name,canUpload:this.canUpload(),uploadButton:!1,uploadSelector:".uploadfield__upload-button, .uploadfield__backdrop",folderId:this.props.data.parentid,onAddedFile:this.handleAddedFile,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:t,options:s,securityID:u,className:a.join(" ")},o.default.createElement("div",{className:"uploadfield__backdrop"}),o.default.createElement("span",{className:"uploadfield__droptext"},d))}renderModal(){const{InsertMediaModal:e}=this.props,{selecting:t,selectingItem:n}=this.state,r=this.getMaxFiles(),i=this.getFolderId();return o.default.createElement(e,{title:!1,isOpen:t,onInsert:n?this.handleReplace:this.handleAddInsert,onClosed:this.handleHide,onInsertMany:this.handleInsertMany,maxFiles:n?1:r,type:"select",bodyClassName:"modal__dialog",className:"insert-media-react__dialog-wrapper",fileAttributes:n?{ID:n.id}:null,folderId:i})}renderChild(e,t){const{UploadFieldItem:n}=this.props,r={key:e.id?`file-${e.id}`:`queued-${e.queuedId}`,item:e,name:this.props.name,onRemove:this.handleItemRemove,canEdit:this.canEdit(),onView:this.handleReplaceShow},i=this.props.getItemProps(r,t,this.props);return o.default.createElement(n,i)}render(){return o.default.createElement("div",{className:"uploadfield"},this.renderDropzone(),this.props.files.map(this.renderChild),this.renderModal())}}t.Component=b,b.propTypes={id:h.default.string.isRequired,name:h.default.string.isRequired,onChange:h.default.func,value:h.default.shape({Files:h.default.arrayOf(h.default.number)}),files:h.default.arrayOf(d.default),formSchemaFilesHash:h.default.string,readOnly:h.default.bool,disabled:h.default.bool,data:h.default.shape({files:h.default.arrayOf(d.default),createFileEndpoint:h.default.shape({url:h.default.string.isRequired,method:h.default.string.isRequired,payloadFormat:h.default.string.isRequired}),multi:h.default.bool,parentid:h.default.number,canUpload:h.default.bool,canAttach:h.default.bool,maxFiles:h.default.number}),UploadFieldItem:h.default.elementType,AssetDropzone:h.default.elementType,InsertMediaModal:h.default.elementType,getItemProps:h.default.func},b.defaultProps={value:{Files:[]},className:"",getItemProps:e=>e};const E=(0,i.connect)((function(e,t){const n=t.id;let r=[],o=null;return e.assetAdmin&&e.assetAdmin.uploadField&&e.assetAdmin.uploadField.fields&&e.assetAdmin.uploadField.fields[n]&&(r=e.assetAdmin.uploadField.fields[n].files||[],o=e.assetAdmin.uploadField.fields[n].formSchemaFilesHash||null),{files:r,securityId:e.config.SecurityID,formSchemaFilesHash:o}}),(function(e){return{actions:{uploadField:(0,s.bindActionCreators)(p,e),modal:(0,s.bindActionCreators)(f,e)}}}))(b);t.ConnectedUploadField=E;var _=(0,s.compose)((0,a.inject)(["UploadFieldItem","AssetDropzone","InsertMediaModal"]),u.default)(E);t.default=_},614:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=c(n(8264)),s=c(n(4744)),a=n(3069),l=c(n(7086)),u=c(n(9777));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class p extends o.Component{constructor(e){super(e),this.handleRemove=this.handleRemove.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleView=this.handleView.bind(this)}getThumbnailStyles(){if(this.isImage()&&(this.exists()||this.uploading())){return{backgroundImage:`url(${this.props.item.smallThumbnail||this.props.item.url||""})`}}return{}}getThumbnailClassNames(){const e=["uploadfield-item__thumbnail"];return this.isImageSmallerThanThumbnail()&&e.push("uploadfield-item__thumbnail--small"),e.join(" ")}getItemClassNames(){const e=["fill-width","uploadfield-item",`uploadfield-item--${this.props.item.category||"none"}`];return this.missing()&&e.push("uploadfield-item--missing"),this.hasError()&&e.push("uploadfield-item--error"),e.join(" ")}hasError(){return!!this.props.item.message&&"error"===this.props.item.message.type}isImage(){return"image"===this.props.item.category}exists(){return this.props.item.exists}uploading(){return this.props.item.queuedId&&!this.saved()}complete(){return this.props.item.queuedId&&this.saved()}saved(){return this.props.item.id>0}missing(){return!this.exists()&&this.saved()}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&te.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=M(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),a=D(n(5159)),l=D(n(4754)),u=D(n(7820)),d=M(n(3669)),c=M(n(5123)),p=M(n(2986)),f=M(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=M(n(1075)),b=D(n(6635)),E=D(n(8493)),_=D(n(168)),C=D(n(6307)),S=D(n(8264)),w=D(n(9900)),F=n(6648),O=M(n(9194)),I=D(n(6019)),A=D(n(7882)),x=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function M(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class R extends r.Component{constructor(e){super(e),this.state||(this.state={}),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}static getDerivedStateFromProps(e){return!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction),null}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return a.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),a=i.map((e=>e.message));if(s.length&&a.push(l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),a.join("\n"),l.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,S.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,a=this.props.query&&this.props.query.view,l=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:a,filters:l,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:a}=this.props,{schemaUrl:l,targetId:u}=(0,I.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!l)return null;const d=[];s&&d.push({name:"requireLinkText",value:!0}),a&&d.push({name:"fileSelected",value:!0});const c={dialog:i,fileId:u,schemaUrl:l,schemaUrlQueries:d,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,c)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:a}=this.props,l=Boolean(t||(0,v.hasFilters)(n.filter)),d=this.props.sectionConfig.form.fileSearchForm.schemaUrl,c=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:l,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(x.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),a)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:d,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:c,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(A.default,{onConfirm:this.handleDelete}))}}t.Component=R,R.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},R.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var T=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(d,e),toasts:(0,s.bindActionCreators)(c,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,F.injectGraphql)("ReadFilesQuery"),E.default,_.default,C.default,y.withApollo)(R);t.default=T},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(7363)),o=l(n(7086)),i=l(n(4754)),s=n(7803),a=n(1075);function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:l,onFolderIcon:u}=e;const d=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),l(...t)}},c=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:c(0,null,n),onClick:d(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:c(e.id,null,n),onClick:d(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:c(t.id,null,n),onClick:d(t.id,null,n),icons:e})}return(0,a.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var d=u;t.default=d},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),a=f(n(7056)),l=n(3069),u=f(n(7902)),d=f(n(8264)),c=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(d.default.ACTIONS).map((e=>d.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${d.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===d.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:d.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),a=Object.assign({},n);return(s||a.page<=1)&&delete a.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:a,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:d.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,l.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(a.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:c.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),a=u(n(8264)),l=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}const c={folderId:null,fileId:null,query:{},action:a.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},c,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),l=this.getFolderId(),u=o!==l&&null!==l,d=Object.assign({},n);return(u||d.page<=1)&&delete d.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:d,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||a.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(a.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,l.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),a=n(7588),l=n(6648),u=y(n(9194)),d=y(n(602)),c=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:a,onCancel:l,onConfirm:u}=e,p=null,g=[{label:c.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:c.default._t("AssetAdmin.CANCEL","Cancel"),handler:l}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:c.default._t("AssetAdmin.CANCEL","Cancel"),handler:l,color:"primary"},{label:c.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![d.CANCELING,d.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:l,onClosed:a})};t.Component=E,E.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const _=(0,o.compose)((0,l.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,l.injectGraphql)("readDescendantFileCountsQuery"),a.withApollo)(E),C={onCancel:u.cancel,onModalClose:u.modalClose};var S=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),C))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(_,b({},o,{files:n})):null}));t.default=S},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=l(n(7086)),s=n(4267);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var d=u;t.default=d},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=a(n(7363)),i=a(n(7086)),s=n(8127);function a(e){return e&&e.__esModule?e:{default:e}}const l=e=>{let{isOpen:t,body:n,onCancel:i,actions:a}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,a.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};l.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=l;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),a={totalItems:0,totalCount:0},l=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=l;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),a);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=C(n(4754)),o=n(1624),i=n(2827),s=_(n(7363)),a=C(n(8264)),l=C(n(8238)),u=C(n(4912)),d=_(n(5910)),c=C(n(4744)),p=C(n(7086)),f=n(6648),h=_(n(9194)),m=_(n(4478)),g=_(n(1827)),y=C(n(7820)),v=C(n(1872)),b=C(n(7902));function E(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(E=function(e){return e?n:t})(e)}function _(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=E(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function C(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==a.default.SPACE_KEY_CODE&&e.keyCode!==a.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:a,file:l}=this.props,u=this.getFormSchemaUrl();let d=g.buttonStates.SWITCH;r&&l&&"folder"!==l.type&&(d=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:c}=n,p=o&&l&&"folder"!==l.type?()=>{a.modal.stashFormValues(c,u),a.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:d,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,S({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),a=this.props.loadingComponent,{file:d}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(l.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:d}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(a,null)))}}t.Component=w,w.propTypes={file:c.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var F=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(d,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=F},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),a=u(n(7086)),l=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const d=e=>t=>{t.preventDefault(),e&&e()},c="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:c,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:a,children:u}=e;const g=d(t),y=[c,f,h].indexOf(a)>=0,v=[p,f,m].indexOf(a)>=0,b=(0,l.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(a)>=0}),E=(0,l.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(a)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:d(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:E,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:a.default.func,onDetails:a.default.func,showButton:a.default.oneOf(Object.keys(g).map((e=>g[e]))),children:a.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=x(n(7363)),s=D(n(394)),a=n(1624),l=n(2827),u=D(n(1856)),d=D(n(1783)),c=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=x(n(3669)),g=x(n(5123)),y=x(n(2986)),v=x(n(9194)),b=D(n(4093)),E=n(7588),_=n(8088),C=D(n(9900)),S=D(n(1338)),w=n(6648),F=D(n(7086)),O=D(n(4065)),I=D(n(35));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function x(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class M extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,S.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,a=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),l=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return l.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(d.default,{actions:a,items:l,total:n,key:l.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:c.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:a,limit:l,sort:u,selectedFiles:d,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:a,limit:l,sort:u,selectedFiles:d,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:a}=this.props,l={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:a,view:n,sort:t,folder:r};return i.default.createElement(e,l)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,a=this.props.LoadingComponent,l=r&&r.length>0;if(!e)return n||l?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),l&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(a,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const d=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),c={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(I.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(_.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:c,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},d,this.renderGalleryView()))),this.props.loading&&i.default.createElement(a,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=M;const R={page:1,limit:15},T={sectionConfig:C.default,loading:F.default.bool,sort:F.default.string,files:F.default.arrayOf(F.default.shape({id:F.default.number,parent:F.default.shape({id:F.default.number})})).isRequired,selectedFiles:F.default.arrayOf(F.default.number),totalCount:F.default.number,page:F.default.number,limit:F.default.number,badges:F.default.arrayOf(F.default.shape({id:F.default.number,message:F.default.node,status:F.default.string})),onOpenFile:F.default.func.isRequired,onOpenFolder:F.default.func.isRequired,onSort:F.default.func.isRequired,onSetPage:F.default.func.isRequired,maxFilesSelect:F.default.number},N=Object.assign({},R,{selectableItems:!1});t.galleryViewDefaultProps=N;const j=Object.assign({},T,{selectableItems:F.default.bool,selectableFolders:F.default.bool,onSelect:F.default.func,onCancelUpload:F.default.func,onRemoveErroredUpload:F.default.func,onEnableDropzone:F.default.func});t.galleryViewPropTypes=j,M.defaultProps=Object.assign({},R,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),M.propTypes=Object.assign({},T,{onSuccessfulUpload:F.default.func,onSuccessfulUploadQueue:F.default.func,onCreateFolder:F.default.func,onMoveFilesSuccess:F.default.func,onPublish:F.default.func,onUnpublish:F.default.func,type:F.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:F.default.oneOf(["tile","table"]),lastSelected:F.default.number,dialog:F.default.bool,fileId:F.default.number,folderId:F.default.number.isRequired,folder:F.default.shape({id:F.default.number,title:F.default.string,parentId:F.default.number,canView:F.default.bool,canEdit:F.default.bool}),files:F.default.array,errorMessage:F.default.string,graphQLErrors:F.default.arrayOf(F.default.string),actions:F.default.object,securityId:F.default.string,onViewChange:F.default.func.isRequired,createFileApiUrl:F.default.string,createFileApiMethod:F.default.string,search:F.default.object,enableDropzone:F.default.bool,concatenateSelect:F.default.bool,GalleryToolbar:F.default.elementType,sorters:F.default.arrayOf(F.default.shape({field:F.default.string.isRequired,direction:F.default.oneOf(["asc","desc"]).isRequired,label:F.default.string.isRequired})).isRequired});var k=(0,l.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,a.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:u,sorters:d,lastSelected:c}=e.assetAdmin.gallery;return!n&&d&&d[0]&&(n=`${d[0].field},${d[0].direction}`),{lastSelected:c,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:d,sort:n}}),(function(e){return{actions:{gallery:(0,l.bindActionCreators)(m,e),toasts:(0,l.bindActionCreators)(g,e),queuedFiles:(0,l.bindActionCreators)(y,e),confirmDeletion:(0,l.bindActionCreators)(v,e)}}})),b.default,(e=>(0,E.withApollo)(e)))(M);t.default=k},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7820)),i=l(n(5710)),s=l(n(7086)),a=l(n(7431));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class d extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}d.contextTypes={dragDropManager:s.default.object},d.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var c=(0,a.default)(d);t.default=c},7390:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=o?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r};function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}class a extends o.Component{constructor(e){super(e),this.handleClick=this.handleClick.bind(this)}handleClick(e){e.preventDefault(),"function"==typeof this.props.onClick&&this.props.onClick(this.props.versionid)}render(){let e=null;return"Published"===this.props.status&&(e=o.default.createElement("p",null,o.default.createElement("span",{className:"history-item__status-flag"},this.props.status)," at ",this.props.date_formatted)),o.default.createElement("li",{className:"list-group-item history-item",onClick:this.handleClick},o.default.createElement("p",null,o.default.createElement("span",{className:"history-item__version"},"v.",this.props.versionid),o.default.createElement("span",{className:"history-item__date"},this.props.date_ago," ",this.props.author),this.props.summary),e)}}a.propTypes={versionid:i.default.number.isRequired,summary:i.default.oneOfType([i.default.bool,i.default.string]).isRequired,status:i.default.string,author:i.default.string,date_formatted:i.default.string,date_ago:i.default.string,onClick:i.default.func};var l=a;t.default=l},1204:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=n(1624),i=d(n(5159)),s=d(n(4510)),a=d(n(7390)),l=d(n(8238)),u=d(n(7086));function d(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&void 0!==arguments[1])||arguments[1];return i.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:s.default.get("SecurityID")}}:{}))}(e.sectionConfig.historyEndpoint)}componentDidMount(){this.refreshHistoryIfNeeded()}componentWillReceiveProps(e){this.refreshHistoryIfNeeded(e)}componentWillUnmount(){clearTimeout(this.timer),this.timer=null}refreshHistoryIfNeeded(e){if(!e&&!this.state.loadedDetails||e.data.fileId!==this.props.data.fileId||e.data.latestVersionId!==this.props.data.latestVersionId){this.setState({loadedDetails:!1});const t=e?e.data.fileId:this.props.data.fileId;clearTimeout(this.timer),this.timer=setTimeout((()=>{this.api({fileId:t}).then((e=>{this.timer&&this.setState({history:e,loadedDetails:!0})}))}),250)}}handleClick(e){this.setState({viewDetails:e})}handleBack(e){e.preventDefault(),this.setState({viewDetails:null})}render(){if(!this.state.loadedDetails)return r.default.createElement("div",{className:"history-list history-list--loading"},"Loading...");if(this.state.viewDetails){const e=[this.props.historySchemaUrl,this.props.data.fileId,this.state.viewDetails].join("/"),t=["btn","btn-secondary","btn--icon-xl","btn--no-text","font-icon-left-open-big","history-list__back"].join(" ");return r.default.createElement("div",{className:"history-list"},r.default.createElement("a",{href:"#",className:t,onClick:this.handleBack}),r.default.createElement(l.default,{identifier:"AssetAdmin.HistoryList",schemaUrl:e,formTag:"div"}))}const e=this.state.history||[];return r.default.createElement("div",{className:"history-list"},r.default.createElement("ul",{className:"list-group list-group-flush history-list__list"},e.map((e=>r.default.createElement(a.default,p({key:e.versionid},e,{onClick:this.handleClick}))))))}}t.Component=f,f.propTypes={sectionConfig:u.default.shape({form:u.default.object,historyEndpoint:u.default.shape({url:u.default.string,method:u.default.string,responseFormat:u.default.string})}),historySchemaUrl:u.default.string,data:u.default.object},f.defaultProps={data:{fieldId:0}};var h=(0,o.connect)((function(e){const t=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{sectionConfig:t,historySchemaUrl:t.form.fileHistoryForm.schemaUrl}}))(f);t.default=h},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),a=b(n(7056)),l=b(n(1746)),u=b(n(6513)),d=v(n(3669)),c=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class E extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(a.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=E,E.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},E.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var _=(0,i.compose)(l.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:a,targetId:l}=(0,m.default)(s);if(!a)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let d=g.default.stringify(u);return d=d?`?${d}`:"",{schemaUrl:`${a}/${l}${d}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(d,e),modal:(0,i.bindActionCreators)(c,e)}}})),u.default)(E);t.default=_},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),a=h(n(8264)),l=h(n(7086)),u=n(3669),d=n(5123),c=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:l,setError:u,setBadge:d}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),d(n,`${r.length}`,"success",a.default.MOVE_SUCCESS_DURATION),l(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(c.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:l.default.number.isRequired,isOpen:l.default.bool,onClosed:l.default.func,setNotice:l.default.func,setBadge:l.default.func,setError:l.default.func,title:l.default.string,onSuccess:l.default.func,onOpenFolder:l.default.func.isRequired,selectedFiles:l.default.array.isRequired,actions:l.default.shape({files:l.default.shape({moveFiles:l.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===a.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,d.display)({text:t,type:"success",actions:n}))},setError(t){e((0,d.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),a=p(n(9777)),l=n(4288),u=n(3069),d=n(6648),c=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(a.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(a.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],a={};return s.push(`${i}--${o}`),"image"===o&&t&&(a.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:a})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=l.galleryViewDefaultProps,h.propTypes={...l.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,c.compose)((0,d.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=d(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),a=d(n(8345)),l=d(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function d(e){return e&&e.__esModule?e:{default:e}}class c extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(a.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:a,selectableFolders:l}=this.props,u=r.find((t=>t.id===e.id));let d={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;d={...d,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;d={...d,onActivate:"folder"===e.type?t:n}}if(a&&(l||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?d.onActivate:this.props.onSelect;d={...d,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return d={...d,onDropFiles:e},o.default.createElement(n,d)}return o.default.createElement(t,d)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=c,c.defaultProps=s.galleryViewDefaultProps,c.propTypes={...s.galleryViewPropTypes,File:l.default.elementType.isRequired,Folder:l.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(c);t.default=p},788:function(e,t,n){"use strict";var r=l(n(5311)),o=l(n(7363)),i=n(745),s=n(6602),a=n(6648);function l(e){return e&&e.__esModule?e:{default:e}}function u(){return u=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e(".js-injector-boot input.entwine-uploadfield").entwine({Component:null,ReactRoot:null,getContainer(){let t=this.siblings(".uploadfield-holder")[0];if(!t){const n=e('
');this.before(n),t=n[0]}return t},onunmatch(){this._super();const e=this.getReactRoot();e&&(e.unmount(),this.setReactRoot(null))},onmatch(){const e=this.closest(".cms-content").attr("id"),t=e?{context:e}:{},n=(0,a.loadComponent)("UploadField",t);this.setComponent(n),this._super(),this.hide(),this.refresh()},onclick(e){e.preventDefault()},refresh(){const t=this.getAttributes(),n=e(this).closest("form"),r=this.getComponent();let s=this.getReactRoot();s||(s=(0,i.createRoot)(this.getContainer()),this.setReactRoot(s)),s.render(o.default.createElement(r,u({},t,{onChange:()=>{setTimeout((()=>{n.trigger("change")}),0)},noHolder:!0})))},getAttributes(){const t=e(this).data("state"),n=e(this).data("schema");return(0,s.schemaMerge)(n,t)}})}))},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},5488:function(e,t,n){"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=(0,((r=n(7752))&&r.__esModule?r:{default:r}).default)({name:null,canDelete:!1,canEdit:!1,category:null,created:null,extension:null,filename:null,id:0,lastEdited:null,messages:null,owner:{id:0,title:null},parent:{filename:null,id:0,title:null},queuedId:null,size:null,title:null,type:null,url:null,xhr:null,thumbnail:null,smallThumbnail:null,height:null,width:null});t.default=o},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:a}=e,l=null,u=null;if(n===i)return l=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:l,targetId:u};if(n===s&&o){switch(a){case"insert-media":l=t.fileInsertForm.schemaUrl;break;case"insert-link":l=t.fileEditorLinkForm.schemaUrl;break;case"select":l=t.fileSelectForm.schemaUrl;break;default:l=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:l,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},6529:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.initialState=t.default=void 0;var r,o=(r=n(9712))&&r.__esModule?r:{default:r},i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=o?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(602));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}const a={showConfirmation:!1,files:[],transition:i.NO_TRANSITION};t.initialState=a;var l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.CONFIRM_DELETION_ASK:return{...a,showConfirmation:!0,files:t.payload.files};case o.default.CONFIRM_DELETION_CANCEL:if(e.showConfirmation)return{...e,transition:i.CANCELING};break;case o.default.CONFIRM_DELETION_CONFIRM:if(e.showConfirmation)return{...e,transition:i.DELETING};break;case o.default.CONFIRM_DELETION_MODAL_CLOSE:return{...e,showConfirmation:!1,transition:i.NO_TRANSITION};case o.default.CONFIRM_DELETION_RESET:return a}return e};t.default=l},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},325:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=i(n(7752)),o=i(n(5327));function i(e){return e&&e.__esModule?e:{default:e}}const s={isOpen:!1};var a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.TOGGLE_SEARCH:return(0,r.default)({...e,isOpen:!e.isOpen});case o.default.OPEN_SEARCH:return(0,r.default)({...e,isOpen:!0});case o.default.CLOSE_SEARCH:return(0,r.default)({...e,isOpen:!1});default:return e}};t.default=a},5380:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1075),o=n(6648);const i={options(e){let{sectionConfig:t,folderId:n,fileId:o,query:i}=e;const s=Object.assign({},i.filter),a=Object.assign({},s,{parentId:void 0,recursive:(0,r.hasFilters)(s),currentFolderOnly:void 0}),l=(0,r.hasFilters)(s)?null:o||null,u={id:l?null:n||0,anyChildId:l},[d,c]=i.sort?i.sort.split(","):["",""],p=i.limit||t.limit;return{variables:{rootFilter:u,childrenFilter:a,limit:p,offset:((i.page||1)-1)*p,sortBy:d&&c?[{field:d,direction:c.toUpperCase()}]:void 0}}},props(e){let{data:{error:t,refetch:n,readFiles:r,loading:o},ownProps:{actions:i}}=e;const s=r&&r.nodes[0]?r.nodes[0]:null,a=s&&s.children?s.children.nodes.filter((e=>e)):[],l=s&&s.children?s.children.pageInfo.totalCount:0,u=s&&!s.children;return{loading:o||u,folder:s,files:a,filesTotalCount:l,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message)),actions:Object.assign({},i,{files:Object.assign({},i.files,{readFiles:n})})}}},{READ:s}=o.graphqlTemplates;var a={apolloConfig:i,templateName:s,pluralName:"Files",pagination:!1,params:{limit:"Int!",offset:"Int!",rootFilter:"FileFilterInput",childrenFilter:"FileFilterInput",sortBy:"[ChildrenSortInputType]"},args:{root:{filter:"rootFilter"},"root/nodes/...on Folder/children":{limit:"limit",offset:"offset",filter:"childrenFilter",sortBy:"sortBy"}},fragments:["FileInterfaceFields","FileFields"],fields:["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields","...on Folder",["children",["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields"]],"parents",["id","title"]]]]};t.default=a},7298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{fileId:t}=e;return{variables:{rootFilter:{id:t}}}},props(e){let{data:{error:t,readFiles:n,loading:r}}=e;return{loading:r,file:n&&n.nodes[0]?n.nodes[0]:null,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message))}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"Files",pagination:!1,params:{rootFilter:"FileFilterInput"},args:{root:{filter:"rootFilter"}},fragments:["FileInterfaceFields","FileFields"],fields:["nodes",["...FileInterfaceFields","...FileFields"]]};t.default=s},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` +!function(){var e,t,n={4811:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=s(n(6648)),o=s(n(3466)),i=s(n(4026));function s(e){return e&&e.__esModule?e:{default:e}}var a=()=>{r.default.transform("move-form-disabled",(e=>{e.component("TreeDropdownField.AssetAdmin.MoveForm",i.default)})),r.default.transform("owner-unpublishing",(e=>{e.component("FormAction.AssetAdmin.EditForm.action_unpublish",o.default)}))};t.default=a},7274:function(e,t,n){"use strict";var r=c(n(4510)),o=c(n(2873)),i=c(n(6290)),s=c(n(4811)),a=c(n(4180)),l=c(n(9521)),u=c(n(6154)),d=n(4845);function c(e){return e&&e.__esModule?e:{default:e}}document.addEventListener("DOMContentLoaded",(()=>{(0,l.default)(),(0,s.default)();const e=r.default.getSection("SilverStripe\\AssetAdmin\\Controller\\AssetAdmin").reactRoutePath;o.default.add({path:"/",routes:[{path:(0,d.joinUrlPaths)(e,"show/:folderId/:viewAction/:fileId"),component:i.default},{path:(0,d.joinUrlPaths)(e,"show/:folderId/:viewAction"),component:i.default},{path:(0,d.joinUrlPaths)(e,"show/:folderId"),component:i.default},{path:e,component:i.default}]}),(0,u.default)(),(0,a.default)()}))},9521:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=f(n(6648)),o=f(n(6334)),i=f(n(614)),s=f(n(1856)),a=f(n(2896)),l=f(n(8962)),u=f(n(8278)),d=f(n(1204)),c=f(n(6505)),p=n(197);function f(e){return e&&e.__esModule?e:{default:e}}var h=()=>{r.default.component.registerMany({UploadField:o.default,UploadFieldItem:i.default,PreviewImageField:l.default,HistoryList:d.default,ProportionConstraintField:u.default,AssetDropzone:s.default,InsertMediaModal:a.default,GalleryToolbar:c.default,GalleryItemFile:p.File,GalleryItemFolder:p.Folder})};t.default=h},6154:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(6648)),o=n(2214),i=c(n(7100)),s=c(n(1280)),a=c(n(5380)),l=c(n(8115)),u=c(n(7298)),d=c(n(1421));function c(e){return e&&e.__esModule?e:{default:e}}const p=!!document.body.getAttribute("data-graphql-legacy");var f=()=>{r.default.query.registerFragment("FileInterfaceFields",o.fileInterface),r.default.query.registerFragment("FileFields",o.file),r.default.query.register("ReadFilesQuery",p?a.default:i.default),r.default.query.register("readDescendantFileCountsQuery",l.default),r.default.query.register("ReadOneFileQuery",p?u.default:s.default),r.default.query.register("readFileUsageQuery",d.default)};t.default=f},4180:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=f(n(6648)),o=n(2827),i=f(n(3627)),s=f(n(5456)),a=f(n(7437)),l=f(n(4350)),u=f(n(4694)),d=f(n(325)),c=f(n(6529)),p=f(n(7897));function f(e){return e&&e.__esModule?e:{default:e}}var h=()=>{r.default.reducer.register("assetAdmin",(0,o.combineReducers)({gallery:i.default,queuedFiles:s.default,uploadField:a.default,previewField:l.default,imageLoad:u.default,displaySearch:d.default,confirmDeletion:c.default,modal:p.default}))};t.default=h},1856:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=d(n(394)),i=d(n(4754)),s=d(n(247)),a=d(n(5311)),l=n(3069),u=d(n(7086));function d(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}let p=0;class f extends r.Component{constructor(e){super(e),this.dropzone=null,this.dragging=!1,this.handleAccept=this.handleAccept.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleDragEnter=this.handleDragEnter.bind(this),this.handleDragLeave=this.handleDragLeave.bind(this),this.handleDrop=this.handleDrop.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleError=this.handleError.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSuccess=this.handleSuccess.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.loadImage=this.loadImage.bind(this),this.handleMaxFilesExceeded=this.handleMaxFilesExceeded.bind(this)}componentDidMount(){this.dropzone=new s.default(o.default.findDOMNode(this),Object.assign({},this.getDefaultOptions(),this.props.options));const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`),void 0!==this.props.promptOnRemove&&this.setPromptOnRemove(this.props.promptOnRemove)}componentWillReceiveProps(e){e.canUpload&&this.dropzone&&(this.dropzone.enable(),this.dropzone.options=Object.assign({},this.getDefaultOptions(),this.dropzone.options,this.props.options))}componentDidUpdate(){const{name:e}=this.props;e&&this.dropzone.hiddenFileInput&&this.dropzone.hiddenFileInput.classList.add(`dz-input-${e}`)}componentWillUnmount(){this.dropzone.files=[],this.dropzone.destroy()}getDefaultOptions(){let e=null,t=this.props.uploadSelector;if(!t&&this.props.uploadButton&&(t=".asset-dropzone__upload-button"),t){const n=(0,a.default)(o.default.findDOMNode(this)).find(t);n&&n.length&&(e=n.toArray())}return{accept:this.handleAccept,addedfile:this.handleAddedFile,dragenter:this.handleDragEnter,dragleave:this.handleDragLeave,drop:this.handleDrop,maxfilesexceeded:this.handleMaxFilesExceeded,uploadprogress:this.handleUploadProgress,complete:this.handleUploadComplete,dictDefaultMessage:i.default._t("AssetAdmin.DROPZONE_DEFAULT_MESSAGE","Drop files here to upload"),dictFallbackMessage:i.default._t("AssetAdmin.DROPZONE_FALLBACK_MESSAGE","Your browser does not support drag'n'drop file uploads."),dictFallbackText:i.default._t("AssetAdmin.DROPZONE_FALLBACK_TEXT","Please use the fallback form below to upload your files like in the olden days."),dictInvalidFileType:i.default._t("AssetAdmin.DROPZONE_INVALID_FILE_TYPE","You can't upload files of this type."),dictResponseError:i.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),dictCancelUpload:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD","Cancel upload"),dictCancelUploadConfirmation:i.default._t("AssetAdmin.DROPZONE_CANCEL_UPLOAD_CONFIRMATION","Are you sure you want to cancel this upload?"),dictRemoveFile:i.default._t("AssetAdmin.DROPZONE_REMOVE_FILE","Remove file"),dictMaxFilesExceeded:i.default._t("AssetAdmin.DROPZONE_MAX_FILES_EXCEEDED","You can not upload any more files."),error:this.handleError,sending:this.handleSending,success:this.handleSuccess,queuecomplete:this.handleQueueComplete,thumbnailHeight:150,thumbnailWidth:200,timeout:0,clickable:e}}getFileCategory(e){return e.split("/")[0]}getLoadPreview(e){return new Promise((t=>{const n=new FileReader;n.onload=n=>{if("image"===this.getFileCategory(e.type)){const e=new Image;t(this.loadImage(e,n.target.result))}else t({})},n.readAsDataURL(e)}))}getFileTitle(e){return e.replace(/[.][^.]+$/,"").replace(/-_/," ")}setPromptOnRemove(e){this.dropzone.options.dictRemoveFileConfirmation=e}handleDragEnter(e){this.props.canUpload&&(this.dragging=!0,this.forceUpdate(),"function"==typeof this.props.onDragEnter&&this.props.onDragEnter(e))}handleDragLeave(e){const t=o.default.findDOMNode(this);this.props.canUpload&&e.target===t&&(this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDragLeave&&this.props.onDragLeave(e,t))}handleUploadProgress(e,t,n){"function"==typeof this.props.onUploadProgress&&this.props.onUploadProgress(e,t,n)}handleUploadComplete(e){"function"==typeof this.props.onUploadComplete&&this.props.onUploadComplete(e.status)}handleDrop(e){this.dragging=!1,this.forceUpdate(),"function"==typeof this.props.onDrop&&this.props.onDrop(e)}handleSending(e,t,n){"function"==typeof this.props.updateFormData&&this.props.updateFormData(n),n.append("SecurityID",this.props.securityID),n.append("ParentID",this.props.folderId);const r=Object.assign({},t,{abort:()=>{this.dropzone.cancelUpload(e),t.abort()}});"function"==typeof this.props.onSending&&this.props.onSending(e,r,n)}handleMaxFilesExceeded(e){return"function"!=typeof this.props.onMaxFilesExceeded||this.props.onMaxFilesExceeded(e)}generateQueuedId(){return p+=1,p}handleAccept(e,t){return("function"!=typeof this.props.canFileUpload||this.props.canFileUpload(e))&&this.props.canUpload?t():t(i.default._t("AssetAdmin.DROPZONE_CANNOT_UPLOAD","Uploading not permitted."))}handleAddedFile(e){e._queuedId=this.generateQueuedId();const t={category:this.getFileCategory(e.type),filename:e.name,queuedId:e._queuedId,size:e.size,title:this.getFileTitle(e.name),extension:(0,l.getFileExtension)(e.name),type:e.type,uploadedToFolderId:this.props.folderId};this.props.onAddedFile(t);return this.getLoadPreview(e).then((e=>{const n={height:e.height,width:e.width,url:e.thumbnailURL,thumbnail:e.thumbnailURL,smallThumbnail:e.thumbnailURL};return"function"==typeof this.props.onPreviewLoaded&&this.props.onPreviewLoaded(t,n),{...t,...n}}))}loadImage(e,t){return new Promise((n=>{const r=document.createElement("canvas"),o=r.getContext("2d");e.onload=()=>{const t=2*this.props.preview.width,i=2*this.props.preview.height,s=e.naturalWidth/e.naturalHeight;e.naturalWidtht.value===e))}handleChangeValue(e){let t=null;const n=this.getOptionByValue(e.target.value);return null===n?null:(t="function"==typeof n.confirm?n.confirm(this.props.items).then((()=>n.callback(e,this.props.items))).catch((e=>{if("cancelled"!==e)throw e})):n.callback(e,this.props.items)||Promise.resolve(),t)}renderChild(e,t){const n=(0,l.default)("bulk-actions__action",e.className||"font-icon-info-circled",{btn:t<2,"bulk-actions__action--more":t>2});return t<2?o.default.createElement(a.Button,{className:n,key:e.value,onClick:this.handleChangeValue,value:e.value,color:e.color},e.label):o.default.createElement(a.DropdownItem,{type:"button",className:n,key:e.value,onClick:this.handleChangeValue,value:e.value},e.label)}render(){if(!this.props.items.length)return null;let e=this.props.actions.filter((e=>!e.canApply||e.canApply(this.props.items)));if(e=e.map(this.renderChild),!e.length)return null;const{ActionMenu:t,showCount:n}=this.props,r=this.props.items.length;return o.default.createElement("div",{className:"bulk-actions fieldholder-small"},n&&o.default.createElement("div",{className:"bulk-actions-counter"},r),e.slice(0,2),e.length>2&&t?o.default.createElement(t,{id:"BulkActions",className:"bulk-actions__more-actions-menu"},e.slice(2)):e.slice(2))}}t.Component=p,p.propTypes={items:u.default.array,actions:u.default.arrayOf(u.default.shape({value:u.default.string.isRequired,label:u.default.string.isRequired,className:u.default.string,destructive:u.default.bool,callback:u.default.func,canApply:u.default.func,confirm:u.default.func})),ActionMenu:u.default.elementType,showCount:u.default.bool},p.defaultProps={items:[],actions:[],ActionMenu:null,total:null,showCount:!0,totalReachedMessage:r.default._t("")};const f=(0,i.connect)((function(e){return{gallery:e.assetAdmin.gallery}}))(p);var h=(0,s.inject)(["ActionMenu"],(e=>({ActionMenu:e})),(()=>"BulkActions"))(f);t.default=h},197:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Folder=t.File=t.Component=void 0;var r=_(n(4754)),o=E(n(7363)),i=_(n(7820)),s=_(n(8264)),a=_(n(4744)),l=_(n(4271)),u=_(n(8729)),d=_(n(7241)),c=_(n(9777)),p=_(n(9900)),f=n(1624),h=n(2827),m=n(8088),g=E(n(3521)),y=_(n(2175)),v=_(n(7086));function b(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(b=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=b(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function _(e){return e&&e.__esModule?e:{default:e}}function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e.preventDefault()};class F extends o.Component{constructor(e){super(e),this.handleSelect=this.handleSelect.bind(this),this.handleActivate=this.handleActivate.bind(this),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this)}componentWillReceiveProps(e){S(e)&&e.actions.imageLoad.loadImage(e.item.thumbnail,e.sectionConfig.imageRetry)}getThumbnailStyles(){const{item:{thumbnail:e,version:t},bustCache:n}=this.props;if(!this.isImage()||!e||this.missing())return{};const r=!1===n||!t||e.startsWith("data:image/")?e:`${e}?vid=${t}`;switch(this.props.loadState){case y.default.SUCCESS:case y.default.DISABLED:return{backgroundImage:`url(${r})`};default:return{}}}getErrorMessage(){let e=null;const{item:t,loadState:n}=this.props;if(this.hasError()?e=t.message.value:this.missing()?e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"):n===y.default.FAILED&&(e=r.default._t("AssetAdmin.FILE_LOAD_ERROR","Thumbnail not available")),null!==e){return e=this.getItemFunction("updateErrorMessage")(e,this.props),o.default.createElement("span",{className:"gallery-item__error-message"},e)}return null}getThumbnailClassNames(){const e=["gallery-item__thumbnail"];switch(this.isImageSmallerThanThumbnail()&&e.push("gallery-item__thumbnail--small"),!this.props.item.thumbnail&&this.isImage()&&e.push("gallery-item__thumbnail--no-preview"),this.props.loadState){case y.default.LOADING:case y.default.WAITING:e.push("gallery-item__thumbnail--loading");break;case y.default.FAILED:e.push("gallery-item__thumbnail--error")}return e.join(" ")}getItemClassNames(){const e=this.props.item.category||"false",t=this.props.selectable&&(this.props.item.selected||this.props.isDragging);return(0,i.default)({"gallery-item":!0,[`gallery-item--${e}`]:!0,"gallery-item--max-selected":this.props.maxSelected&&!t,"gallery-item--missing":this.missing(),"gallery-item--selectable":this.props.selectable,"gallery-item--selected":t,"gallery-item--dropping":this.props.isDropping,"gallery-item--highlighted":this.props.item.highlighted,"gallery-item--error":this.hasError(),"gallery-item--dragging":this.props.isDragging})}getItemFunction(e){const{item:t}=this.props;return"function"==typeof t[e]?t[e]:this.props[e]}getStatusFlags(){let e=[];const{item:t}=this.props;"folder"!==t.type&&(t.draft?e.push({key:"status-draft",title:r.default._t("File.DRAFT","Draft"),className:"gallery-item--draft"}):t.modified&&e.push({key:"status-modified",title:r.default._t("File.MODIFIED","Modified"),className:"gallery-item--modified"}));return e=this.getItemFunction("updateStatusFlags")(e,this.props),o.default.createElement("div",{className:"gallery-item__status-flags"},e.map((e=>o.default.createElement("span",e))))}getStatusIcons(){const{item:e}=this.props,t=[];return e.hasRestrictedAccess&&t.push({key:"status-restricted",fileID:e.id,hasRestrictedAccess:!0,placement:"top",disableTooltip:"folder"===e.type,includeBackground:"folder"!==e.type}),e.isTrackedFormUpload&&"folder"!==e.type&&t.push({key:"status-tracked-form-upload",fileID:e.id,isTrackedFormUpload:!0,hasRestrictedAccess:e.hasRestrictedAccess,placement:"top",includeBackground:!0}),o.default.createElement("div",{className:"gallery-item__status-icons"},t.map((e=>o.default.createElement(c.default,e))))}getProgressBar(){let e=null;const{item:t}=this.props,n={className:"gallery-item__progress-bar",style:{width:`${t.progress}%`}};this.hasError()||!this.uploading()||this.complete()||(e=o.default.createElement("div",{className:"gallery-item__upload-progress"},o.default.createElement("div",n)));return e=this.getItemFunction("updateProgressBar")(e,this.props),e}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&t0}missing(){return!this.exists()&&this.saved()}uploading(){return this.props.item.queuedId&&!this.saved()}exists(){return this.props.item.exists}isImage(){return"image"===this.props.item.category}canBatchSelect(){return this.props.selectable&&this.props.item.canEdit}hasError(){let e=!1;return this.props.item.message&&(e="error"===this.props.item.message.type),e}handleActivate(e){e.stopPropagation(),"function"==typeof this.props.onActivate&&this.saved()&&this.props.onActivate(e,this.props.item)}handleSelect(e){e.stopPropagation(),e.preventDefault(),"function"==typeof this.props.onSelect&&this.props.onSelect(e,this.props.item)}handleKeyDown(e){s.default.SPACE_KEY_CODE===e.keyCode&&(e.preventDefault(),this.canBatchSelect()&&this.handleSelect(e)),s.default.RETURN_KEY_CODE===e.keyCode&&this.handleActivate(e)}handleCancelUpload(e){e.stopPropagation(),e.preventDefault(),this.hasError()?this.props.onRemoveErroredUpload(this.props.item):this.props.onCancelUpload&&this.props.onCancelUpload(this.props.item)}render(){let e=null,t=null,n=null;const{id:i,queuedId:s}=this.props.item,a=i?`item-${i}`:`queued-${s}`;if(this.props.selectable&&(this.canBatchSelect()&&(e=this.handleSelect),t="font-icon-tick"),this.uploading())e=this.handleCancelUpload,t="font-icon-cancel";else if(this.exists()){const e=r.default._t("AssetAdmin.VIEW","View");n=o.default.createElement("div",{className:"gallery-item--overlay font-icon-eye"},e)}const l=this.props.badge,u={className:"gallery-item__checkbox",type:"checkbox",title:r.default._t("AssetAdmin.SELECT","Select"),tabIndex:-1,onMouseDown:w,id:a},c=["gallery-item__checkbox-label",t];this.canBatchSelect()||(u.disabled=!0,c.push("gallery-item__checkbox-label--disabled"));const p={className:c.join(" "),onClick:e};return o.default.createElement("div",{className:this.getItemClassNames(),"data-id":this.props.item.id,tabIndex:0,role:"button",onKeyDown:this.handleKeyDown,onClick:this.handleActivate},!!l&&o.default.createElement(d.default,{className:"gallery-item__badge",status:l.status,message:l.message}),o.default.createElement("div",{ref:e=>{this.thumbnail=e},className:this.getThumbnailClassNames(),style:this.getThumbnailStyles()},n,this.getStatusFlags(),this.getStatusIcons()),this.getProgressBar(),this.getErrorMessage(),this.props.children,o.default.createElement("div",{className:"gallery-item__title",ref:e=>{this.title=e}},o.default.createElement("label",C({},p,{htmlFor:a}),o.default.createElement("input",u)),this.props.item.title))}}t.Component=F,F.propTypes={sectionConfig:p.default,item:a.default,loadState:v.default.oneOf(Object.values(y.default)),bustCache:v.default.bool,highlighted:v.default.bool,selected:v.default.bool,isDropping:v.default.bool,isDragging:v.default.bool,message:v.default.shape({value:v.default.string,type:v.default.string}),selectable:v.default.bool,onActivate:v.default.func,onSelect:v.default.func,onCancelUpload:v.default.func,onRemoveErroredUpload:v.default.func,badge:v.default.shape({status:v.default.string,message:v.default.string}),updateStatusFlags:v.default.func,updateProgressBar:v.default.func,updateErrorMessage:v.default.func},F.defaultProps={item:{},sectionConfig:{imageRetry:{}},updateStatusFlags:e=>e,updateProgressBar:e=>e,updateErrorMessage:e=>e,bustCache:!0};const O=(0,f.connect)((function(e,t){const{bustCache:n}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));let r=y.default.DISABLED;if(S(t)){const n=e.assetAdmin.imageLoad.files.find((e=>t.item.thumbnail===e.url));r=n&&n.status||y.default.NONE}return{bustCache:n,loadState:r}}),(function(e){return{actions:{imageLoad:(0,h.bindActionCreators)(g,e)}}}))(F),I="GalleryItem",A=(0,m.createSelectable)((0,l.default)(I)(O));t.File=A;const x=(0,m.createSelectable)((0,u.default)(I)(A));t.Folder=x;var D=O;t.default=D},5710:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7086)),i=n(2084),s=l(n(197)),a=l(n(7241));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?r.default.createElement("div",{key:"1",className:"gallery-item__drag-shadow"}):null,t>2?r.default.createElement("div",{key:"2",className:"gallery-item__drag-shadow gallery-item__drag-shadow--second"}):null];return r.default.createElement("div",{className:"gallery-item__drag-layer"},r.default.createElement("div",{className:"gallery-item__drag-layer-item",style:this.getOffset()},r.default.createElement("div",{className:"gallery-item__drag-layer-preview"},n,r.default.createElement(s.default,d({},e.props,{isDragging:!0}))),t>1?r.default.createElement(a.default,{className:"gallery-item__drag-layer-count",status:"info",message:`${t}`}):null))}}c.propTypes={item:o.default.object,offset:o.default.shape({x:o.default.number.isRequired,y:o.default.number.isRequired}),isDragging:o.default.bool.isRequired};var p=(0,i.DragLayer)((e=>({item:e.getItem(),offset:e.getInitialClientOffset(),dragged:e.getDifferenceFromInitialOffset(),isDragging:e.isDragging()})))(c);t.default=p},4271:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={canDrag(e){return e.canDrag},beginDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!0,t);const n=e.selectedFiles.concat([]);return n.includes(t)||n.push(t),{selected:n,props:e}},endDrag(e){const{id:t}=e.item;"function"==typeof e.onDrag&&e.onDrag(!1,t)}},n=(0,s.DragSource)(e,t,((e,t)=>({connectDragPreview:e.dragPreview(),connectDragSource:e.dragSource(),isDragging:t.isDragging()})));return e=>{class t extends o.Component{componentDidMount(){this.props.connectDragPreview((0,a.getEmptyImage)(),{captureDraggingState:!0})}render(){const{connectDragSource:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__draggable"},n))}}return t.propTypes={connectDragSource:i.default.func.isRequired,connectDragPreview:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired,onDrag:i.default.func,selectedFiles:i.default.arrayOf(i.default.number)},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084),a=n(1211);function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}},8729:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={drop(e,t){if(t.canDrop()){const n=t.getItem();e.onDropFiles(e.item.id,n.selected)}},canDrop(e,t){return!t.getItem().selected.includes(e.item.id)}},n=(0,s.DropTarget)(e,t,((e,t)=>{const n=t.isOver();return{isDropping:n&&t.canDrop(),connectDropTarget:e.dropTarget(),isOver:n}}));return e=>{class t extends o.Component{render(){const{connectDropTarget:t}=this.props,n=o.default.createElement(e,this.props);return"string"==typeof n.type?t(n):t(o.default.createElement("div",{className:"gallery-item__droppable"},n))}}return t.propTypes={connectDropTarget:i.default.func.isRequired,item:i.default.shape({id:i.default.number.isRequired}).isRequired},n(t)}};var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r},s=n(2084);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}},5529:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(7086)),i=s(n(4754));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{constructor(){super(),this.handleCreateFolder=this.handleCreateFolder.bind(this)}handleCreateFolder(e){const{onCreateFolder:t}=this.props;e.preventDefault(),"function"==typeof t&&t()}render(){const{canEdit:e}=this.props;return r.default.createElement("button",{id:"add-folder-button",className:"btn btn-secondary font-icon-folder-add btn--icon-xl",type:"button",onClick:this.handleCreateFolder,disabled:!e},r.default.createElement("span",{className:"btn__text btn__title"},i.default._t("AssetAdmin.ADD_FOLDER_BUTTON")))}}l.propTypes={canEdit:o.default.bool.isRequired,onCreateFolder:o.default.func.isRequired};var u=l;t.default=u},9539:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(7086)),i=s(n(3667));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{constructor(e){super(e),this.handleBackClick=this.handleBackClick.bind(this)}handleBackClick(e){const{onOpenFolder:t,folder:n}=this.props;e.preventDefault(),"function"==typeof t&&t(n.parentId)}render(){const{folder:e,badges:t,onMoveFiles:n}=this.props,{parentId:o}=e;if(null===o)return null;const s=t.find((e=>e.id===o));return r.default.createElement("div",{className:"gallery__back-container"},r.default.createElement(i.default,{item:{id:o},onClick:this.handleBackClick,onDropFiles:n,badge:s}))}}l.propTypes={folder:o.default.shape({id:o.default.number,title:o.default.string,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}).isRequired,badges:o.default.arrayOf(o.default.shape({id:o.default.number,message:o.default.node,status:o.default.string})).isRequired,onOpenFolder:o.default.func.isRequired,onMoveFiles:o.default.func.isRequired};var u=l;t.default=u},9617:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=s(n(4754)),i=s(n(7086));function s(e){return e&&e.__esModule?e:{default:e}}function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}class l extends r.Component{render(){const{canEdit:e}=this.props;return r.default.createElement("button",{id:"upload-button",className:"btn btn-secondary font-icon-upload btn--icon-xl",type:"button",disabled:!e},r.default.createElement("span",{className:"btn__text btn__title"},o.default._t("AssetAdmin.DROPZONE_UPLOAD")))}}l.defaultProps={canEdit:i.default.func.isRequired};var u=l;t.default=u},6505:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=u(n(9539)),a=u(n(9617)),l=u(n(5529));function u(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}class c extends r.Component{constructor(e){super(e),this.handleSelectSort=this.handleSelectSort.bind(this),this.handleViewChange=this.handleViewChange.bind(this)}handleSelectSort(e){this.props.onSort(e.currentTarget.value)}handleViewChange(e){const t=e.currentTarget.value;this.props.onViewChange(t)}renderSort(){return"tile"!==this.props.view?null:r.default.createElement("div",{className:"gallery__sort fieldholder-small"},r.default.createElement("select",{className:"dropdown no-change-track no-chzn",tabIndex:"0",style:{width:"160px"},defaultValue:this.props.sort},this.props.sorters.map((e=>{const t=e.label.replace(/^\w|[\s\-]+\w/g,(e=>e.toUpperCase()));return r.default.createElement("option",{key:`${e.field}-${e.direction}`,onClick:this.handleSelectSort,"data-field":e.field,"data-direction":e.direction,value:`${e.field},${e.direction}`},t)}))))}renderViewChangeButtons(){return["tile","table"].map((e=>{const t="table"===e?"list":"thumbnails",n=["gallery__view-change-button","btn btn-secondary","btn--icon-sm","btn--no-text"];return e===this.props.view?null:(n.push(`font-icon-${t}`),r.default.createElement("button",{id:`button-view-${e}`,key:e,className:n.join(" "),type:"button",title:"Change view gallery/list",onClick:this.handleViewChange,value:e}))}))}render(){const{badges:e,children:t,folder:n,onMoveFiles:o,onOpenFolder:i,onCreateFolder:s,BackButton:a,UploadButton:l,AddFolderButton:u}=this.props,{canEdit:d}=n;return r.default.createElement("div",{className:"toolbar--content toolbar--space-save"},r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"gallery__btn-toolbar flexbox-area-grow"},r.default.createElement("div",{className:"btn-toolbar"},r.default.createElement(a,{folder:n,badges:e,onOpenFolder:i,onMoveFiles:o}),r.default.createElement(l,{canEdit:d}),r.default.createElement(u,{canEdit:d,onCreateFolder:s}),t)),r.default.createElement("div",{className:"gallery__state-buttons"},this.renderSort(),r.default.createElement("div",{className:"btn-group",role:"group","aria-label":"View mode"},this.renderViewChangeButtons()))))}}t.Component=c,c.propTypes={onMoveFiles:o.default.func.isRequired,onCreateFolder:o.default.func.isRequired,onViewChange:o.default.func.isRequired,onOpenFolder:o.default.func.isRequired,onSort:o.default.func.isRequired,folder:o.default.shape({id:o.default.number,title:o.default.string,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}).isRequired,view:o.default.oneOf(["tile","table"]),sort:o.default.string,badges:o.default.arrayOf(o.default.shape({id:o.default.number,message:o.default.node,status:o.default.string})),BackButton:o.default.elementType,UploadButton:o.default.elementType,AddFolderButton:o.default.elementType},c.defaultProps={view:"tile",BackButton:s.default,UploadButton:a.default,AddFolderButton:l.default};var p=(0,i.connect)((function(e,t){let{sort:n}=t;const{badges:r,sorters:o}=e.assetAdmin.gallery;return""===n&&(n=`${o[0].field},${o[0].direction}`),{badges:r,sorters:o,sort:n}}))(c);t.default=p},961:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=f(n(4754)),o=p(n(7363)),i=n(2827),s=n(1624),a=f(n(4912)),l=p(n(3573)),u=f(n(7086)),d=n(4845);function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function p(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function f(e){return e&&e.__esModule?e:{default:e}}class h extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentWillMount(){this.setOverrides(this.props)}componentWillReceiveProps(e){e.isOpen&&!this.props.isOpen&&this.setOverrides(e)}componentWillUnmount(){this.clearOverrides()}setOverrides(e){if(this.props.schemaUrl!==e.schemaUrl&&this.clearOverrides(),e.schemaUrl){const t=Object.assign({},e.fileAttributes);delete t.ID;const n={fields:Object.entries(t).map((e=>{const[t,n]=e;return{name:t,value:n}}))};this.props.actions.schema.setSchemaStateOverrides(e.schemaUrl,n)}}getModalProps(){const e=Object.assign({onSubmit:this.handleSubmit,onLoadingError:this.handleLoadingError,showErrorMessage:!0,responseClassBad:"alert alert-danger",identifier:"AssetAdmin.InsertEmbedModal"},this.props,{className:`insert-embed-modal ${this.props.className}`,size:"lg",onClosed:this.props.onClosed,title:this.props.targetUrl?r.default._t("AssetAdmin.EditTitle","Media from the web"):r.default._t("AssetAdmin.CreateTitle","Insert new media from the web")});return delete e.sectionConfig,delete e.onInsert,delete e.fileAttributes,e}clearOverrides(){this.props.actions.schema.setSchemaStateOverrides(this.props.schemaUrl,null)}handleLoadingError(e){"function"==typeof this.props.onLoadingError&&this.props.onLoadingError(e)}handleSubmit(e,t){switch(t){case"action_addmedia":this.props.onCreate(e);break;case"action_insertmedia":this.props.onInsert(e);break;case"action_cancel":this.props.onClosed()}return Promise.resolve()}render(){return o.default.createElement(a.default,this.getModalProps())}}t.Component=h,h.propTypes={sectionConfig:u.default.shape({url:u.default.string,form:u.default.object}),isOpen:u.default.bool,onInsert:u.default.func.isRequired,onCreate:u.default.func.isRequired,fileAttributes:u.default.shape({Url:u.default.string,CaptionText:u.default.string,PreviewUrl:u.default.string,Placement:u.default.string,Width:u.default.number,Height:u.default.number}),onClosed:u.default.func.isRequired,className:u.default.string,actions:u.default.object,schemaUrl:u.default.string.isRequired,targetUrl:u.default.string,onLoadingError:u.default.func},h.defaultProps={className:"",fileAttributes:{}};var m=(0,s.connect)((function(e,t){const n=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name)),r=t.fileAttributes?t.fileAttributes.Url:"",o=n.form.remoteEditForm.schemaUrl,i=r&&(0,d.joinUrlPaths)(o,`/?embedurl=${encodeURIComponent(r)}`),s=n.form.remoteCreateForm.schemaUrl;return{sectionConfig:n,schemaUrl:i||s,targetUrl:r}}),(function(e){return{actions:{schema:(0,i.bindActionCreators)(l,e)}}}))(h);t.default=m},8962:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=b(n(1856)),s=b(n(8264)),a=n(1624),l=n(2827),u=n(5762),d=v(n(7513)),c=n(3069),p=b(n(720)),f=b(n(7820)),h=b(n(7086)),m=b(n(1872)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class E extends o.Component{constructor(e){super(e),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleSending=this.handleSending.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleUploadComplete=this.handleUploadComplete.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.canFileUpload=this.canFileUpload.bind(this),this.updateFormData=this.updateFormData.bind(this),this.cacheBustUrl=this.cacheBustUrl.bind(this)}componentDidUpdate(e){(e.data.url&&this.props.data.url!==e.data.url||e.data.version&&this.props.data.version!==e.data.version)&&this.props.actions.previewField.removeFile(e.id)}componentWillUnmount(){this.props.actions.previewField.removeFile(this.props.id)}getDropzoneProps(){const e=this.props.data.uploadFileEndpoint,t=this.props.name,n={url:e&&e.url,method:e&&e.method,paramName:"Upload",clickable:!0,maxFiles:1},r={height:s.default.THUMBNAIL_HEIGHT,width:s.default.THUMBNAIL_WIDTH},o=this.props.securityID;return{name:t,className:["asset-dropzone--button","preview-image-field__container",this.props.className,this.props.extraClass].join(" "),canUpload:e&&this.canEdit(),preview:r,folderId:this.props.data.parentid,options:n,securityID:o,uploadButton:!1,onAddedFile:this.handleAddedFile,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,onUploadComplete:this.handleUploadComplete,canFileUpload:this.canFileUpload,updateFormData:this.updateFormData}}getButtonClasses(e){return(0,f.default)([`preview-image-field__toolbar-button--${e}`,"preview-image-field__toolbar-button"])}updateFormData(e){e.append("ID",this.props.data.id),e.append("Name",this.props.nameValue)}handleSending(e,t){this.props.actions.previewField.updateFile(this.props.id,{xhr:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);"function"==typeof this.props.onAutofill&&(this.props.onAutofill("FileFilename",t.Filename),this.props.onAutofill("FileHash",t.Hash),this.props.onAutofill("FileVariant",t.Variant),t.Name&&this.props.onAutofill(this.props.data.nameField,t.Name))}handleFailedUpload(e,t){this.props.actions.previewField.failUpload(this.props.id,t)}handleAddedFile(e){this.props.actions.previewField.addFile(this.props.id,e)}handleRemoveErroredUpload(){if("function"==typeof this.props.onAutofill){const e=this.props.data.initialValues;this.props.onAutofill("FileFilename",e.FileFilename),this.props.onAutofill("FileHash",e.FileHash),this.props.onAutofill("FileVariant",e.FileVariant)}this.props.actions.previewField.removeFile(this.props.id)}handleCancelUpload(){this.props.upload.xhr&&this.props.upload.xhr.abort(),this.handleRemoveErroredUpload()}canFileUpload(e){const t=this.props.data.initialValues.FileFilename,n=(0,c.getFileExtension)(t),o=(0,c.getFileExtension)(e.name);if(!n||n===o)return!0;const i=r.default._t("AssetAdmin.CONFIRM_CHANGE_EXTENSION","Are you sure you want upload a file with a different extension?");return this.props.confirm(i)}preventDefault(e){e.preventDefault()}canEdit(){return!this.props.readOnly&&!this.props.disabled&&"folder"!==this.props.data.category}handleUploadProgress(e,t){this.props.actions.previewField.updateFile(this.props.id,{progress:t})}handleUploadComplete(e){this.props.actions.previewField.updateStatus(this.props.id,{status:e})}preview(e,t,n){if(e&&"image"!==e)return s.default.DEFAULT_PREVIEW;const r=t.url||n.preview||n.url;if(r){return r.startsWith("data:image/")?r:this.cacheBustUrl(r,n.version)}return null}cacheBustUrl(e){const t=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"")||this.props.data.version;if(!1===this.props.bustCache||!t)return e;const n=m.default.parse(e),r={...g.default.parse(n.query),vid:t};return m.default.format({...n,search:g.default.stringify(r)})}renderImage(){const{data:e,upload:t}=this.props;if(!e.mock&&!e.exists&&!t.url)return o.default.createElement("div",{className:"editor__file-preview-message--file-missing"},r.default._t("AssetAdmin.FILE_MISSING","File cannot be found"));const{category:n,progress:i,message:s}=t,a=t.errors?t.errors[0]:null,l=t.status?t.status:null,u=this.preview(n,t,e),d=o.default.createElement("img",{alt:"preview",src:u,className:"editor__thumbnail"}),c=e.url&&!i?o.default.createElement("a",{className:"editor__file-preview-link",href:this.cacheBustUrl(e.url),target:"_blank",rel:"noopener noreferrer"},d):null,p=i>0&&i<100?o.default.createElement("div",{className:"preview-image-field__progress"},o.default.createElement("div",{className:"preview-image-field__progress-bar",style:{width:`${i}%`}})):null;let f=null;if(a||"error"===l){const e=a&&a.value?a.value:r.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error."),t=a&&a.type?a.type:"error";f=o.default.createElement("div",{className:`preview-image-field__message preview-image-field__message--${t}`},e)}else s?f=o.default.createElement("div",{className:`preview-image-field__message preview-image-field__message--${s.type}`},s.value):100===i&&"success"===l&&(f=o.default.createElement("div",{className:"preview-image-field__message preview-image-field__message--success"},r.default._t("AssetAdmin.REPlACE_FILE_SUCCESS","Upload successful, the file will be replaced when you Save."),(i||s)&&o.default.createElement("button",{onClick:this.handleCancelUpload,className:"preview-image-field__message-button btn btn-outline-light",type:"button"},r.default._t("AssetAdmin.REPLACE_FILE_UNDO","Undo"))));return o.default.createElement("div",{className:"editor__thumbnail-container"},c||d,p,f)}render(){const e=this.getDropzoneProps();if(this.canEdit())return o.default.createElement(i.default,e,this.renderImage());const t=["preview-image-field__container",this.props.className,this.props.extraClass];return o.default.createElement("div",{className:t.join(" ")},this.renderImage())}}t.Component=E,E.propTypes={id:h.default.string.isRequired,name:h.default.string,className:h.default.string,extraClass:h.default.string,readOnly:h.default.bool,disabled:h.default.bool,bustCache:h.default.bool,onAutofill:h.default.func,formid:h.default.string,nameValue:h.default.string,data:h.default.shape({id:h.default.number,parentid:h.default.number,version:h.default.number,url:h.default.string,mock:h.default.bool,exists:h.default.bool,preview:h.default.string,category:h.default.string,nameField:h.default.string,uploadFileEndpoint:h.default.shape({url:h.default.string.isRequired,method:h.default.string.isRequired,payloadFormat:h.default.string}),initialValues:h.default.object}).isRequired,upload:h.default.shape({url:h.default.string,progress:h.default.number,xhr:h.default.object,category:h.default.string,message:h.default.shape({type:h.default.string.isRequired,value:h.default.string.isRequired}),status:h.default.string}),actions:h.default.object,securityID:h.default.string,confirm:h.default.func},E.defaultProps={extraClass:"",className:"",data:{},upload:{},confirm:e=>window.confirm(e),bustCache:!0};var _=(0,a.connect)((function(e,t){const n=e.config.SecurityID,r=t.id,o=e.assetAdmin.previewField[r]||{},i=(0,u.formValueSelector)(t.formid,p.default),{bustCache:s}=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{securityID:n,upload:o,nameValue:i(e,"Name"),bustCache:s}}),(function(e){return{actions:{previewField:(0,l.bindActionCreators)(d,e)}}}))(E);t.default=_},4678:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7363)),o=a(n(7086)),i=n(8127),s=a(n(4754));function a(e){return e&&e.__esModule?e:{default:e}}function l(){return l=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{onSelect:t,currentWidth:n,originalWidth:o,width:a,text:l}=e;return r.default.createElement(i.Button,{color:"link",size:"sm",onClick:()=>t(a||o),disabled:os.default.inject(s.default._t("AssetAdmin.SET_IMAGE_SIZE_TO",'Set image size to "{preset}"'),{preset:e}))(l)),r.default.createElement("span",{"aria-hidden":"true"},l))},d=e=>{let{imageSizePresets:t,...n}=e;return t?r.default.createElement("ul",{className:"image-size-preset-list"},t.map((e=>r.default.createElement("li",{key:e.text,className:"image-size-preset-list__list-item"},r.default.createElement(u,l({},e,n)))))):null};d.propTypes={onSelect:o.default.func,imageSizePresets:o.default.arrayOf(o.default.shape({text:o.default.string,width:o.default.number})),currentWidth:o.default.number,originalWidth:o.default.number.isRequired};var c=d;t.default=c},8278:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=p(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=c(n(7086)),i=n(6648),s=c(n(4678)),a=n(5762),l=c(n(720)),u=n(1624),d=n(2827);function c(e){return e&&e.__esModule?e:{default:e}}function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(p=function(e){return e?n:t})(e)}function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&this.syncFields(e,r)}syncFields(e,t){const{children:n,active:r,onAutofill:o,data:{ratio:i}}=this.props,s=0===e?1:0,a=n[e].props.name,l=n[s].props.name,u=0===e?1/i:i;o(a,t),r&&o(l,Math.round(t*u))}handlePresetSelect(e){this.syncFields(0,e);const{key:t}=this.props.children[0],n=document.getElementById(t);n&&n.focus()}handleBlur(e,t){this.setState({hasFocus:!1});const n=parseInt(t&&t.target&&t.target.value,10);(!n||n<=0)&&(t.preventDefault(),this.resetDimensions())}handleFocus(){this.setState({hasFocus:!0})}defaultWidth(){const{imageSizePresets:e,data:{originalWidth:t}}=this.props,n=e&&e.find((e=>e.default)),r=n&&n.width||t||600;return t&&t(0,r.cloneElement)(e,{onChange:(e,n)=>this.handleChange(t,e,n),onBlur:e=>this.handleBlur(t,e),onFocus:()=>this.handleFocus(),key:t},e.props.children))),!n&&r.default.createElement(s.default,{originalWidth:parseInt(t,10),currentWidth:o,imageSizePresets:i,onSelect:this.handlePresetSelect})))}}t.Component=h,h.propTypes={children:o.default.array,onAutofill:o.default.func,active:o.default.bool,data:o.default.shape({ratio:o.default.number.isRequired,isRemoteFile:o.default.bool,originalWidth:o.default.number,originalHeight:o.default.number}),current:o.default.shape({width:o.default.oneOfType([o.default.number,o.default.string]),height:o.default.oneOfType([o.default.number,o.default.string])}).isRequired,FieldGroup:o.default.elementType.isRequired,imageSizePresets:o.default.arrayOf(o.default.shape({width:o.default.number,text:o.default.string,default:o.default.bool}))},h.defaultProps={active:!0};var m=(0,d.compose)((0,u.connect)((function(e,t){let{formid:n}=t;const r=(0,a.formValueSelector)(n,l.default),o=r(e,"Width"),i=r(e,"Height");return{current:{width:o?parseInt(o,10):void 0,heigth:i?parseInt(i,10):void 0},imageSizePresets:e.assetAdmin.modal.imageSizePresets}})),(0,i.inject)(["FieldGroup"]))(h);t.default=m},6334:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ConnectedUploadField=t.Component=void 0;var r=v(n(4754)),o=y(n(7363)),i=n(1624),s=n(2827),a=n(6648),l=v(n(8264)),u=v(n(1042)),d=v(n(4744)),c=v(n(1338)),p=y(n(4504)),f=y(n(4478)),h=v(n(7086)),m=v(n(8214));function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}class b extends o.Component{constructor(e){super(e),this.getMaxFiles=this.getMaxFiles.bind(this),this.getFolderId=this.getFolderId.bind(this),this.renderChild=this.renderChild.bind(this),this.handleAddShow=this.handleAddShow.bind(this),this.handleHide=this.handleHide.bind(this),this.handleAddInsert=this.handleAddInsert.bind(this),this.handleInsertMany=this.handleInsertMany.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handleSending=this.handleSending.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleItemRemove=this.handleItemRemove.bind(this),this.handleReplaceShow=this.handleReplaceShow.bind(this),this.handleChange=this.handleChange.bind(this),this.handleReplace=this.handleReplace.bind(this),this.canEdit=this.canEdit.bind(this),this.canAttach=this.canAttach.bind(this),this.canUpload=this.canUpload.bind(this),this.state={selecting:!1,selectingItem:null}}componentDidMount(){const{id:e,formSchemaFilesHash:t,data:n,value:r,actions:o,files:i}=this.props,s=(0,m.default)(JSON.stringify(r.Files)).toString();if(t!==s)return o.uploadField.setFormSchemaFilesHash(e,s),void o.uploadField.setFiles(e,n.files);o.uploadField.setFiles(e,i)}componentWillReceiveProps(e){(function(e,t){if(e.length!==t.length)return!0;for(let n=0;n!u.includes(e))).length)return;const d=o.map((e=>e.id));d.length===i.length&&0===d.filter((e=>!i.includes(e))).length||a(t,r.files)}getMaxFiles(){const e=this.props.data.multi?this.props.data.maxFiles:1;if(null==e)return null;const t=this.props.files.filter((e=>e.id>0&&(!e.message||"error"!==e.message.type))).length;return Math.max(e-t,0)}getMaxFilesize(){return this.props.data.maxFilesize||null}getFolderId(){const{selectingItem:e}=this.state;return e&&"object"==typeof e?e.parent.id:this.props.data.parentid||0}handleAddedFile(e){const t={...e,uploaded:!0};this.props.actions.uploadField.addFile(this.props.id,t)}handleSending(e,t){this.props.actions.uploadField.updateQueuedFile(this.props.id,e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.uploadField.updateQueuedFile(this.props.id,e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);void 0===t[0].error?this.props.actions.uploadField.succeedUpload(this.props.id,e._queuedId,t[0]):this.handleFailedUpload(e)}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,c.default)(e.xhr.status):"";this.props.actions.uploadField.failUpload(this.props.id,e._queuedId,t,n)}handleItemRemove(e,t){this.props.actions.uploadField.removeFile(this.props.id,t)}handleReplaceShow(e,t){this.props.actions.modal.initFormStack("select","admin"),this.setState({selecting:!0,selectingItem:t})}handleChange(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.props;if("function"==typeof t.onChange){const n={Files:t.files.filter((e=>e.id)).map((e=>e.id))};t.onChange(e,{id:t.id,value:n})}}handleUploadButton(e){e.preventDefault()}handleAddShow(e){e.preventDefault(),this.props.actions.modal.initFormStack("select","admin"),this.setState({selecting:!0,selectingItem:null})}handleHide(){this.props.actions.modal.reset(),this.setState({selecting:!1,selectingItem:null})}handleAddInsert(e,t,n){return this.props.actions.uploadField.addFile(this.props.id,n),this.handleHide(),Promise.resolve({})}handleInsertMany(e,t){const{selectingItem:n}=this.state;n?this.handleReplace(e,null,t[0]):t.forEach((t=>{this.handleAddInsert(e,null,t)}))}handleReplace(e,t,n){const{selectingItem:r}=this.state,{id:o,actions:{uploadField:{addFile:i,removeFile:s}}}=this.props;if(!r)throw new Error("Tried to replace a file when none was selected.");return s(o,r),i(o,n),this.handleHide(),Promise.resolve({})}canEdit(){return!this.props.disabled&&!this.props.readOnly&&(this.props.data.canUpload||this.props.data.canAttach)}canUpload(){return this.canEdit()&&this.props.data.canUpload}canAttach(){return this.canEdit()&&this.props.data.canAttach}renderDropzone(){const{AssetDropzone:e}=this.props;if(!this.props.data.createFileEndpoint)return null;const t={height:l.default.SMALL_THUMBNAIL_HEIGHT,width:l.default.SMALL_THUMBNAIL_WIDTH},n=this.getMaxFiles(),i=this.getMaxFilesize(),s={url:this.props.data.createFileEndpoint.url,method:this.props.data.createFileEndpoint.method,paramName:"Upload",maxFiles:n,maxFilesize:i,thumbnailWidth:l.default.SMALL_THUMBNAIL_WIDTH,thumbnailHeight:l.default.SMALL_THUMBNAIL_HEIGHT},a=["uploadfield__dropzone"];if(0===n&&a.push("uploadfield__dropzone--hidden"),!this.canEdit())return this.props.files.length?null:o.default.createElement("p",null,r.default._t("AssetAdmin.EMPTY","No files"));const u=this.props.securityId,d=[];return this.canUpload()&&d.push(o.default.createElement("button",{key:"uploadbutton",type:"button",onClick:this.handleUploadButton,className:"uploadfield__upload-button"},r.default._t("AssetAdmin.UPLOADFIELD_UPLOAD_NEW","Upload new"))),this.canAttach()&&(d.length&&d.push(o.default.createElement("span",{key:"uploadjoin",className:"uploadfield__join"},r.default._t("AssetAdmin.OR","or"))),d.push(o.default.createElement("button",{key:"attachbutton",type:"button",onClick:this.handleAddShow,className:"uploadfield__add-button"},r.default._t("AssetAdmin.UPLOADFIELD_CHOOSE_EXISTING","Choose existing")))),o.default.createElement(e,{name:this.props.name,canUpload:this.canUpload(),uploadButton:!1,uploadSelector:".uploadfield__upload-button, .uploadfield__backdrop",folderId:this.props.data.parentid,onAddedFile:this.handleAddedFile,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:t,options:s,securityID:u,className:a.join(" ")},o.default.createElement("div",{className:"uploadfield__backdrop"}),o.default.createElement("span",{className:"uploadfield__droptext"},d))}renderModal(){const{InsertMediaModal:e}=this.props,{selecting:t,selectingItem:n}=this.state,r=this.getMaxFiles(),i=this.getFolderId();return o.default.createElement(e,{title:!1,isOpen:t,onInsert:n?this.handleReplace:this.handleAddInsert,onClosed:this.handleHide,onInsertMany:this.handleInsertMany,maxFiles:n?1:r,type:"select",bodyClassName:"modal__dialog",className:"insert-media-react__dialog-wrapper",fileAttributes:n?{ID:n.id}:null,folderId:i})}renderChild(e,t){const{UploadFieldItem:n}=this.props,r={key:e.id?`file-${e.id}`:`queued-${e.queuedId}`,item:e,name:this.props.name,onRemove:this.handleItemRemove,canEdit:this.canEdit(),onView:this.handleReplaceShow},i=this.props.getItemProps(r,t,this.props);return o.default.createElement(n,i)}render(){return o.default.createElement("div",{className:"uploadfield"},this.renderDropzone(),this.props.files.map(this.renderChild),this.renderModal())}}t.Component=b,b.propTypes={id:h.default.string.isRequired,name:h.default.string.isRequired,onChange:h.default.func,value:h.default.shape({Files:h.default.arrayOf(h.default.number)}),files:h.default.arrayOf(d.default),formSchemaFilesHash:h.default.string,readOnly:h.default.bool,disabled:h.default.bool,data:h.default.shape({files:h.default.arrayOf(d.default),createFileEndpoint:h.default.shape({url:h.default.string.isRequired,method:h.default.string.isRequired,payloadFormat:h.default.string.isRequired}),multi:h.default.bool,parentid:h.default.number,canUpload:h.default.bool,canAttach:h.default.bool,maxFiles:h.default.number}),UploadFieldItem:h.default.elementType,AssetDropzone:h.default.elementType,InsertMediaModal:h.default.elementType,getItemProps:h.default.func},b.defaultProps={value:{Files:[]},className:"",getItemProps:e=>e};const E=(0,i.connect)((function(e,t){const n=t.id;let r=[],o=null;return e.assetAdmin&&e.assetAdmin.uploadField&&e.assetAdmin.uploadField.fields&&e.assetAdmin.uploadField.fields[n]&&(r=e.assetAdmin.uploadField.fields[n].files||[],o=e.assetAdmin.uploadField.fields[n].formSchemaFilesHash||null),{files:r,securityId:e.config.SecurityID,formSchemaFilesHash:o}}),(function(e){return{actions:{uploadField:(0,s.bindActionCreators)(p,e),modal:(0,s.bindActionCreators)(f,e)}}}))(b);t.ConnectedUploadField=E;var _=(0,s.compose)((0,a.inject)(["UploadFieldItem","AssetDropzone","InsertMediaModal"]),u.default)(E);t.default=_},614:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=c(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=c(n(8264)),s=c(n(4744)),a=n(3069),l=c(n(7086)),u=c(n(9777));function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}function c(e){return e&&e.__esModule?e:{default:e}}class p extends o.Component{constructor(e){super(e),this.handleRemove=this.handleRemove.bind(this),this.handleItemClick=this.handleItemClick.bind(this),this.handleView=this.handleView.bind(this)}getThumbnailStyles(){if(this.isImage()&&(this.exists()||this.uploading())){return{backgroundImage:`url(${this.props.item.smallThumbnail||this.props.item.url||""})`}}return{}}getThumbnailClassNames(){const e=["uploadfield-item__thumbnail"];return this.isImageSmallerThanThumbnail()&&e.push("uploadfield-item__thumbnail--small"),e.join(" ")}getItemClassNames(){const e=["fill-width","uploadfield-item",`uploadfield-item--${this.props.item.category||"none"}`];return this.missing()&&e.push("uploadfield-item--missing"),this.hasError()&&e.push("uploadfield-item--error"),e.join(" ")}hasError(){return!!this.props.item.message&&"error"===this.props.item.message.type}isImage(){return"image"===this.props.item.category}exists(){return this.props.item.exists}uploading(){return this.props.item.queuedId&&!this.saved()}complete(){return this.props.item.queuedId&&this.saved()}saved(){return this.props.item.id>0}missing(){return!this.exists()&&this.saved()}isImageSmallerThanThumbnail(){if(!this.isImage()||this.missing())return!1;const e=this.props.item.width,t=this.props.item.height;return t&&e&&te.every((e=>e&&e.canDelete))},{value:"edit",label:o.default._t("AssetAdmin.BULK_ACTIONS_EDIT","Edit"),className:"font-icon-edit",destructive:!1,canApply:e=>1===e.length,callback:null},{value:"move",label:o.default._t("AssetAdmin.BULK_ACTIONS_MOVE","Move"),className:"font-icon-folder-move",canApply:e=>e.every((e=>e&&e.canEdit)),destructive:!1,callback:null},{value:"publish",label:o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH","Publish"),className:"font-icon-rocket",destructive:!1,callback:null,canApply:e=>e.some((e=>e&&e.modified))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"unpublish",label:o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH","Unpublish"),className:"font-icon-cancel-circled",destructive:!1,callback:null,canApply:e=>e.some((e=>e.published))&&e.every((e=>e.canEdit&&"folder"!==e.type)),confirm:null},{value:"insert",label:o.default._t("AssetAdmin.BULK_ACTIONS_INSERT","Insert"),className:"font-icon-plus-circled btn-primary",destructive:!1,callback:null,canApply:e=>e.length,confirm:null}],BULK_ACTIONS_PLACEHOLDER:o.default._t("AssetAdmin.BULK_ACTIONS_PLACEHOLDER"),SPACE_KEY_CODE:32,RETURN_KEY_CODE:13,DEFAULT_PREVIEW:"framework/client/dist/images/app_icons/generic_92.png",MODAL_MOVE:"MODAL_MOVE"};t.default=i},7056:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=M(n(7363)),o=D(n(7086)),i=n(1624),s=n(2827),a=D(n(5159)),l=D(n(4754)),u=D(n(7820)),d=M(n(3669)),c=M(n(5123)),p=M(n(2986)),f=M(n(469)),h=D(n(2234)),m=D(n(4288)),g=D(n(6071)),y=n(7588),v=M(n(1075)),b=D(n(6635)),E=D(n(8493)),_=D(n(168)),C=D(n(6307)),S=D(n(8264)),w=D(n(9900)),F=n(6648),O=M(n(9194)),I=D(n(6019)),A=D(n(7882)),x=D(n(5809));function D(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(P=function(e){return e?n:t})(e)}function M(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=P(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}class R extends r.Component{constructor(e){super(e),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleCloseFile=this.handleCloseFile.bind(this),this.handleDelete=this.handleDelete.bind(this),this.doPublish=this.doPublish.bind(this),this.doUnpublish=this.doUnpublish.bind(this),this.handleUnpublish=this.handleUnpublish.bind(this),this.handleDoSearch=this.handleDoSearch.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleSubmitEditor=this.handleSubmitEditor.bind(this),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.createEndpoint=this.createEndpoint.bind(this),this.handleBackButtonClick=this.handleBackButtonClick.bind(this),this.handleFolderIcon=this.handleFolderIcon.bind(this),this.handleBrowse=this.handleBrowse.bind(this),this.handleViewChange=this.handleViewChange.bind(this),this.handleUpload=this.handleUpload.bind(this),this.handleUploadQueue=this.handleUploadQueue.bind(this),this.handleCreateFolder=this.handleCreateFolder.bind(this),this.handleMoveFilesSuccess=this.handleMoveFilesSuccess.bind(this)}componentWillReceiveProps(e){"function"==typeof e.onReplaceUrl&&!e.loading&&e.folder&&e.folderId!==e.folder.id&&e.onReplaceUrl(e.folder.id,e.fileId,e.query,e.viewAction)}getFolderId(){return null!==this.props.folderId?this.props.folderId:this.props.folder?this.props.folder.id:0}getFiles(){const{files:e,queuedFiles:t,folderId:n}=this.props,r=[...t.items.filter((t=>!(t.id&&e.find((e=>e.id===t.id))||t.hasOwnProperty("uploadedToFolderId")&&t.uploadedToFolderId!==n))),...e],o=r.filter((e=>"folder"===e.type)),i=r.filter((e=>"folder"!==e.type));return o.concat(i)}handleBrowse(e,t,n){"function"==typeof this.props.onBrowse&&this.props.onBrowse(e,t,n),e!==this.getFolderId()&&this.props.actions.gallery.deselectFiles()}handleSetPage(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{page:e}))}handleDoSearch(e){this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleBrowse(e.currentFolderOnly?this.getFolderId():0,null,{filter:e,view:this.props.query.view})}handleClearSearch(e){this.props.actions.displaySearch.closeSearch(),this.props.actions.gallery.deselectFiles(),this.props.actions.queuedFiles.purgeUploadQueue(),this.props.actions.files.readFiles(),this.handleOpenFolder(e,this.props.folder)}handleSort(e){this.handleBrowse(this.getFolderId(),this.props.fileId,{...this.props.query,sort:e,limit:void 0,page:void 0})}handleViewChange(e){this.handleBrowse(this.getFolderId(),this.props.fileId,Object.assign({},this.props.query,{view:e}))}createEndpoint(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return a.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:this.props.securityId}}:{}))}handleBackButtonClick(e){e.preventDefault(),this.props.actions.gallery.deselectFiles(),this.props.folder?this.handleOpenFolder(this.props.folder.parentId||0):this.handleOpenFolder(0)}resetFile(e){e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId),this.props.fileId===e.id&&this.props.resetFileDetails(this.getFolderId(),e.id,this.props.query)}handleFolderIcon(){this.handleOpenFile(this.getFolderId())}handleOpenFile(e){this.handleBrowse(this.getFolderId(),e,this.props.query)}handleSubmitEditor(e,t,n){let r=null;if("action_insert"===t&&"select"===this.props.type){const t=this.getFiles().find((t=>t.id===parseInt(e.ID,10)));return this.props.onInsertMany(null,[t]),Promise.resolve()}if("function"==typeof this.props.onSubmitEditor){const o=this.findFile(this.props.fileId);r=this.props.onSubmitEditor(e,t,n,o)}else r=n();if(!r)throw new Error("Promise was not returned for submitting");return r.then((e=>("action_createfolder"===t&&"admin"===this.props.type&&this.handleOpenFile(e.record.id),this.props.actions.files.readFiles().then((()=>("action_createfolder"===t&&"admin"!==this.props.type&&this.handleOpenFolder(this.getFolderId()),e))))))}handleCloseFile(){this.handleBrowse(this.getFolderId(),null,this.props.query)}handleOpenFolder(e){const{page:t,filter:n,...r}=this.props.query;this.handleBrowse(e,null,r)}handleDelete(e){this.props.actions.confirmDeletion.deleting();const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for deletion cannot be found: ${e}`);return t.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(t.queuedId),t})).map((e=>e.id)),n=this.props.folder?this.props.folder.id:0;return this.props.actions.files.deleteFiles(t,n).then((e=>{let{data:{deleteFiles:r}}=e;this.handleBrowse(n,null,this.props.query);return this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.files.readFiles(),r})).then((t=>{const n=t.filter((e=>e)).length;return n!==e.length?this.props.actions.toasts.error(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FAIL","%s folders/files were successfully deleted, but %s files were not able to be deleted."),n,e.length-n)):(this.props.actions.toasts.success(l.default.sprintf(l.default._t("AssetAdmin.BULK_ACTIONS_DELETE_SUCCESS","%s folders/files were successfully deleted."),n)),this.props.actions.gallery.deselectFiles()),t})).finally(this.props.actions.confirmDeletion.reset)}doUnpublish(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for unpublishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot unpublish folders");return t})).map((e=>e.id));return this.props.actions.files.unpublishFiles(n,t).then((e=>{let{data:{unpublishFiles:t}}=e;const n=t.filter((e=>"File"===e.__typename)),r=t.filter((e=>"PublicationNotice"===e.__typename&&"HAS_OWNERS"===e.noticeType)),o=n.map((e=>(this.resetFile(e),e))),i=r.slice(0,4),s=r.slice(5),a=i.map((e=>e.message));if(s.length&&a.push(l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_REMAINING","And {count} other file(s)"),{count:s.length})),i.length){const e=[l.default.inject(l.default._t("AssetAdmin.BULK_OWNED_WARNING_HEADING","{count} file(s) are being used by other published content."),{count:r.length}),a.join("\n"),l.default._t("AssetAdmin.BULK_OWNED_WARNING_FOOTER","Unpublishing will only remove files from the published version of the content. They will remain on the draft version. Unpublish anyway?")];if(confirm(e.join("\n\n"))){const e=r.reduce(((e,t)=>e.concat(t.ids)),[]);return this.doUnpublish(e,!0).then((e=>o.concat(e)))}}return o}))}handleUnpublish(e){return this.doUnpublish(e).then((e=>{const{fileId:t}=this.props;this.props.actions.files.readFiles().then((()=>{t&&e.find((e=>e.id===t))&&this.props.resetFileDetails(this.getFolderId(),t,this.props.query)}))}))}doPublish(e){const t=e.map((e=>{const t=this.findFile(e);if(!t)throw new Error(`File selected for publishing cannot be found: ${e}`);if("folder"===t.type)throw new Error("Cannot publish folders");return t})).map((e=>e.id));return this.props.actions.files.publishFiles(t).then((e=>{let{data:{publishFiles:t}}=e;return t.filter((e=>"File"===e.__typename)).map((e=>(this.resetFile(e),e)))}))}findFile(e){return this.getFiles().find((t=>t.id===parseInt(e,10)))}handleUpload(){}handleUploadQueue(){this.props.fileId&&this.props.actions.files.readFiles()}handleCreateFolder(){this.props.onBrowse(this.getFolderId(),null,this.props.query,S.default.ACTIONS.CREATE_FOLDER)}handleMoveFilesSuccess(e,t){this.props.queuedFiles.items.filter((e=>t.includes(e.id))).forEach((e=>{e.queuedId&&this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)})),this.props.actions.gallery.deselectFiles(),this.props.actions.files.readFiles()}renderGallery(){const e=this.props.sectionConfig,t=e.createFileEndpoint.url,n=e.createFileEndpoint.method,o=this.props.query&&parseInt(this.props.query.limit||e.limit,10),i=this.props.query&&parseInt(this.props.query.page||1,10),s=this.props.query&&this.props.query.sort,a=this.props.query&&this.props.query.view,l=this.props.query.filter||{};return r.default.createElement(m.default,{files:this.getFiles(),fileId:this.props.fileId,folderId:this.getFolderId(),folder:this.props.folder,type:this.props.type,limit:o,page:i,totalCount:this.props.filesTotalCount,view:a,filters:l,graphQLErrors:this.props.graphQLErrors,createFileApiUrl:t,createFileApiMethod:n,onInsertMany:this.props.onInsertMany,onPublish:this.doPublish,onUnpublish:this.doUnpublish,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSuccessfulUpload:this.handleUpload,onSuccessfulUploadQueue:this.handleUploadQueue,onCreateFolder:this.handleCreateFolder,onMoveFilesSuccess:this.handleMoveFilesSuccess,onClearSearch:this.handleClearSearch,onSort:this.handleSort,onSetPage:this.handleSetPage,onViewChange:this.handleViewChange,sort:s,sectionConfig:e,loading:this.props.loading,maxFilesSelect:this.props.maxFiles,dialog:this.props.dialog})}renderEditor(){const{sectionConfig:e,viewAction:t,type:n,fileId:o,dialog:i,requireLinkText:s,fileSelected:a}=this.props,{schemaUrl:l,targetId:u}=(0,I.default)({config:e,viewAction:t,folderId:this.getFolderId(),type:n,fileId:o});if(!l)return null;const d=[];s&&d.push({name:"requireLinkText",value:!0}),a&&d.push({name:"fileSelected",value:!0});const c={dialog:i,fileId:u,schemaUrl:l,schemaUrlQueries:d,onClose:this.handleCloseFile,onSubmit:this.handleSubmitEditor,onUnpublish:this.handleUnpublish,addToCampaignSchemaUrl:e.form.addToCampaignForm.schemaUrl};return r.default.createElement(h.default,c)}render(){const{folder:e,folderId:t,query:n,getUrl:o,type:i,maxFiles:s,toolbarChildren:a}=this.props,l=Boolean(t||(0,v.hasFilters)(n.filter)),d=this.props.sectionConfig.form.fileSearchForm.schemaUrl,c=n.filter||{},p=(0,u.default)("fill-height asset-admin","select"===i&&{"asset-admin--single-select":1===s,"asset-admin--multi-select":1!==s}),f=(0,v.hasFilters)(n.filter)||this.props.showSearch,h=this.props.actions.displaySearch?this.props.actions.displaySearch.toggleSearch:void 0,m={folder:e,query:n,getUrl:o,onBrowse:this.handleBrowse,onFolderIcon:this.handleFolderIcon};return r.default.createElement("div",{className:p},r.default.createElement(g.default,{showBackButton:l,onBackButtonClick:this.handleBackButtonClick},r.default.createElement(x.default,m),r.default.createElement("div",{className:"asset-admin__toolbar-extra pull-xs-right fill-width vertical-align-items"},r.default.createElement(b.default,{toggled:f,onToggle:h}),a)),f&&r.default.createElement(v.default,{onSearch:this.handleDoSearch,id:"AssetSearchForm",formSchemaUrl:d,onHide:this.handleClearSearch,displayBehavior:"HIDEABLE",filters:c,name:"name"}),r.default.createElement("div",{className:"flexbox-area-grow fill-width fill-height gallery"},this.renderGallery(),this.renderEditor()),r.default.createElement(A.default,{onConfirm:this.handleDelete}))}}t.Component=R,R.propTypes={dialog:o.default.bool,sectionConfig:w.default,fileId:o.default.number,folderId:o.default.number,resetFileDetails:o.default.func,onBrowse:o.default.func,onReplaceUrl:o.default.func,onInsertMany:o.default.func,graphQLErrors:o.default.arrayOf(o.default.string),getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object}),onSubmitEditor:o.default.func,type:o.default.oneOf(["insert-media","insert-link","select","admin"]),files:o.default.array,queuedFiles:o.default.shape({items:o.default.array.isRequired}),filesTotalCount:o.default.number,folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool}),loading:o.default.bool,actions:o.default.object,maxFiles:o.default.number,fileSelected:o.default.bool},R.defaultProps={type:"admin",query:{sort:"",limit:null,page:0,filter:{}},maxFiles:null};var T=(0,s.compose)((0,i.connect)((function(e,t){const{formSchema:n}=e.assetAdmin.modal;return{securityId:e.config.SecurityID,queuedFiles:e.assetAdmin.queuedFiles,showSearch:e.assetAdmin.displaySearch.isOpen,type:n&&n.type||t.type}}),(function(e){return{actions:{gallery:(0,s.bindActionCreators)(d,e),toasts:(0,s.bindActionCreators)(c,e),displaySearch:(0,s.bindActionCreators)(f,e),queuedFiles:(0,s.bindActionCreators)(p,e),confirmDeletion:(0,s.bindActionCreators)(O,e)}}})),(0,F.injectGraphql)("ReadFilesQuery"),E.default,_.default,C.default,y.withApollo)(R);t.default=T},5809:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(7363)),o=l(n(7086)),i=l(n(4754)),s=n(7803),a=n(1075);function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folder:t,query:n,getUrl:o,onBrowse:l,onFolderIcon:u}=e;const d=function(){for(var e=arguments.length,t=new Array(e),n=0;n{e.preventDefault(),l(...t)}},c=function(){return o&&o(...arguments)},p=[{text:i.default._t("AssetAdmin.FILES","Files"),href:c(0,null,n),onClick:d(0,null,n)}];if(t&&t.id){t.parents&&t.parents.forEach((e=>{p.push({text:e.title,href:c(e.id,null,n),onClick:d(e.id,null,n)})}));const e=[{className:"icon font-icon-edit-list",onClick:e=>{e.preventDefault(),u()}}];t.hasRestrictedAccess&&e.push({nodeName:"FileStatusIcon",hasRestrictedAccess:!0}),p.push({text:t.title,href:c(t.id,null,n),onClick:d(t.id,null,n),icons:e})}return(0,a.hasFilters)(n.filter)&&p.push({text:i.default._t("LeftAndMain.SEARCHRESULTS","Search results")}),r.default.createElement(s.Component,{multiline:!0,crumbs:p})};u.propTypes={onBrowse:o.default.func,onFolderIcon:o.default.func,getUrl:o.default.func,query:o.default.shape({sort:o.default.string,limit:o.default.oneOfType([o.default.number,o.default.string]),page:o.default.oneOfType([o.default.number,o.default.string]),filter:o.default.object,view:o.default.string}),folder:o.default.shape({id:o.default.number,title:o.default.string,parents:o.default.array,parentId:o.default.number,canView:o.default.bool,canEdit:o.default.bool})};var d=u;t.default=d},6290:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0,t.buildUrl=y,t.default=void 0;var r=m(n(7363)),o=n(6188),i=n(1624),s=m(n(7432)),a=f(n(7056)),l=n(3069),u=f(n(7902)),d=f(n(8264)),c=f(n(9900)),p=n(4845);function f(e){return e&&e.__esModule?e:{default:e}}function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(h=function(e){return e?n:t})(e)}function m(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=h(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}const g=Object.keys(d.default.ACTIONS).map((e=>d.default.ACTIONS[e]));function y(e){let{base:t,folderId:n,fileId:r,query:o,action:i}=e;if(i&&-1===g.indexOf(i))throw new Error(`Invalid action provided: ${i}`);let s=null;s=r?(0,p.joinUrlPaths)(t,`show/${n}/${d.default.ACTIONS.EDIT_FILE}/${r}`):n?(0,p.joinUrlPaths)(t,`show/${n}`):t,i===d.default.ACTIONS.CREATE_FOLDER&&(s=(0,p.joinUrlPaths)(t,`show/${n||0}/${i}`));return o&&Object.keys(o).length>0&&(s=`${s}?${u.default.stringify(o)}`),s}class v extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.handleReplaceUrl=this.handleReplaceUrl.bind(this),this.handleResetDetails=this.handleResetDetails.bind(this),this.getUrl=this.getUrl.bind(this)}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:d.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),s=o!==this.getFolderId(),a=Object.assign({},n);return(s||a.page<=1)&&delete a.page,y({base:`/${this.props.sectionConfig.reactRoutePath}`,folderId:o,fileId:i,query:a,action:r})}getFolderId(){return this.props.router.params&&this.props.router.params.folderId?parseInt(this.props.router.params.folderId,10):0}getFileId(){return this.props.router.params&&this.props.router.params.fileId?parseInt(this.props.router.params.fileId,10):0}getViewAction(){return this.props.router.params&&this.props.router.params.viewAction?this.props.router.params.viewAction:d.default.ACTIONS.EDIT_FILE}getSectionProps(){return{sectionConfig:this.props.sectionConfig,type:"admin",folderId:this.getFolderId(),viewAction:this.getViewAction(),fileId:this.getFileId(),query:this.getQuery(),getUrl:this.getUrl,onBrowse:this.handleBrowse,onReplaceUrl:this.handleReplaceUrl,resetFileDetails:this.handleResetDetails}}getQuery(){return(0,l.decodeQuery)(this.props.router.location.search)}handleBrowse(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o)}handleReplaceUrl(e,t,n,r){const o=this.getUrl(e,t,n,r);this.props.router.navigate(o,{replace:!0})}handleResetDetails(e,t,n){const r=this.getUrl(e,t,n),o=this.getUrl(e,null,n);this.props.router.navigate(o,{replace:!0,state:{reset:!0,resetPath:r}})}render(){const e=this.props.router.location.state;return e&&e&&e.reset?r.default.createElement(o.Navigate,{to:e.resetPath,replace:!0}):this.props.sectionConfig?r.default.createElement(a.default,this.getSectionProps()):null}}t.Component=v,v.propTypes={sectionConfig:c.default,router:s.routerPropTypes};var b=(0,s.default)((0,i.connect)((function(e){return{sectionConfig:e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name))}}))(v));t.default=b},1746:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.AssetAdminStateRouter=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=d(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=u(n(7086)),i=n(1624),s=n(6290),a=u(n(8264)),l=n(4478);function u(e){return e&&e.__esModule?e:{default:e}}function d(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(d=function(e){return e?n:t})(e)}const c={folderId:null,fileId:null,query:{},action:a.default.ACTIONS.EDIT_FILE};class p extends r.Component{constructor(e){super(e),this.handleBrowse=this.handleBrowse.bind(this),this.getUrl=this.getUrl.bind(this),this.state=Object.assign({},c,{folderId:e.folderId})}getUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;const o=parseInt(e||0,10),i=parseInt(t||0,10),l=this.getFolderId(),u=o!==l&&null!==l,d=Object.assign({},n);return(u||d.page<=1)&&delete d.page,(0,s.buildUrl)({base:this.props.sectionConfig.reactRoutePath,folderId:o,fileId:i,query:d,action:r})}getFolderId(){return null===this.state.folderId?null:parseInt(this.state.folderId||0,10)}getFileId(){return parseInt(this.state.fileId||this.props.fileId||0,10)}getViewAction(){return this.state.action||a.default.ACTIONS.EDIT_FILE}getSectionProps(){const e=Object.assign({},this.props,{folderId:this.getFolderId(),fileId:this.getFileId(),viewAction:this.getViewAction(),query:this.state.query,getUrl:this.getUrl,onBrowse:this.handleBrowse});return delete e.Component,e}handleBrowse(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:a.default.ACTIONS.EDIT_FILE;if(r&&-1===Object.values(a.default.ACTIONS).indexOf(r))throw new Error(`Invalid action provided: ${r}`);this.state.fileId!==t&&this.props.actions.resetFormStack(),this.setState({folderId:e,fileId:t,query:n,action:r})}render(){const e=this.getSectionProps(),t=this.props.Component;return r.default.createElement(t,e)}}function f(e){return{actions:{resetFormStack:()=>e((0,l.resetFormStack)())}}}t.AssetAdminStateRouter=p,p.propTypes={Component:o.default.elementType,sectionConfig:o.default.shape({url:o.default.string.isRequired}).isRequired,fileId:o.default.number};var h=function(e){return(0,i.connect)((function(t){const n=t.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{Component:e,sectionConfig:n}}),f)(p)};t.default=h},7882:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=v(n(7363)),o=n(2827),i=n(1624),s=v(n(7086)),a=n(7588),l=n(6648),u=y(n(9194)),d=y(n(602)),c=v(n(4754)),p=v(n(4744)),f=v(n(4764)),h=v(n(5482)),m=n(4267);function g(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(g=function(e){return e?n:t})(e)}function y(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=g(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function v(e){return e&&e.__esModule?e:{default:e}}function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{loading:t,LoadingComponent:n,transition:o,files:i,descendantFileCounts:s,onModalClose:a,onCancel:l,onConfirm:u}=e,p=null,g=[{label:c.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"},{label:c.default._t("AssetAdmin.CANCEL","Cancel"),handler:l}];if(t)p=r.default.createElement(n,null);else{const e=Object.keys(s).length,t=(0,m.getFolderDescendantFileTotals)(i,s),n=(0,m.getFileTotalItems)(i),o={folderCount:e,folderDescendantFileTotals:t,fileTotalItems:n};p=r.default.createElement(h.default,o),(t.totalItems||n)&&(g=[{label:c.default._t("AssetAdmin.CANCEL","Cancel"),handler:l,color:"primary"},{label:c.default._t("AssetAdmin.DELETE","Delete"),handler:()=>u(i.map((e=>{let{id:t}=e;return t}))),color:"danger"}])}const y=![d.CANCELING,d.DELETING].includes(o);return r.default.createElement(f.default,{body:p,isOpen:y,actions:g,onCancel:l,onClosed:a})};t.Component=E,E.propTypes={loading:s.default.bool.isRequired,LoadingComponent:s.default.elementType,transition:s.default.oneOf(["canceling","deleting",!1]),files:s.default.arrayOf(p.default),descendantFileCounts:s.default.object,onCancel:s.default.func.isRequired,onModalClose:s.default.func.isRequired,onConfirm:s.default.func.isRequired};const _=(0,o.compose)((0,l.inject)(["Loading"],(e=>({LoadingComponent:e}))),(0,l.injectGraphql)("readDescendantFileCountsQuery"),a.withApollo)(E),C={onCancel:u.cancel,onModalClose:u.modalClose};var S=(0,o.compose)((0,i.connect)((e=>{let{assetAdmin:{confirmDeletion:t}}=e;return t}),C))((e=>{let{showConfirmation:t,files:n,...o}=e;return t&&n.length>0?r.default.createElement(_,b({},o,{files:n})):null}));t.default=S},5482:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=l(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=a(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=l(n(7086)),s=n(4267);function a(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(a=function(e){return e?n:t})(e)}function l(e){return e&&e.__esModule?e:{default:e}}const u=e=>{let{folderCount:t,folderDescendantFileTotals:n,fileTotalItems:i}=e;return o.default.createElement(o.Fragment,null,o.default.createElement("p",null,((e,t,n)=>{const o=t.totalCount+n;return o>0?r.default.sprintf(r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_ITEMS_CONFIRM",["You're about to delete %s file(s) which may be used in your site's content.","Carefully check the file usage on the files before deleting the folder."].join(" ")),o):1===e?r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDER_CONFIRM","Are you sure you want to delete this folder?"):r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_FOLDERS_CONFIRM","Are you sure you want to delete these folders?")})(t,n,i)),(n.totalItems>0||i>0)&&o.default.createElement("p",null,r.default._t("AssetAdmin.BULK_ACTIONS_DELETE_WARNING","Ensure files are removed from content areas prior to deleting them, otherwise they will appear as broken links.")))};u.propTypes={folderCount:i.default.number,folderDescendantFileTotals:s.descendantFileTotalsShape,fileTotalItems:i.default.number},u.defaultProps={folderCount:0,folderDescendantFileTotals:{totalItems:0,totalCount:0},fileTotalItems:0};var d=u;t.default=d},4764:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(4754)),o=a(n(7363)),i=a(n(7086)),s=n(8127);function a(e){return e&&e.__esModule?e:{default:e}}const l=e=>{let{isOpen:t,body:n,onCancel:i,actions:a}=e;return o.default.createElement(s.Modal,{isOpen:t,toggle:i},o.default.createElement(s.ModalHeader,{toggle:i},r.default._t("AssetAdmin.CONFIRM_FILE_DELETION","Confirm deletion")),o.default.createElement(s.ModalBody,null,n),o.default.createElement(s.ModalFooter,null,a.map((e=>{let{label:t,handler:n,color:r}=e;return o.default.createElement(s.Button,{key:t,color:r,onClick:n},t)}))))};l.propTypes={isOpen:i.default.bool.isRequired,body:i.default.node.isRequired,onCancel:i.default.func.isRequired,actions:i.default.arrayOf(i.default.shape({label:i.default.string.isRequired,handler:i.default.func,color:i.default.string}))};var u=l;t.default=u},4267:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFolderDescendantFileTotals=t.getFileTotalItems=t.descendantFileTotalsShape=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};const i=e=>{let{type:t}=e;return"folder"===t},s=e=>!i(e),a={totalItems:0,totalCount:0},l=o.default.shape({totalItems:o.default.number,totalCount:o.default.number});t.descendantFileTotalsShape=l;t.getFolderDescendantFileTotals=(e,t)=>{return e.filter(i).reduce((n=t,(e,t)=>{let{id:r}=t;return n[r]>0?{totalItems:e.totalItems+1,totalCount:e.totalCount+n[r]}:e}),a);var n};t.getFileTotalItems=e=>e.filter(s).length},2234:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=C(n(4754)),o=n(1624),i=n(2827),s=_(n(7363)),a=C(n(8264)),l=C(n(8238)),u=C(n(4912)),d=_(n(5910)),c=C(n(4744)),p=C(n(7086)),f=n(6648),h=_(n(9194)),m=_(n(4478)),g=_(n(1827)),y=C(n(7820)),v=C(n(1872)),b=C(n(7902));function E(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(E=function(e){return e?n:t})(e)}function _(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=E(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function C(e){return e&&e.__esModule?e:{default:e}}function S(){return S=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{name:n,value:r}=t;return{...e,[n]:r}}),{});return v.default.format({...r,pathname:`${r.path}/${n}`,search:b.default.stringify(o)})}handleAction(e){switch(e.currentTarget.name){case"action_addtocampaign":this.openModal(),e.preventDefault();break;case"action_replacefile":this.replaceFile(),e.preventDefault();break;case"action_downloadfile":this.downloadFile(),e.preventDefault();break;case"action_delete":this.props.actions.confirmDeletion.confirm([this.props.file]),e.preventDefault()}}handleCancelKeyDown(e){e.keyCode!==a.default.SPACE_KEY_CODE&&e.keyCode!==a.default.RETURN_KEY_CODE||this.handleClose(e)}handleSubmit(e,t,n){const{showingSubForm:r,actions:o}=this.props;return"function"==typeof this.props.onSubmit?this.props.onSubmit(e,t,n).finally((()=>{r&&-1!==["action_save","action_publish"].indexOf(t)&&o.modal.popFormStackEntry()})):n()}handleClose(e){const{showingSubForm:t,onClose:n,actions:r}=this.props;t?r.modal.popFormStackEntry():(n(),this.closeModal()),e&&e.preventDefault()}openModal(){this.setState({openModal:!0})}closeModal(){this.setState({openModal:!1})}replaceFile(){const e=document.querySelector(".dz-input-PreviewImage");e&&e.click()}downloadFile(){!function(e,t){const n=document.createElement("a");n.download=t,n.href=e,document.body.appendChild(n),n.click(),document.body.removeChild(n)}(this.props.file.url,this.props.file.name),document.getElementById("Form_fileEditForm_PopoverActions").focus()}handleLoadingError(e){this.setState({loadingForm:!1,loadingError:e.errors[0]})}handleLoadingSuccess(){this.setState({loadingForm:!1,loadingError:null})}handleFetchingSchema(){this.setState({loadingForm:!0})}editorHeader(e){let{SchemaComponent:t,...n}=e;const{dialog:r,nextType:o,showingSubForm:i,actions:a,file:l}=this.props,u=this.getFormSchemaUrl();let d=g.buttonStates.SWITCH;r&&l&&"folder"!==l.type&&(d=i?g.buttonStates.ALWAYS_BACK:g.buttonStates.ONLY_BACK);const{formid:c}=n,p=o&&l&&"folder"!==l.type?()=>{a.modal.stashFormValues(c,u),a.modal.pushFormStackEntry(o)}:void 0,f={onCancel:this.handleClose,showButton:d,onDetails:p};return s.default.createElement(g.default,f,s.default.createElement(t,n))}createFn(e,t){if("AssetEditorHeaderFieldGroup"===t.name){const n=this.editorHeader,r={key:t.id,SchemaComponent:e,...t};return s.default.createElement(n,r)}return s.default.createElement(e,S({key:t.id},t))}render(){const e=this.getFormSchemaUrl(),t=`${this.props.addToCampaignSchemaUrl}/${this.props.fileId}`,n=(0,y.default)("panel","form--no-dividers","editor",{"editor--asset-dropzone--disable":!this.props.enableDropzone},this.props.className);let o=null;if(this.state.loadingError){let e=this.state.loadingError.value;404===this.state.loadingError.code&&(e=r.default._t("AssetAdmin.FILE_MISSING","File cannot be found")),e||(e=r.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")),o=s.default.createElement("div",{className:"editor__file-preview-message--file-missing"},e)}const i=r.default._t("Admin.ADD_TO_CAMPAIGN","Add to campaign"),a=this.props.loadingComponent,{file:d}=this.props;return s.default.createElement("div",{className:n},s.default.createElement("div",{className:"editor__details fill-height"},s.default.createElement(l.default,{identifier:"AssetAdmin.EditForm",schemaUrl:e,onSubmit:this.handleSubmit,onAction:this.handleAction,onLoadingSuccess:this.handleLoadingSuccess,onLoadingError:this.handleLoadingError,onFetchingSchema:this.handleFetchingSchema,createFn:this.createFn,file:d}),o,s.default.createElement(u.default,{title:i,identifier:"AssetAdmin.AddToCampaign",isOpen:this.state.openModal,onClosed:this.closeModal,schemaUrl:t,bodyClassName:"modal__dialog",responseClassBad:"modal__response modal__response--error",responseClassGood:"modal__response modal__response--good"}),this.state.loadingForm&&s.default.createElement(a,null)))}}t.Component=w,w.propTypes={file:c.default,className:p.default.string,fileId:p.default.number.isRequired,enableDropzone:p.default.bool,dialog:p.default.bool,onClose:p.default.func.isRequired,onSubmit:p.default.func.isRequired,schemaUrl:p.default.string.isRequired,schemaUrlQueries:p.default.arrayOf(p.default.shape({name:p.default.string,value:p.default.any})),addToCampaignSchemaUrl:p.default.string,actions:p.default.object,showingSubForm:p.default.bool,nextType:p.default.string};var F=(0,i.compose)((0,f.inject)(["Loading"],(e=>({loadingComponent:e})),(()=>"AssetAdmin.Editor")),(0,o.connect)((function(e){let{assetAdmin:{gallery:t,modal:n}}=e;return{enableDropzone:t.enableDropzone,nextType:n.formSchema&&n.formSchema.nextType,showingSubForm:n.formSchemaStack&&n.formSchemaStack.length>1}}),(function(e){return{actions:{unsavedForms:(0,i.bindActionCreators)(d,e),confirmDeletion:(0,i.bindActionCreators)(h,e),modal:(0,i.bindActionCreators)(m,e)}}})),(0,f.injectGraphql)("ReadOneFileQuery"))(w);t.default=F},1827:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.buttonStates=void 0;var r=u(n(7363)),o=u(n(4754)),i=u(n(5017)),s=u(n(5780)),a=u(n(7086)),l=u(n(7820));function u(e){return e&&e.__esModule?e:{default:e}}const d=e=>t=>{t.preventDefault(),e&&e()},c="ALWAYS_BACK",p="ALWAYS_CANCEL",f="SWITCH",h="ONLY_BACK",m="ONLY_CANCEL",g={ALWAYS_BACK:c,ALWAYS_CANCEL:p,SWITCH:f,ONLY_BACK:h,ONLY_CANCEL:m,NONE:"NONE"};t.buttonStates=g;const y=e=>{let{onCancel:t,onDetails:n,showButton:a,children:u}=e;const g=d(t),y=[c,f,h].indexOf(a)>=0,v=[p,f,m].indexOf(a)>=0,b=(0,l.default)("editor-header__back-button","btn--icon-xl",{"editor-header__back-button--md-below":[f,h].indexOf(a)>=0}),E=(0,l.default)("editor-header__cancel-button","btn--icon-xl",{"editor-header__cancel-button--lg-above":[f,m].indexOf(a)>=0});return r.default.createElement("div",{className:"editor-header"},y&&r.default.createElement(s.default,{className:b,onClick:g}),r.default.createElement("div",{className:"editor-header__field"},u),n&&r.default.createElement(i.default,{onClick:d(n),icon:"edit-list",className:"editor-header__edit",outline:!0},o.default._t("AssetAdmin.DETAILS","Details")),v&&r.default.createElement("div",null,r.default.createElement(i.default,{icon:"cancel",className:E,noText:!0,onClick:g},o.default._t("AssetAdmin.CANCEL"))))};y.propTypes={onCancel:a.default.func,onDetails:a.default.func,showButton:a.default.oneOf(Object.keys(g).map((e=>g[e]))),children:a.default.node};var v=y;t.default=v},4288:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.galleryViewPropTypes=t.galleryViewDefaultProps=t.default=t.Component=void 0;var r=D(n(5311)),o=D(n(4754)),i=x(n(7363)),s=D(n(394)),a=n(1624),l=n(2827),u=D(n(1856)),d=D(n(1783)),c=D(n(3298)),p=D(n(8697)),f=D(n(8264)),h=D(n(1971)),m=x(n(3669)),g=x(n(5123)),y=x(n(2986)),v=x(n(9194)),b=D(n(4093)),E=n(7588),_=n(8088),C=D(n(9900)),S=D(n(1338)),w=n(6648),F=D(n(7086)),O=D(n(4065)),I=D(n(35));function A(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(A=function(e){return e?n:t})(e)}function x(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=A(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function D(e){return e&&e.__esModule?e:{default:e}}const P={DELETE:"delete",EDIT:"edit",MOVE:"move",PUBLISH:"publish",UNPUBLISH:"unpublish",INSERT:"insert",ADMIN:"admin",SELECT:"select"};class M extends i.Component{constructor(e){super(e),this.handleOpenFolder=this.handleOpenFolder.bind(this),this.handleOpenFile=this.handleOpenFile.bind(this),this.handleSelect=this.handleSelect.bind(this),this.handleAddedFile=this.handleAddedFile.bind(this),this.handlePreviewLoaded=this.handlePreviewLoaded.bind(this),this.handleCancelUpload=this.handleCancelUpload.bind(this),this.handleRemoveErroredUpload=this.handleRemoveErroredUpload.bind(this),this.handleUploadProgress=this.handleUploadProgress.bind(this),this.handleSending=this.handleSending.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleSuccessfulUpload=this.handleSuccessfulUpload.bind(this),this.handleQueueComplete=this.handleQueueComplete.bind(this),this.handleFailedUpload=this.handleFailedUpload.bind(this),this.handleClearSearch=this.handleClearSearch.bind(this),this.handleEnableDropzone=this.handleEnableDropzone.bind(this),this.handleMoveFiles=this.handleMoveFiles.bind(this),this.handleBulkEdit=this.handleBulkEdit.bind(this),this.handleBulkPublish=this.handleBulkPublish.bind(this),this.handleBulkUnpublish=this.handleBulkUnpublish.bind(this),this.handleBulkMove=this.handleBulkMove.bind(this),this.handleBulkInsert=this.handleBulkInsert.bind(this),this.handleBeginSelection=this.handleBeginSelection.bind(this),this.handleGroupSelect=this.handleGroupSelect.bind(this),this.handleClearSelection=this.handleClearSelection.bind(this),this.toggleSelectConcat=this.toggleSelectConcat.bind(this),this.getSelectableFiles=this.getSelectableFiles.bind(this)}componentDidMount(){this.initSortDropdown(),window.addEventListener("keydown",this.toggleSelectConcat),window.addEventListener("keyup",this.toggleSelectConcat)}componentWillReceiveProps(e){if("tile"!==e.view){this.getSortElement().off("change")}this.props.folderId!==e.folderId&&e.actions.queuedFiles.purgeUploadQueue()}componentDidUpdate(){this.initSortDropdown()}componentWillUnmount(){window.removeEventListener("keydown",this.toggleSelectConcat),window.removeEventListener("keyup",this.toggleSelectConcat)}getSortElement(){return(0,r.default)(s.default.findDOMNode(this)).find(".gallery__sort .dropdown")}getSearchMessage(e){const t=[];e.name&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEKEYWORDS","with keywords '{name}'")),e.lastEditedFrom&&e.lastEditedTo?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDBETWEEN","last edited between '{lastEditedFrom}' and '{lastEditedTo}'")):e.lastEditedFrom?t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDFROM","last edited after '{lastEditedFrom}'")):e.lastEditedTo&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGEEDITEDTO","last edited before '{lastEditedTo}'")),e.appCategory&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGECATEGORY","categorised as '{appCategory}'")),e.currentFolderOnly&&this.props.folder.title&&t.push(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGELIMIT","limited to the folder '{folder}'"));const n=[t.slice(0,-1).join(`${o.default._t("AssetAdmin.JOIN",",")} `),t.slice(-1)].filter((e=>e)).join(` ${o.default._t("AssetAdmin.JOINLAST","and")} `);if(""===n)return"";const r={parts:o.default.inject(n,Object.assign({folder:this.props.folder.title},e,{appCategory:e.appCategory?e.appCategory.toLowerCase():void 0}))};return o.default.inject(o.default._t("AssetAdmin.SEARCHRESULTSMESSAGE","Search results {parts}"),r)}getSelection(e,t){const n=this.getSelectableFiles(),r=[e,t].map((e=>n.findIndex((t=>t.id===e)))).filter((e=>-1!==e)).sort(((e,t)=>e-t));if(2!==r.length)return r.map((e=>n[e].id));const[o,i]=r;return n.filter(((e,t)=>t>=o&&t<=i)).map((e=>e.id))}getSelectableFiles(){const e=this.props.files.filter((e=>e.id));return this.props.type===P.SELECT?e.filter((e=>"folder"!==e.type)):e}handleBulkInsert(e,t){this.props.onInsertMany(e,t)}handleBulkPublish(e,t){const n=t.map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onPublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_PUBLISH_SUCCESS","%s folders/files were successfully published."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}handleBulkUnpublish(e,t){const n=t.filter((e=>e.published)).map((e=>e.id));return n.length?(this.props.actions.gallery.setLoading(!0),this.props.onUnpublish(n).then((e=>{this.props.actions.gallery.setLoading(!1),this.props.actions.toasts.success(o.default.sprintf(o.default._t("AssetAdmin.BULK_ACTIONS_UNPUBLISH_SUCCESS","%s folders/files were successfully unpublished."),e.length)),this.props.actions.gallery.deselectFiles()}))):(this.props.actions.gallery.deselectFiles(),Promise.resolve(!0))}initSortDropdown(){if("tile"===this.props.view){const e=this.getSortElement();e.chosen({allow_single_deselect:!0,disable_search_threshold:20}),e.off("change"),e.on("change",(()=>e.find(":selected")[0].click()))}}handleSort(e){this.props.actions.queuedFiles.purgeUploadQueue(),this.props.onSort(e)}handleSetPage(e){this.props.onSetPage(e)}handleCancelUpload(e){e.xhr.abort(),this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleRemoveErroredUpload(e){this.props.actions.queuedFiles.removeQueuedFile(e.queuedId)}handleAddedFile(e){this.props.actions.queuedFiles.addQueuedFile(e)}handlePreviewLoaded(e,t){this.props.actions.queuedFiles.updateQueuedFile(e.queuedId,t)}handleSending(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{xhr:t})}handleUploadProgress(e,t){this.props.actions.queuedFiles.updateQueuedFile(e._queuedId,{progress:t})}handleSuccessfulUpload(e){const t=JSON.parse(e.xhr.response);if(void 0!==t[0].error)return void this.handleFailedUpload(e);this.props.actions.queuedFiles.succeedUpload(e._queuedId,t[0]),this.props.onSuccessfulUpload&&this.props.onSuccessfulUpload(t);const n=this.props.queuedFiles.items.reduce(((e,t)=>100!==t.progress?e+1:e),0);if(!this.props.fileId&&!this.props.selectedFiles.length&&0===n){const e=t.pop();this.props.onOpenFile(e.id)}}handleQueueComplete(){this.props.onSuccessfulUploadQueue&&this.props.onSuccessfulUploadQueue()}handleFailedUpload(e,t){const n=e.xhr&&e.xhr.status?(0,S.default)(e.xhr.status):"";this.props.actions.queuedFiles.failUpload(e._queuedId,t,n)}itemIsSelected(e){return this.props.selectedFiles.indexOf(e)>-1}toggleSelectConcat(e){this.props.actions.gallery.setConcatenateSelect(this.isConcat(e))}isConcat(e){return e.metaKey||e.ctrlKey||e.shiftKey}itemIsHighlighted(e){return this.props.fileId===e}hasOpenedItem(){return!!this.props.fileId}handleClearSearch(e){this.props.onClearSearch(e)}handleGroupSelect(e,t){const{setSelectedFiles:n,selectFiles:r}=this.props.actions.gallery,o=this.getSelectableFiles(),i=e.filter(((t,n)=>e.indexOf(t)===n&&o.find((e=>e.id===t)))),s=this.props.concatenateSelect||this.isConcat(t);if(null!==this.props.maxFilesSelect){let e=i.length;if(s){e=this.props.selectedFiles.filter((e=>!this.props.selectedFiles.includes(e))).concat(this.props.selectedFiles).length}if(e>=this.props.maxFilesSelect)return}s?r(i):n(i)}handleClearSelection(){this.props.actions.gallery.deselectFiles()}handleBeginSelection(e){let t=e.target;for(;t;){if(t.classList.contains("griddle-footer"))return!1;if(t.classList.contains("gallery__main--selectable"))break;t=t.parentNode}return!0}handleOpenFolder(e,t){e.preventDefault(),this.props.onOpenFolder(t.id)}handleOpenFile(e,t){e.preventDefault(),null!==t.created&&(this.props.selectedFiles.length&&1!==this.props.maxFilesSelect||this.props.type!==P.SELECT||this.handleSelect(e,t),this.props.onOpenFile(t.id,t))}handleSelect(e,t){const n=this.props.maxFilesSelect;let r=this.getSelectableFiles().filter((e=>e.id===t.id)).map((e=>e.id));if(1!==n)if(-1===this.props.selectedFiles.indexOf(t.id)){e.shiftKey&&(r=this.getSelection(this.props.lastSelected,t.id));if(this.props.selectedFiles.filter((e=>!r.includes(e))).concat(r).length>n&&null!==n)return;this.props.actions.gallery.selectFiles(r),this.props.actions.gallery.setLastSelected(t.id)}else this.props.actions.gallery.deselectFiles([t.id]),e.shiftKey&&this.props.actions.gallery.setLastSelected(null);else this.props.actions.gallery.setSelectedFiles(r)}handleEnableDropzone(e){this.props.actions.gallery.setEnableDropzone(e)}handleMoveFiles(e,t){this.props.actions.files.moveFiles(e,t).then((()=>{const n=f.default.MOVE_SUCCESS_DURATION,r=`+${t.length}`;this.props.actions.gallery.setFileBadge(e,r,"success",n),"function"==typeof this.props.onMoveFilesSuccess&&this.props.onMoveFilesSuccess(e,t)})).catch((()=>{this.props.actions.toasts.error(o.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}handleBulkEdit(e,t){this.handleOpenFile(e,t[0])}handleBulkMove(){this.props.actions.gallery.activateModal(f.default.MODAL_MOVE)}renderTransitionBulkActions(){return this.renderBulkActions()}renderBulkActions(){const{type:e,dialog:t,maxFilesSelect:n,files:r,selectedFiles:o}=this.props,s=e===P.SELECT||t?e=>e.value===P.INSERT:e=>e.value!==P.INSERT,a=f.default.BULK_ACTIONS.filter(s).map((e=>{if(e.callback)return e;switch(e.value){case P.DELETE:return{...e,callback:(e,t)=>{this.props.actions.confirmDeletion.confirm(t)},confirm:void 0};case P.EDIT:return{...e,callback:this.handleBulkEdit};case P.MOVE:return{...e,callback:this.handleBulkMove};case P.PUBLISH:return{...e,callback:this.handleBulkPublish};case P.UNPUBLISH:return{...e,callback:this.handleBulkUnpublish};case P.INSERT:return{...e,callback:this.handleBulkInsert,color:"primary"};default:return e}})),l=o.map((e=>r.find((t=>t&&e===t.id)))).filter((e=>e));return l.length>0&&[P.ADMIN,P.SELECT].includes(e)?i.default.createElement(d.default,{actions:a,items:l,total:n,key:l.length>0,container:this.gallery,showCount:1!==n}):null}renderGalleryView(){const e="table"===this.props.view?p.default:c.default,t=this.props.files.map((e=>{const t=this.itemIsSelected(e.id),n=this.itemIsHighlighted(e.id),r=(e.queuedId?`queueId${e.queuedId}`:`id${e.id}`)+(t?"--selected":"");return{...e,selected:t,highlighted:n,key:r}})),{type:n,loading:r,dialog:o,page:s,totalCount:a,limit:l,sort:u,selectedFiles:d,badges:f,maxFilesSelect:h,sectionConfig:m}=this.props,g={selectableItems:n===P.SELECT||n===P.ADMIN&&(!h||h>1),selectableFolders:n!==P.SELECT&&!o,files:t,loading:r,page:s,totalCount:a,limit:l,sort:u,selectedFiles:d,badges:f,onSort:this.handleSort,onSetPage:this.handleSetPage,onOpenFile:this.handleOpenFile,onOpenFolder:this.handleOpenFolder,onSelect:this.handleSelect,onCancelUpload:this.handleCancelUpload,onDropFiles:this.handleMoveFiles,onRemoveErroredUpload:this.handleRemoveErroredUpload,onEnableDropzone:this.handleEnableDropzone,sectionConfig:m,canDrag:n===P.ADMIN,maxFilesSelect:h};return i.default.createElement(e,g)}renderToolbar(){const{GalleryToolbar:e,sort:t,view:n,folder:r,onCreateFolder:o,onOpenFolder:s,onViewChange:a}=this.props,l={onMoveFiles:this.handleMoveFiles,onSort:this.handleSort,onCreateFolder:o,onOpenFolder:s,onViewChange:a,view:n,sort:t,folder:r};return i.default.createElement(e,l)}render(){const{folder:e,loading:t,errorMessage:n,graphQLErrors:r,noticeMessage:s}=this.props,a=this.props.LoadingComponent,l=r&&r.length>0;if(!e)return n||l?i.default.createElement("div",{className:"gallery__error flexbox-area-grow"},i.default.createElement("div",{className:"gallery__error-message"},i.default.createElement("h3",null,o.default._t("AssetAdmin.DROPZONE_RESPONSE_ERROR","Server responded with an error.")),n&&i.default.createElement("p",null,n),l&&r.map(((e,t)=>i.default.createElement("p",{key:t},e))))):t?i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement(a,null)):i.default.createElement("div",{className:"flexbox-area-grow"},i.default.createElement("div",{className:"editor__file-preview-message--file-missing m-t-3"},o.default._t("Admin.UNKNOWN_ERROR","An unknown error has occurred")));const d=i.default.createElement("div",{className:"gallery_messages"},n&&i.default.createElement(h.default,{value:n,type:"danger"}),s&&i.default.createElement(h.default,{value:s,type:"success"})),c={height:f.default.THUMBNAIL_HEIGHT,width:f.default.THUMBNAIL_WIDTH},p={url:this.props.createFileApiUrl,method:this.props.createFileApiMethod,paramName:"Upload",clickable:"#upload-button",...this.props.sectionConfig.dropzoneOptions},m=this.props.securityId,g=this.props.folder.canEdit&&this.props.enableDropzone,y=["panel","panel--padded","panel--scrollable","gallery__main","fill-height"];this.props.type===P.INSERT&&y.push("insert-media-modal__main");const v=y;return this.hasOpenedItem()&&v.push("gallery__main--has-opened-item"),i.default.createElement("div",{className:"flexbox-area-grow gallery__outer",ref:e=>{this.gallery=e}},this.renderTransitionBulkActions(),i.default.createElement(I.default,{className:y.join(" ")},this.renderToolbar(),i.default.createElement(_.SelectableGroup,{enabled:"tile"===this.props.view&&this.props.type===P.ADMIN,className:"flexbox-area-grow fill-height gallery__main--selectable",onSelection:this.handleGroupSelect,onNonItemClick:this.handleClearSelection,onBeginSelection:this.handleBeginSelection,preventDefault:!1,fixedPosition:!0},i.default.createElement(u.default,{name:"gallery-container",className:"flexbox-area-grow",canUpload:g,onAddedFile:this.handleAddedFile,onPreviewLoaded:this.handlePreviewLoaded,onError:this.handleFailedUpload,onSuccess:this.handleSuccessfulUpload,onQueueComplete:this.handleQueueComplete,onSending:this.handleSending,onUploadProgress:this.handleUploadProgress,preview:c,folderId:this.props.folderId,options:p,securityID:m,uploadButton:!1},d,this.renderGalleryView()))),this.props.loading&&i.default.createElement(a,null),i.default.createElement(O.default,{sectionConfig:this.props.sectionConfig,folderId:this.props.folderId,onSuccess:this.props.onMoveFilesSuccess,onOpenFolder:this.props.onOpenFolder}))}}t.Component=M;const R={page:1,limit:15},T={sectionConfig:C.default,loading:F.default.bool,sort:F.default.string,files:F.default.arrayOf(F.default.shape({id:F.default.number,parent:F.default.shape({id:F.default.number})})).isRequired,selectedFiles:F.default.arrayOf(F.default.number),totalCount:F.default.number,page:F.default.number,limit:F.default.number,badges:F.default.arrayOf(F.default.shape({id:F.default.number,message:F.default.node,status:F.default.string})),onOpenFile:F.default.func.isRequired,onOpenFolder:F.default.func.isRequired,onSort:F.default.func.isRequired,onSetPage:F.default.func.isRequired,maxFilesSelect:F.default.number},N=Object.assign({},R,{selectableItems:!1});t.galleryViewDefaultProps=N;const j=Object.assign({},T,{selectableItems:F.default.bool,selectableFolders:F.default.bool,onSelect:F.default.func,onCancelUpload:F.default.func,onRemoveErroredUpload:F.default.func,onEnableDropzone:F.default.func});t.galleryViewPropTypes=j,M.defaultProps=Object.assign({},R,{type:P.ADMIN,view:"tile",enableDropzone:!0,dialog:!1}),M.propTypes=Object.assign({},T,{onSuccessfulUpload:F.default.func,onSuccessfulUploadQueue:F.default.func,onCreateFolder:F.default.func,onMoveFilesSuccess:F.default.func,onPublish:F.default.func,onUnpublish:F.default.func,type:F.default.oneOf(["insert-media","insert-link",P.SELECT,P.ADMIN]),view:F.default.oneOf(["tile","table"]),lastSelected:F.default.number,dialog:F.default.bool,fileId:F.default.number,folderId:F.default.number.isRequired,folder:F.default.shape({id:F.default.number,title:F.default.string,parentId:F.default.number,canView:F.default.bool,canEdit:F.default.bool}),files:F.default.array,errorMessage:F.default.string,graphQLErrors:F.default.arrayOf(F.default.string),actions:F.default.object,securityId:F.default.string,onViewChange:F.default.func.isRequired,createFileApiUrl:F.default.string,createFileApiMethod:F.default.string,search:F.default.object,enableDropzone:F.default.bool,concatenateSelect:F.default.bool,GalleryToolbar:F.default.elementType,sorters:F.default.arrayOf(F.default.shape({field:F.default.string.isRequired,direction:F.default.oneOf(["asc","desc"]).isRequired,label:F.default.string.isRequired})).isRequired});var k=(0,l.compose)((0,w.inject)(["GalleryToolbar","Loading"],((e,t)=>({GalleryToolbar:e,LoadingComponent:t})),(()=>"AssetAdmin.Gallery")),(0,a.connect)((function(e,t){let{sort:n}=t;const{selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:u,sorters:d,lastSelected:c}=e.assetAdmin.gallery;return!n&&d&&d[0]&&(n=`${d[0].field},${d[0].direction}`),{lastSelected:c,selectedFiles:r,errorMessage:o,noticeMessage:i,enableDropzone:s,badges:a,concatenateSelect:l,loading:t.loading||u,queuedFiles:e.assetAdmin.queuedFiles,securityId:e.config.SecurityID,sorters:d,sort:n}}),(function(e){return{actions:{gallery:(0,l.bindActionCreators)(m,e),toasts:(0,l.bindActionCreators)(g,e),queuedFiles:(0,l.bindActionCreators)(y,e),confirmDeletion:(0,l.bindActionCreators)(v,e)}}})),b.default,(e=>(0,E.withApollo)(e)))(M);t.default=k},35:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=l(n(7820)),i=l(n(5710)),s=l(n(7086)),a=l(n(7431));function l(e){return e&&e.__esModule?e:{default:e}}function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}class d extends r.Component{constructor(e){super(e),this.state={dragging:!1},this.mounted=!1,this.handleDrop=this.handleDrop.bind(this)}componentDidMount(){this.mounted=!0,window.addEventListener("drop",this.handleDrop,!0)}componentWillUpdate(){setTimeout((()=>{if(!this.mounted||!this.context.dragDropManager)return;const e=this.context.dragDropManager.monitor.isDragging();this.state.dragging!==e&&this.setState({dragging:e})}))}componentWillUnmount(){this.mounted=!1,window.removeEventListener("drop",this.handleDrop,!0)}handleDrop(){const e=this.context.dragDropManager,t=e&&e.backend;t&&t.isDraggingNativeItem()&&t.endDragNativeItem()}render(){const{className:e,children:t}=this.props;return r.default.createElement("div",{className:(0,o.default)(e,{"gallery__main--dragging":this.state.dragging})},t,r.default.createElement(i.default,null))}}d.contextTypes={dragDropManager:s.default.object},d.propTypes={className:s.default.string,children:s.default.oneOfType([s.default.arrayOf(s.default.node),s.default.node])};var c=(0,a.default)(d);t.default=c},7390:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=o?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=(r=n(7086))&&r.__esModule?r:{default:r};function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}class a extends o.Component{constructor(e){super(e),this.handleClick=this.handleClick.bind(this)}handleClick(e){e.preventDefault(),"function"==typeof this.props.onClick&&this.props.onClick(this.props.versionid)}render(){let e=null;return"Published"===this.props.status&&(e=o.default.createElement("p",null,o.default.createElement("span",{className:"history-item__status-flag"},this.props.status)," at ",this.props.date_formatted)),o.default.createElement("li",{className:"list-group-item history-item",onClick:this.handleClick},o.default.createElement("p",null,o.default.createElement("span",{className:"history-item__version"},"v.",this.props.versionid),o.default.createElement("span",{className:"history-item__date"},this.props.date_ago," ",this.props.author),this.props.summary),e)}}a.propTypes={versionid:i.default.number.isRequired,summary:i.default.oneOfType([i.default.bool,i.default.string]).isRequired,status:i.default.string,author:i.default.string,date_formatted:i.default.string,date_ago:i.default.string,onClick:i.default.func};var l=a;t.default=l},1204:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=c(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=n(1624),i=d(n(5159)),s=d(n(4510)),a=d(n(7390)),l=d(n(8238)),u=d(n(7086));function d(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(c=function(e){return e?n:t})(e)}function p(){return p=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&void 0!==arguments[1])||arguments[1];return i.default.createEndpointFetcher(Object.assign({},e,t?{defaultData:{SecurityID:s.default.get("SecurityID")}}:{}))}(e.sectionConfig.historyEndpoint)}componentDidMount(){this.refreshHistoryIfNeeded()}componentWillReceiveProps(e){this.refreshHistoryIfNeeded(e)}componentWillUnmount(){clearTimeout(this.timer),this.timer=null}refreshHistoryIfNeeded(e){if(!e&&!this.state.loadedDetails||e.data.fileId!==this.props.data.fileId||e.data.latestVersionId!==this.props.data.latestVersionId){this.setState({loadedDetails:!1});const t=e?e.data.fileId:this.props.data.fileId;clearTimeout(this.timer),this.timer=setTimeout((()=>{this.api({fileId:t}).then((e=>{this.timer&&this.setState({history:e,loadedDetails:!0})}))}),250)}}handleClick(e){this.setState({viewDetails:e})}handleBack(e){e.preventDefault(),this.setState({viewDetails:null})}render(){if(!this.state.loadedDetails)return r.default.createElement("div",{className:"history-list history-list--loading"},"Loading...");if(this.state.viewDetails){const e=[this.props.historySchemaUrl,this.props.data.fileId,this.state.viewDetails].join("/"),t=["btn","btn-secondary","btn--icon-xl","btn--no-text","font-icon-left-open-big","history-list__back"].join(" ");return r.default.createElement("div",{className:"history-list"},r.default.createElement("a",{href:"#",className:t,onClick:this.handleBack}),r.default.createElement(l.default,{identifier:"AssetAdmin.HistoryList",schemaUrl:e,formTag:"div"}))}const e=this.state.history||[];return r.default.createElement("div",{className:"history-list"},r.default.createElement("ul",{className:"list-group list-group-flush history-list__list"},e.map((e=>r.default.createElement(a.default,p({key:e.versionid},e,{onClick:this.handleClick}))))))}}t.Component=f,f.propTypes={sectionConfig:u.default.shape({form:u.default.object,historyEndpoint:u.default.shape({url:u.default.string,method:u.default.string,responseFormat:u.default.string})}),historySchemaUrl:u.default.string,data:u.default.object},f.defaultProps={data:{fieldId:0}};var h=(0,o.connect)((function(e){const t=e.config.sections.find((e=>"SilverStripe\\AssetAdmin\\Controller\\AssetAdmin"===e.name));return{sectionConfig:t,historySchemaUrl:t.form.fileHistoryForm.schemaUrl}}))(f);t.default=h},2896:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=b(n(4754)),o=v(n(7363)),i=n(2827),s=n(1624),a=b(n(7056)),l=b(n(1746)),u=b(n(6513)),d=v(n(3669)),c=v(n(4478)),p=b(n(4912)),f=b(n(7820)),h=b(n(7086)),m=b(n(6019)),g=b(n(7902));function y(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(y=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=y(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}function b(e){return e&&e.__esModule?e:{default:e}}class E extends o.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this)}componentDidMount(){const{isOpen:e,onBrowse:t,setOverrides:n,fileAttributes:r,folderId:o}=this.props;e?"function"==typeof n&&r.ID&&(n(this.props),t(o,r.ID)):t(o||0)}componentWillReceiveProps(e){!e.isOpen&&this.props.isOpen&&(e.onBrowse(e.folderId),e.actions.gallery.deselectFiles()),"function"==typeof this.props.setOverrides&&e.isOpen&&!this.props.isOpen&&(this.props.setOverrides(e),e.onBrowse(e.folderId,e.fileAttributes?e.fileAttributes.ID:null))}getSectionProps(){return{...this.props,dialog:!0,toolbarChildren:this.renderToolbarChildren(),onSubmitEditor:this.handleSubmit,onReplaceUrl:this.props.onBrowse}}getModalProps(){const{onHide:e,onInsert:t,sectionConfig:n,schemaUrl:r,className:o,...i}=this.props;return{...i,className:(0,f.default)("insert-media-modal",o),size:"lg",showCloseButton:!1}}handleSubmit(e,t,n,r){return"action_insert"===t?this.props.onInsert(e,r):n()}renderToolbarChildren(){return o.default.createElement("button",{type:"button",className:"close modal__close-button insert-media-modal__close-button",onClick:this.props.onClosed,"aria-label":r.default._t("FormBuilderModal.CLOSE","Close")},o.default.createElement("span",{"aria-hidden":"true"},"×"))}render(){const e=this.getModalProps(),t=this.getSectionProps(),n=this.props.isOpen?o.default.createElement(a.default,t):null;return o.default.createElement(p.default,e,n)}}t.Component=E,E.propTypes={sectionConfig:h.default.shape({url:h.default.string,form:h.default.object}),type:h.default.oneOf(["insert-media","insert-link","select","admin"]),schemaUrl:h.default.string,isOpen:h.default.bool,setOverrides:h.default.func,onInsert:h.default.func.isRequired,fileAttributes:h.default.shape({ID:h.default.number,AltText:h.default.string,Width:h.default.number,Height:h.default.number,Loading:h.default.string,TitleTooltip:h.default.string,Alignment:h.default.string,Description:h.default.string,TargetBlank:h.default.bool}),requireLinkText:h.default.bool,folderId:h.default.number,fileId:h.default.number,viewAction:h.default.string,query:h.default.object,getUrl:h.default.func,onBrowse:h.default.func.isRequired,onClosed:h.default.func,className:h.default.string,actions:h.default.object,maxFiles:h.default.number,fileSelected:h.default.bool},E.defaultProps={className:"",fileAttributes:{},type:"insert-media",folderId:0,maxFiles:1};var _=(0,i.compose)(l.default,(0,s.connect)((function(e,t){const n=t.sectionConfig;if(!n)return{};let r=0;null!==t.folderId?r=t.folderId:t.folder&&(r=t.folder.id);const o=t.fileAttributes?t.fileAttributes.ID:t.fileId,i=e.assetAdmin.modal.formSchema,s={config:n,viewAction:t.viewAction,folderId:r,type:i&&i.type,fileId:o},{schemaUrl:a,targetId:l}=(0,m.default)(s);if(!a)return{};const u={};t.requireLinkText&&(u.requireLinkText=!0),t.fileSelected&&(u.fileSelected=!0);let d=g.default.stringify(u);return d=d?`?${d}`:"",{schemaUrl:`${a}/${l}${d}`,type:i&&i.type}}),(function(e){return{actions:{gallery:(0,i.bindActionCreators)(d,e),modal:(0,i.bindActionCreators)(c,e)}}})),u.default)(E);t.default=_},4065:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=h(n(7363)),o=n(1624),i=n(2827),s=h(n(4754)),a=h(n(8264)),l=h(n(7086)),u=n(3669),d=n(5123),c=h(n(4912)),p=h(n(9900)),f=h(n(4093));function h(e){return e&&e.__esModule?e:{default:e}}class m extends r.default.Component{constructor(e){super(e),this.handleSubmit=this.handleSubmit.bind(this),this.timeout=null}handleSubmit(e){let{FolderID:t}=e;const{moveFiles:n}=this.props.actions.files,{selectedFiles:r,onSuccess:o,onClosed:i,setNotice:l,setError:u,setBadge:d}=this.props;return n(t||0,r).then((e=>{let{data:{moveFiles:{id:n,filename:u}}}=e;"function"==typeof o&&o(t,r),d(n,`${r.length}`,"success",a.default.MOVE_SUCCESS_DURATION),l(s.default.sprintf(s.default._t("AssetAdmin.MOVED_ITEMS_TO","Moved %s item(s) to %s"),r.length,u),[{label:s.default._t("AssetAdmin.GO_TO_FOLDER","Go to folder"),onClick:()=>this.props.onOpenFolder(n)}]),i()})).catch((()=>{u(s.default._t("AssetAdmin.FAILED_MOVE","There was an error moving the selected items."))}))}render(){const{isOpen:e,onClosed:t,title:n,folderId:o,sectionConfig:i}=this.props,{schemaUrl:s}=i.form.moveForm;return r.default.createElement(c.default,{title:n,isOpen:e,onClosed:t,onSubmit:this.handleSubmit,identifier:"AssetAdmin.MoveForm",schemaUrl:`${s}/${o}`})}}m.propTypes={sectionConfig:p.default,folderId:l.default.number.isRequired,isOpen:l.default.bool,onClosed:l.default.func,setNotice:l.default.func,setBadge:l.default.func,setError:l.default.func,title:l.default.string,onSuccess:l.default.func,onOpenFolder:l.default.func.isRequired,selectedFiles:l.default.array.isRequired,actions:l.default.shape({files:l.default.shape({moveFiles:l.default.func})}).isRequired},m.defaultProps={isOpen:!1};var g=(0,i.compose)((0,o.connect)((function(e){const{modal:t,selectedFiles:n}=e.assetAdmin.gallery;return{isOpen:t===a.default.MODAL_MOVE,selectedFiles:n,title:s.default.sprintf(s.default._t("AssetAdmin.MOVE_ITEMS_TO","Move %s item(s) to..."),n.length)}}),(function(e){return{onClosed(){e((0,u.deactivateModal)())},setNotice(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];e((0,d.display)({text:t,type:"success",actions:n}))},setError(t){e((0,d.display)({text:t,type:"error"}))},setBadge(){e((0,u.setFileBadge)(...arguments))}}})),f.default)(m);t.default=g},8697:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),o=p(n(7086)),i=p(n(8345)),s=p(n(4754)),a=p(n(9777)),l=n(4288),u=n(3069),d=n(6648),c=n(2827);function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}class h extends r.Component{constructor(e){super(e),this.getColumns=this.getColumns.bind(this),this.handleSort=this.handleSort.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handleRowClick=this.handleRowClick.bind(this),this.renderSelect=this.renderSelect.bind(this),this.renderTitle=this.renderTitle.bind(this),this.renderStatus=this.renderStatus.bind(this),this.renderNoItemsNotice=this.renderNoItemsNotice.bind(this)}getColumns(){const e=["thumbnail","title","status","size","lastEdited"];return this.props.selectableItems&&e.unshift("selected"),e}getColumnConfig(){return[{columnName:"selected",sortable:!1,displayName:"",cssClassName:"gallery__table-column--select",customComponent:this.renderSelect},{columnName:"thumbnail",sortable:!1,displayName:"",cssClassName:"gallery__table-column--image",customComponent:this.renderThumbnail},{columnName:"title",customCompareFn:()=>0,displayName:s.default._t("File.TITLE","Title"),cssClassName:"gallery__table-column--title",customComponent:this.renderTitle},{columnName:"status",sortable:!1,cssClassName:"sort--disabled",customComponent:this.renderStatus,displayName:s.default._t("File.STATUS","Status")},{columnName:"lastEdited",displayName:s.default._t("File.MODIFIED","Modified"),customComponent:this.renderDate},{columnName:"size",sortable:!1,displayName:s.default._t("File.SIZE","Size"),cssClassName:"sort--disabled",customComponent:this.renderSize}]}getRowMetadata(e){return"gallery__table-row "+(e.highlighted?"gallery__table-row--highlighted":"")}getTableProps(){const[e,t]=this.props.sort.split(",");return{tableClassName:"gallery__table table table-hover",gridClassName:"gallery__main-view--table",rowMetadata:{bodyCssClassName:this.getRowMetadata,key:"key"},sortAscendingComponent:"",sortDescendingComponent:"",useExternal:!0,externalSetPage:this.handleSetPage,externalChangeSort:this.handleSort,externalSetFilter:()=>null,externalSetPageSize:()=>null,externalCurrentPage:this.props.page-1,externalMaxPage:Math.ceil(this.props.totalCount/this.props.limit),externalSortColumn:e,externalSortAscending:"asc"===t,initialSort:e,columns:this.getColumns(),columnMetadata:this.getColumnConfig(),useGriddleStyles:!1,onRowClick:this.handleRowClick,results:this.props.files,customNoDataComponent:this.renderNoItemsNotice}}handleActivate(e,t){"folder"===t.type?this.props.onOpenFolder(e,t):this.props.onOpenFile(e,t)}handleRowClick(e,t){const n=e.props.data;t.currentTarget.classList.contains("gallery__table-column--select")&&(t.stopPropagation(),t.preventDefault(),"function"==typeof this.props.onSelect)?this.props.onSelect(t,n):this.handleActivate(t,n)}handleSort(e,t){const n=t?"asc":"desc";this.props.onSort(`${e},${n}`)}handleSetPage(e){this.props.onSetPage(e+1)}preventFocus(e){e.preventDefault()}renderNoItemsNotice(){return 0!==this.props.files.length||this.props.loading?null:r.default.createElement("p",{className:"gallery__no-item-notice"},s.default._t("AssetAdmin.NOITEMSFOUND"))}renderSize(e){if("folder"===e.rowData.type)return null;const t=(0,u.fileSize)(e.data);return r.default.createElement("span",null,t)}renderStatus(e){let t=[];const n=e.rowData,{VersionedBadge:o}=this.props;return"folder"!==n.type&&(n.draft?t.push({key:"status-draft",status:"draft"}):n.modified&&t.push({key:"status-modified",status:"modified"})),t=t.map((e=>{let{...t}=e;return r.default.createElement(o,t)})),t?r.default.createElement("span",null,t):null}renderProgressBar(e){if(!e.queuedId||e.message&&"error"===e.message.type)return null;if(e.id>0)return r.default.createElement("div",{className:"gallery__progress-bar--complete"});const t={className:"gallery__progress-bar-progress",style:{width:`${e.progress}%`}};return r.default.createElement("div",{className:"gallery__progress-bar"},r.default.createElement("div",t))}renderRestrictedAccess(e){const{hasRestrictedAccess:t}=e,n={fileID:e.id,placement:"top",hasRestrictedAccess:t};return r.default.createElement(a.default,n)}renderTrackedFormUpload(e){const{isTrackedFormUpload:t,hasRestrictedAccess:n}=e,o={fileID:e.id,placement:"top",isTrackedFormUpload:t,hasRestrictedAccess:n};return r.default.createElement(a.default,o)}renderTitle(e){const t=this.renderProgressBar(e.rowData);return r.default.createElement("div",{className:"fill-width"},r.default.createElement("div",{className:"flexbox-area-grow"},r.default.createElement("span",null,e.data),e.rowData.hasRestrictedAccess&&this.renderRestrictedAccess(e.rowData),e.rowData.isTrackedFormUpload&&this.renderTrackedFormUpload(e.rowData)),t)}renderSelect(e){if(this.props.selectableItems&&(this.props.selectableFolders||"folder"!==e.rowData.type)){const t={type:"checkbox",title:s.default._t("AssetAdmin.SELECT"),defaultChecked:e.data,tabIndex:-1,onMouseDown:this.preventFocus};return![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect&&!e.data&&(t.disabled=!0),r.default.createElement("input",t)}return null}renderDate(e){return"folder"===e.rowData.type?null:(moment.locale(s.default.detectLocale()),r.default.createElement("span",null,moment(e.data).format("L LT")))}renderThumbnail(e){const t=e.data||e.rowData.url,n=e.rowData.queuedId&&!e.rowData.id,o=e.rowData.category||"false",i="gallery__table-image",s=[i],a={};return s.push(`${i}--${o}`),"image"===o&&t&&(a.backgroundImage=`url("${t}")`),n||t||"folder"===o||s.push(`${i}--error`),r.default.createElement("div",{className:s.join(" "),style:a})}render(){return r.default.createElement(i.default,this.getTableProps())}}t.Component=h,h.defaultProps=l.galleryViewDefaultProps,h.propTypes={...l.galleryViewPropTypes,sort:o.default.string.isRequired,VersionedBadge:o.default.elementType};var m=(0,c.compose)((0,d.inject)(["VersionedBadge"],(e=>({VersionedBadge:e}))))(h);t.default=m},3298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;var r=d(n(4754)),o=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var s=o?Object.getOwnPropertyDescriptor(e,i):null;s&&(s.get||s.set)?Object.defineProperty(r,i,s):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(7363)),i=n(6648),s=n(4288),a=d(n(8345)),l=d(n(7086));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function d(e){return e&&e.__esModule?e:{default:e}}class c extends o.Component{constructor(e){super(e),this.renderItem=this.renderItem.bind(this),this.handleSetPage=this.handleSetPage.bind(this),this.handlePrevPage=this.handlePrevPage.bind(this),this.handleNextPage=this.handleNextPage.bind(this),this.handleDrag=this.handleDrag.bind(this)}handleDrag(e){this.props.onEnableDropzone(!e)}handleSetPage(e){this.props.onSetPage(e+1)}handleNextPage(){const e=this.props.page-1;this.handleSetPage(e+1)}handlePrevPage(){const e=this.props.page-1;0!==e?this.handleSetPage(e-1):this.handleSetPage(e)}folderFilter(e){return"folder"===e.type}fileFilter(e){return"folder"!==e.type}renderPagination(){if(this.props.totalCount<=this.props.limit)return null;const e={setPage:this.handleSetPage,maxPage:Math.ceil(this.props.totalCount/this.props.limit),next:this.handleNextPage,nextText:r.default._t("AssetAdmin.NEXT","Next"),previous:this.handlePrevPage,previousText:r.default._t("AssetAdmin.PREVIOUS","Previous"),currentPage:this.props.page-1,useGriddleStyles:!1};return o.default.createElement("div",{className:"griddle-footer"},o.default.createElement(a.default.GridPagination,e))}renderItem(e){const{File:t,Folder:n,badges:r,sectionConfig:i,selectedFiles:s,selectableItems:a,selectableFolders:l}=this.props,u=r.find((t=>t.id===e.id));let d={sectionConfig:i,key:e.key,selectableKey:e.id,item:e,selectedFiles:s,onDrag:this.handleDrag,badge:u,canDrag:this.props.canDrag};if(e.queuedId&&!e.id){const{onCancelUpload:e,onRemoveErroredUpload:t}=this.props;d={...d,onCancelUpload:e,onRemoveErroredUpload:t}}else{const{onOpenFolder:t,onOpenFile:n}=this.props;d={...d,onActivate:"folder"===e.type?t:n}}if(a&&(l||"folder"!==e.type)){const e=![null,1].includes(this.props.maxFilesSelect)&&this.props.selectedFiles.length>=this.props.maxFilesSelect,t=1===this.props.maxFilesSelect?d.onActivate:this.props.onSelect;d={...d,selectable:!0,onSelect:t,maxSelected:e}}if("folder"===e.type){const{onDropFiles:e}=this.props;return d={...d,onDropFiles:e},o.default.createElement(n,d)}return o.default.createElement(t,d)}render(){return o.default.createElement("div",{className:"gallery__main-view--tile"},o.default.createElement("div",{className:"gallery__folders"},this.props.files.filter(this.folderFilter).map(this.renderItem)),o.default.createElement("div",{className:"gallery__files"},this.props.files.filter(this.fileFilter).map(this.renderItem)),0===this.props.files.length&&!this.props.loading&&o.default.createElement("p",{className:"gallery__no-item-notice"},r.default._t("AssetAdmin.NOITEMSFOUND")),o.default.createElement("div",{className:"gallery__load"},this.renderPagination()))}}t.Component=c,c.defaultProps=s.galleryViewDefaultProps,c.propTypes={...s.galleryViewPropTypes,File:l.default.elementType.isRequired,Folder:l.default.elementType.isRequired};var p=(0,i.inject)(["GalleryItemFile","GalleryItemFolder"],((e,t)=>({File:e,Folder:t})),(()=>"AssetAdmin.Gallery.ThumbnailView"))(c);t.default=p},788:function(e,t,n){"use strict";var r=l(n(5311)),o=l(n(7363)),i=n(745),s=n(6602),a=n(6648);function l(e){return e&&e.__esModule?e:{default:e}}function u(){return u=Object.assign?Object.assign.bind():function(e){for(var t=1;t{e(".js-injector-boot input.entwine-uploadfield").entwine({Component:null,ReactRoot:null,getContainer(){let t=this.siblings(".uploadfield-holder")[0];if(!t){const n=e('
');this.before(n),t=n[0]}return t},onunmatch(){this._super();const e=this.getReactRoot();e&&(e.unmount(),this.setReactRoot(null))},onmatch(){const e=this.closest(".cms-content").attr("id"),t=e?{context:e}:{},n=(0,a.loadComponent)("UploadField",t);this.setComponent(n),this._super(),this.hide(),this.refresh()},onclick(e){e.preventDefault()},refresh(){const t=this.getAttributes(),n=e(this).closest("form"),r=this.getComponent();let s=this.getReactRoot();s||(s=(0,i.createRoot)(this.getContainer()),this.setReactRoot(s)),s.render(o.default.createElement(r,u({},t,{onChange:()=>{setTimeout((()=>{n.trigger("change")}),0)},noHolder:!0})))},getAttributes(){const t=e(this).data("state"),n=e(this).data("schema");return(0,s.schemaMerge)(n,t)}})}))},9900:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({url:o.default.string,limit:o.default.number,imageRetry:o.default.shape({minRetry:o.default.number,maxRetry:o.default.number,expiry:o.default.number}),form:o.default.object,dropzoneOptions:o.default.object});t.default=i},2214:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fileInterface=t.file=void 0;t.fileInterface="\n fragment FileInterfaceFields on FileInterface {\n canDelete\n canEdit\n canView\n category\n exists\n filename\n id\n lastEdited\n name\n parentId\n title\n type\n url\n visibility\n hasRestrictedAccess\n }\n";t.file="\n fragment FileFields on File {\n draft\n extension\n published\n modified\n size\n smallThumbnail\n thumbnail\n version\n isTrackedFormUpload\n }\n"},4744:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(7086))&&r.__esModule?r:{default:r};var i=o.default.shape({canEdit:o.default.bool,canDelete:o.default.bool,canView:o.default.bool,exists:o.default.bool,type:o.default.string,smallThumbnail:o.default.string,thumbnail:o.default.string,width:o.default.number,height:o.default.number,category:o.default.oneOfType([o.default.bool,o.default.string]),id:o.default.number,url:o.default.string,title:o.default.string,progress:o.default.number,visibility:o.default.string,hasRestrictedAccess:o.default.bool,isTrackedFormUpload:o.default.bool});t.default=i},5488:function(e,t,n){"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=(0,((r=n(7752))&&r.__esModule?r:{default:r}).default)({name:null,canDelete:!1,canEdit:!1,category:null,created:null,extension:null,filename:null,id:0,lastEdited:null,messages:null,owner:{id:0,title:null},parent:{filename:null,id:0,title:null},queuedId:null,size:null,title:null,type:null,url:null,xhr:null,thumbnail:null,smallThumbnail:null,height:null,width:null});t.default=o},6019:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){let{config:{form:t},viewAction:n,folderId:r,fileId:o,type:a}=e,l=null,u=null;if(n===i)return l=t.folderCreateForm.schemaUrl,u=r,{schemaUrl:l,targetId:u};if(n===s&&o){switch(a){case"insert-media":l=t.fileInsertForm.schemaUrl;break;case"insert-link":l=t.fileEditorLinkForm.schemaUrl;break;case"select":l=t.fileSelectForm.schemaUrl;break;default:l=t.fileEditForm.schemaUrl}return u=o,{schemaUrl:l,targetId:u}}return{}};var r,o=(r=n(8264))&&r.__esModule?r:{default:r};const{CREATE_FOLDER:i,EDIT_FILE:s}=o.default.ACTIONS},1338:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(413===e)return o.default._t("AssetAdmin.ERROR_FILE_SIZE","File size limit exceeded");return o.default._t("AssetAdmin.ERROR_DEFAULT","Something went wrong, please try again")};var r,o=(r=n(4754))&&r.__esModule?r:{default:r}},9712:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CONFIRM_DELETION_ASK:"CONFIRM_DELETION_ASK",CONFIRM_DELETION_CONFIRM:"CONFIRM_DELETION_CONFIRM",CONFIRM_DELETION_CANCEL:"CONFIRM_DELETION_CANCEL",CONFIRM_DELETION_RESET:"CONFIRM_DELETION_RESET",CONFIRM_DELETION_MODAL_CLOSE:"CONFIRM_DELETION_MODAL_CLOSE"}},9194:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cancel=function(){return{type:o.default.CONFIRM_DELETION_CANCEL,payload:{}}},t.confirm=function(e){return{type:o.default.CONFIRM_DELETION_ASK,payload:{files:e}}},t.deleting=function(){return{type:o.default.CONFIRM_DELETION_CONFIRM,payload:{}}},t.modalClose=function(){return{type:o.default.CONFIRM_DELETION_MODAL_CLOSE,payload:{}}},t.reset=function(){return{type:o.default.CONFIRM_DELETION_RESET,payload:{}}};var r,o=(r=n(9712))&&r.__esModule?r:{default:r}},6529:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.initialState=t.default=void 0;var r,o=(r=n(9712))&&r.__esModule?r:{default:r},i=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=s(t);if(n&&n.has(e))return n.get(e);var r={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=o?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}r.default=e,n&&n.set(e,r);return r}(n(602));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}const a={showConfirmation:!1,files:[],transition:i.NO_TRANSITION};t.initialState=a;var l=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.CONFIRM_DELETION_ASK:return{...a,showConfirmation:!0,files:t.payload.files};case o.default.CONFIRM_DELETION_CANCEL:if(e.showConfirmation)return{...e,transition:i.CANCELING};break;case o.default.CONFIRM_DELETION_CONFIRM:if(e.showConfirmation)return{...e,transition:i.DELETING};break;case o.default.CONFIRM_DELETION_MODAL_CLOSE:return{...e,showConfirmation:!1,transition:i.NO_TRANSITION};case o.default.CONFIRM_DELETION_RESET:return a}return e};t.default=l},602:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NO_TRANSITION=t.DELETING=t.CANCELING=void 0;t.NO_TRANSITION=!1;t.CANCELING="canceling";t.DELETING="deleting"},5327:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={TOGGLE_SEARCH:"TOGGLE_SEARCH",OPEN_SEARCH:"OPEN_SEARCH",CLOSE_SEARCH:"CLOSE_SEARCH"}},469:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.closeSearch=function(){return{type:o.default.CLOSE_SEARCH,payload:null}},t.openSearch=function(){return{type:o.default.OPEN_SEARCH,payload:null}},t.toggleSearch=function(){return{type:o.default.TOGGLE_SEARCH,payload:null}};var r,o=(r=n(5327))&&r.__esModule?r:{default:r}},325:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=i(n(7752)),o=i(n(5327));function i(e){return e&&e.__esModule?e:{default:e}}const s={isOpen:!1};var a=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.TOGGLE_SEARCH:return(0,r.default)({...e,isOpen:!e.isOpen});case o.default.OPEN_SEARCH:return(0,r.default)({...e,isOpen:!0});case o.default.CLOSE_SEARCH:return(0,r.default)({...e,isOpen:!1});default:return e}};t.default=a},5380:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1075),o=n(6648);const i={options(e){let{sectionConfig:t,folderId:n,fileId:o,query:i}=e;const s=Object.assign({},i.filter),a=Object.assign({},s,{parentId:void 0,recursive:(0,r.hasFilters)(s),currentFolderOnly:void 0}),l=(0,r.hasFilters)(s)?null:o||null,u={id:l?null:n||0,anyChildId:l},[d,c]=i.sort?i.sort.split(","):["",""],p=i.limit||t.limit;return{variables:{rootFilter:u,childrenFilter:a,limit:p,offset:((i.page||1)-1)*p,sortBy:d&&c?[{field:d,direction:c.toUpperCase()}]:void 0}}},props(e){let{data:{error:t,refetch:n,readFiles:r,loading:o},ownProps:{actions:i}}=e;const s=r&&r.nodes[0]?r.nodes[0]:null,a=s&&s.children?s.children.nodes.filter((e=>e)):[],l=s&&s.children?s.children.pageInfo.totalCount:0,u=s&&!s.children;return{loading:o||u,folder:s,files:a,filesTotalCount:l,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message)),actions:Object.assign({},i,{files:Object.assign({},i.files,{readFiles:n})})}}},{READ:s}=o.graphqlTemplates;var a={apolloConfig:i,templateName:s,pluralName:"Files",pagination:!1,params:{limit:"Int!",offset:"Int!",rootFilter:"FileFilterInput",childrenFilter:"FileFilterInput",sortBy:"[ChildrenSortInputType]"},args:{root:{filter:"rootFilter"},"root/nodes/...on Folder/children":{limit:"limit",offset:"offset",filter:"childrenFilter",sortBy:"sortBy"}},fragments:["FileInterfaceFields","FileFields"],fields:["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields","...on Folder",["children",["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields"]],"parents",["id","title"]]]]};t.default=a},7298:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{fileId:t}=e;return{variables:{rootFilter:{id:t}}}},props(e){let{data:{error:t,readFiles:n,loading:r}}=e;return{loading:r,file:n&&n.nodes[0]?n.nodes[0]:null,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message))}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"Files",pagination:!1,params:{rootFilter:"FileFilterInput"},args:{root:{filter:"rootFilter"}},fragments:["FileInterfaceFields","FileFields"],fields:["nodes",["...FileInterfaceFields","...FileFields"]]};t.default=s},6821:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(1306))&&r.__esModule?r:{default:r},i=n(2214);var s=e=>{const t=e.charAt(0).toUpperCase()+e.slice(1),n=o.default` mutation ${t}($ids:[ID]!, $force:Boolean, $quiet:Boolean) { ${e}(ids: $ids, force: $force, quiet: $quiet) { ...on File { @@ -27,4 +27,4 @@ } ${s.fileInterface} ${s.file} -`;t.mutation=a;const l={props:e=>{let{mutate:t,ownProps:{actions:n={}}}=e;return{actions:Object.assign({},n,{files:Object.assign({},n.files,{moveFiles:(e,n)=>t({variables:{folderId:e,fileIds:n},update:()=>{window.ss.apolloClient.resetStore()}})})})}}};t.config=l;var u=(0,o.graphql)(a,l);t.default=u},6307:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mutation=t.default=t.config=void 0;var r,o=n(7588),i=(r=n(6821))&&r.__esModule?r:{default:r};const{mutation:s,config:a}=(0,i.default)("publishFiles");t.config=a,t.mutation=s;var l=(0,o.graphql)(s,a);t.default=l},8115:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{files:t}=e;return{variables:{ids:t.map((e=>e.id))}}},props(e){const{data:{error:t,readDescendantFileCounts:n,loading:r}}=e,o=t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message));return{loading:r,descendantFileCounts:n?n.reduce(((e,t)=>{let{id:n,count:r}=t;return{...e,[n]:r}}),{}):{},graphQLErrors:o}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"DescendantFileCounts",pagination:!1,params:{ids:"[ID]!"},args:{root:{ids:"ids"}},fields:["id","count"]};t.default=s},1421:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{files:t}=e;return{variables:{ids:t.map((e=>e.id))}}},props(e){const{data:{error:t,readFileUsage:n,loading:r}}=e,o=t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message));return{loading:r,fileUsage:n?n.reduce(((e,t)=>{let{id:n,inUseCount:r}=t;return{...e,[n]:r}}),{}):{},graphQLErrors:o}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"FileUsage",pagination:!1,params:{ids:"[ID]!"},args:{root:{ids:"ids"}},fields:["id","inUseCount"]};t.default=s},7100:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1075),o=n(6648);const i={options(e){let{sectionConfig:t,folderId:n,fileId:o,query:i}=e;const s=Object.assign({},i.filter),a=Object.assign({},s,{parentId:void 0,recursive:(0,r.hasFilters)(s),currentFolderOnly:void 0}),l=(0,r.hasFilters)(s)?null:o||null,u={id:l?null:n||0,anyChildId:l},[d,c]=i.sort?i.sort.split(","):["",""],p=i.limit||t.limit;return{variables:{rootFilter:u,childrenFilter:a,limit:p,offset:((i.page||1)-1)*p,sortBy:d&&c?{[d]:c.toUpperCase()}:void 0}}},props(e){let{data:{error:t,refetch:n,readFiles:r,loading:o},ownProps:{actions:i}}=e;const s=r?r[0]:null,a=s&&s.children?s.children.nodes.filter((e=>e)):[],l=s&&s.children?s.children.pageInfo.totalCount:0,u=s&&!s.children;return{loading:o||u,folder:s,files:a,filesTotalCount:l,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message)),actions:Object.assign({},i,{files:Object.assign({},i.files,{readFiles:n})})}}},{READ:s}=o.graphqlTemplates;var a={apolloConfig:i,templateName:s,pluralName:"Files",pagination:!1,params:{limit:"Int!",offset:"Int!",rootFilter:"FileFilterInput",childrenFilter:"FileFilterInput",sortBy:"FolderChildrenSortFields"},args:{root:{filter:"rootFilter"},"root/...on Folder/children":{limit:"limit",offset:"offset",filter:"childrenFilter",sort:"sortBy"}},fragments:["FileInterfaceFields","FileFields"],fields:["...FileInterfaceFields","...FileFields","...on Folder",["children",["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields"]],"parents",["id","title"]]]};t.default=a},1280:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{fileId:t}=e;return{variables:{rootFilter:{id:t}}}},props(e){let{data:{error:t,readFiles:n,loading:r}}=e;return{loading:r,file:n?n[0]:null,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message))}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"Files",pagination:!1,params:{rootFilter:"FileFilterInput"},args:{root:{filter:"rootFilter"}},fragments:["FileInterfaceFields","FileFields"],fields:["...FileInterfaceFields","...FileFields"]};t.default=s},168:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mutation=t.default=t.config=void 0;var r,o=n(7588),i=(r=n(6821))&&r.__esModule?r:{default:r};const{mutation:s,config:a}=(0,i.default)("unpublishFiles");t.config=a,t.mutation=s;var l=(0,o.graphql)(s,a);t.default=l},8750:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=["SET_LAST_SELECTED","SET_SELECTED_FILES","DESELECT_FILES","SELECT_FILES","LOAD_FILE_REQUEST","LOAD_FILE_SUCCESS","HIGHLIGHT_FILES","UPDATE_BATCH_ACTIONS","SET_NOTICE_MESSAGE","SET_ERROR_MESSAGE","SET_ENABLE_DROPZONE","SET_FILE_BADGE","CLEAR_FILE_BADGE","ACTIVATE_MODAL","DEACTIVATE_MODAL","CONCATENATE_SELECT","SET_LOADING"].reduce(((e,t)=>Object.assign(e,{[t]:`GALLERY.${t}`})),{});t.default=n},3669:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.activateModal=function(e){return t=>{t({type:o.default.ACTIVATE_MODAL,payload:e})}},t.clearFileBadge=i,t.deactivateModal=function(){return e=>{e({type:o.default.DEACTIVATE_MODAL})}},t.deselectFiles=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return t=>t({type:o.default.DESELECT_FILES,payload:{ids:e}})},t.loadFile=function(e,t){return n=>{n({type:o.default.LOAD_FILE_SUCCESS,payload:{id:e,file:t}})}},t.selectFiles=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return t=>t({type:o.default.SELECT_FILES,payload:{ids:e}})},t.setConcatenateSelect=function(e){return t=>t({type:o.default.CONCATENATE_SELECT,payload:!!e})},t.setEnableDropzone=function(e){return t=>t({type:o.default.SET_ENABLE_DROPZONE,payload:{enableDropzone:e}})},t.setErrorMessage=function(e){return t=>t({type:o.default.SET_ERROR_MESSAGE,payload:{message:e}})},t.setFileBadge=function(e,t,n,r){return(s,a)=>{const{assetAdmin:l}=a(),u=l.gallery.badges.find((t=>t.id===e));u&&u.timer&&clearTimeout(u.timer);const d=r>0?setTimeout((()=>i(e)(s)),r):null;s({type:o.default.SET_FILE_BADGE,payload:{id:e,message:t,status:n,timer:d}})}},t.setLastSelected=function(e){return t=>{t({type:o.default.SET_LAST_SELECTED,payload:{id:e}})}},t.setLoading=function(e){return t=>{t({type:o.default.SET_LOADING,payload:!!e})}},t.setNoticeMessage=function(e){return t=>t({type:o.default.SET_NOTICE_MESSAGE,payload:{message:e}})},t.setSelectedFiles=function(e){return t=>{t({type:o.default.SET_SELECTED_FILES,payload:{files:e}})}};var r,o=(r=n(8750))&&r.__esModule?r:{default:r};function i(e){return t=>{t({type:o.default.CLEAR_FILE_BADGE,payload:{id:e}})}}},3627:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,{type:t,payload:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t){case o.default.SET_LAST_SELECTED:return{...e,lastSelected:n.id};case o.default.SET_FILE_BADGE:return{...e,badges:e.badges.filter((e=>e.id!==n.id)).concat([n])};case o.default.CLEAR_FILE_BADGE:return{...e,badges:e.badges.filter((e=>e.id!==n.id))};case o.default.SET_ENABLE_DROPZONE:return{...e,enableDropzone:n.enableDropzone};case o.default.SET_NOTICE_MESSAGE:return{...e,noticeMessage:n.message};case o.default.SET_ERROR_MESSAGE:return{...e,errorMessage:n.message};case o.default.LOAD_FILE_SUCCESS:{const t=e.files.find((e=>e.id===n.id));if(t){const o={...t,...n.file};return(0,r.default)({...e,files:e.files.map((e=>e.id===o.id?o:e))})}return e.folder.id===n.id?(0,r.default)({...e,folder:{...e.folder,...n.file}}):e}case o.default.SET_SELECTED_FILES:return(0,r.default)({...e,selectedFiles:Array.isArray(n.files)?n.files:[]});case o.default.SELECT_FILES:{let t=null;return t=null===n.ids?e.files.map((e=>e.id)):e.selectedFiles.concat(n.ids.filter((t=>-1===e.selectedFiles.indexOf(t)))),(0,r.default)({...e,selectedFiles:t})}case o.default.DESELECT_FILES:{let t=null;return t=null===n.ids?[]:e.selectedFiles.filter((e=>-1===n.ids.indexOf(e))),(0,r.default)({...e,selectedFiles:t})}case o.default.ACTIVATE_MODAL:return(0,r.default)({...e,modal:n});case o.default.DEACTIVATE_MODAL:return(0,r.default)({...e,modal:null});case o.default.CONCATENATE_SELECT:return(0,r.default)({...e,concatenateSelect:n});case o.default.SET_LOADING:return(0,r.default)({...e,loading:n});default:return e}};var r=s(n(7752)),o=s(n(8750)),i=s(n(4754));function s(e){return e&&e.__esModule?e:{default:e}}const a={selectedFiles:[],errorMessage:null,noticeMessage:null,enableDropzone:!0,modal:null,badges:[],concatenateSelect:!1,loading:!1,sorters:[{field:"title",direction:"asc",label:i.default._t("AssetAdmin.FILTER_TITLE_ASC","title a-z")},{field:"title",direction:"desc",label:i.default._t("AssetAdmin.FILTER_TITLE_DESC","title z-a")},{field:"lastEdited",direction:"desc",label:i.default._t("AssetAdmin.FILTER_DATE_DESC","newest")},{field:"lastEdited",direction:"asc",label:i.default._t("AssetAdmin.FILTER_DATE_ASC","oldest")}],lastSelected:null}},9905:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultImageFactory=t.default=void 0;var r=i(n(2175)),o=i(n(270));function i(e){return e&&e.__esModule?e:{default:e}}const s={minRetry:0,maxRetry:0,expiry:0,onStatusChange:()=>null,onRetry:()=>null,onReset:()=>null,onTimeout:()=>null},a=(e,t,n)=>{const r=new Image;r.onload=t,r.onerror=n,r.src=e};t.defaultImageFactory=a;var l=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;this.options={...s,...e},this.factory=t}loadImage(e){return this.options.minRetry&&o.default.lock(e)?this.loadImageLoop(e,this.options.minRetry):null}loadImageLoop(e,t){return this.options.onStatusChange(e,r.default.LOADING),new Promise(((t,n)=>this.factory(e,t,n))).then((()=>this.handleSuccess(e))).catch((()=>this.handleError(e,t)))}handleReset(e,t){this.options.onReset(e),t()}handleTimeout(e,t){const n=setTimeout(e,t);return this.options.onTimeout(n,t),n}handleSuccess(e){o.default.unlock(e),this.options.onStatusChange(e,r.default.SUCCESS)}handleFailure(e){return o.default.unlock(e),this.options.onStatusChange(e,r.default.FAILED),this.options.expiry?new Promise((t=>{this.handleTimeout((()=>this.handleReset(e,t)),1e3*this.options.expiry)})):null}handleError(e,t){return t>this.options.maxRetry?this.handleFailure(e):(this.options.onStatusChange(e,r.default.WAITING),this.handleRetry(e,t))}handleRetry(e,t){const n=new Promise((n=>{this.handleTimeout((()=>n(this.loadImageLoop(e,2*t))),1e3*t)}));return this.options.onRetry(e,t,n),n}setOnRetry(e){this.options.onRetry=e}setOnReset(e){this.options.onReset=e}setOnStatusChange(e){this.options.onStatusChange=e}setOnTimeout(e){this.options.onTimeout=e}};t.default=l},9505:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={SET_STATUS:"IMAGE_LOAD_SET_STATUS",RESET:"IMAGE_LOAD_RESET"}},3521:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadImage=function(e,t){return(n,i)=>{if(!e)return null;if(i().assetAdmin.imageLoad.files.find((t=>t.url===e)))return null;const s={...t,onStatusChange:(e,t)=>n({type:r.default.SET_STATUS,payload:{status:t,url:e}}),onReset:e=>n({type:r.default.RESET,payload:{url:e}})};return new o.default(s).loadImage(e)}};var r=i(n(9505)),o=i(n(9905));function i(e){return e&&e.__esModule?e:{default:e}}},270:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;class n{constructor(){this.urls=[]}lock(e){return!(this.urls.indexOf(e)>=0)&&(this.urls=[...this.urls,e],!0)}unlock(e){this.urls=this.urls.filter((t=>t!==e))}}t.Component=n,window.ss=window.ss||{},window.ss.imagelocker=window.ss.imagelocker||new n;var r=window.ss.imagelocker;t.default=r},4694:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,{type:t,payload:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t){case o.default.SET_STATUS:return{...e,files:[...e.files.filter((e=>e.url!==n.url)),n]};case o.default.RESET:return{...e,files:[...e.files.filter((e=>e.url!==n.url))]};default:return e}};var r,o=(r=n(9505))&&r.__esModule?r:{default:r};const i={files:[]}},2175:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={DISABLED:"DISABLED",NONE:"NONE",SUCCESS:"SUCCESS",LOADING:"LOADING",WAITING:"WAITING",FAILED:"FAILED"}},3576:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={DEFINE_IMAGE_SIZE_PRESETS:"DEFINE_IMAGE_SIZE_PRESETS",INIT_FORM_SCHEMA_STACK:"INIT_FORM_SCHEMA_STACK",POP_FORM_SCHEMA:"POP_FORM_SCHEMA",PUSH_FORM_SCHEMA:"PUSH_FORM_SCHEMA",RESET:"RESET",RESET_FORM_STACK:"RESET_FORM_STACK"}},4478:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defineImageSizePresets=function(e){return{type:r.default.DEFINE_IMAGE_SIZE_PRESETS,payload:{imageSizePresets:e}}},t.initFormStack=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return{type:r.default.INIT_FORM_SCHEMA_STACK,payload:{formSchema:{type:e,nextType:t}}}},t.popFormStackEntry=function(){return{type:r.default.POP_FORM_SCHEMA}},t.pushFormStackEntry=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return{type:r.default.PUSH_FORM_SCHEMA,payload:{formSchema:{type:e,nextType:t}}}},t.reset=function(){return{type:r.default.RESET}},t.resetFormStack=function(){return{type:r.default.RESET_FORM_STACK}},t.stashFormValues=function(e,t){return(n,r)=>{const a=r(),l=(0,o.default)(a.form.formState,`${e}.values`),u=(0,o.default)(a.form.formSchemas,`${t}.schema.fields`);if(l){const e=Object.keys(l).filter((e=>null!==l[e]&&(0,s.default)(e,u))).map((e=>({name:e,value:l[e]})));n((0,i.setSchemaStateOverrides)(t,{fields:e}))}}};var r=a(n(3576)),o=a(n(9298)),i=n(3573),s=a(n(4916));function a(e){return e&&e.__esModule?e:{default:e}}},7897:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.initialState=t.default=void 0;var r,o=(r=n(3576))&&r.__esModule?r:{default:r};const i={imageSizePresets:[],formSchemaStack:[],formSchema:void 0};function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,{type:t,payload:n}=arguments.length>1?arguments[1]:void 0;const{formSchemaStack:r}=e;switch(t){case o.default.DEFINE_IMAGE_SIZE_PRESETS:return{...e,imageSizePresets:n.imageSizePresets};case o.default.PUSH_FORM_SCHEMA:return{...e,formSchemaStack:[...r,n.formSchema]};case o.default.INIT_FORM_SCHEMA_STACK:return{...e,formSchemaStack:[n.formSchema]};case o.default.POP_FORM_SCHEMA:return{...e,formSchemaStack:r.slice(0,-1)};case o.default.RESET:return i;case o.default.RESET_FORM_STACK:return{...e,formSchemaStack:r.slice(0,1)};default:return e}}t.initialState=i;const a=e=>({...e,formSchema:e.formSchemaStack.slice(-1).pop()});t.default=function(){return a(s(...arguments))}},4916:function(e,t){"use strict";function n(e,t){let r;for(r=0;r0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.PREVIEWFIELD_ADD_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:t.payload.file}));case o.default.PREVIEWFIELD_FAIL_UPLOAD:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.message)}));case o.default.PREVIEWFIELD_REMOVE_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:void 0}));case o.default.PREVIEWFIELD_UPDATE_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.data)}));case o.default.PREVIEWFIELD_UPDATE_STATUS:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.status)}));default:return e}};t.default=a},4973:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={ADD_QUEUED_FILE:"ADD_QUEUED_FILE",FAIL_UPLOAD:"FAIL_UPLOAD",PURGE_UPLOAD_QUEUE:"PURGE_UPLOAD_QUEUE",REMOVE_QUEUED_FILE:"REMOVE_QUEUED_FILE",SUCCEED_UPLOAD:"SUCCEED_UPLOAD",UPDATE_QUEUED_FILE:"UPDATE_QUEUED_FILE"}},2986:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addQueuedFile=function(e){return t=>t({type:o.default.ADD_QUEUED_FILE,payload:{file:e}})},t.failUpload=function(e,t,n){return r=>{let i=t.message;return t.errors&&t.errors.length&&(i=t.errors[0]),"string"==typeof t&&(i={value:n||t,type:"error"}),r({type:o.default.FAIL_UPLOAD,payload:{queuedId:e,message:i}})}},t.purgeUploadQueue=function(){return e=>e({type:o.default.PURGE_UPLOAD_QUEUE,payload:null})},t.removeQueuedFile=function(e){return t=>t({type:o.default.REMOVE_QUEUED_FILE,payload:{queuedId:e}})},t.succeedUpload=function(e,t){return n=>n({type:o.default.SUCCEED_UPLOAD,payload:{queuedId:e,json:t}})},t.updateQueuedFile=function(e,t){return n=>n({type:o.default.UPDATE_QUEUED_FILE,payload:{queuedId:e,updates:t}})};var r,o=(r=n(4973))&&r.__esModule?r:{default:r}},5456:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7752)),o=a(n(4973)),i=a(n(5488)),s=a(n(4754));function a(e){return e&&e.__esModule?e:{default:e}}const l={items:[]};var u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.ADD_QUEUED_FILE:return(0,r.default)({...e,items:[...e.items,{...i.default,...t.payload.file}]});case o.default.FAIL_UPLOAD:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,message:t.payload.message}:e))});case o.default.PURGE_UPLOAD_QUEUE:return(0,r.default)({...e,items:e.items.filter((e=>!e.id))});case o.default.REMOVE_QUEUED_FILE:return(0,r.default)({...e,items:e.items.filter((e=>e.queuedId!==t.payload.queuedId))});case o.default.SUCCEED_UPLOAD:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,...t.payload.json,messages:[{value:s.default._t("AssetAdmin.DROPZONE_SUCCESS_UPLOAD"),type:"success",extraClass:"success"}]}:e))});case o.default.UPDATE_QUEUED_FILE:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,...t.payload.updates}:e))});default:return e}};t.default=u},4228:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH:"UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH",UPLOADFIELD_ADD_FILE:"UPLOADFIELD_ADD_FILE",UPLOADFIELD_SET_FILES:"UPLOADFIELD_SET_FILES",UPLOADFIELD_REMOVE_FILE:"UPLOADFIELD_REMOVE_FILE",UPLOADFIELD_UPLOAD_FAILURE:"UPLOADFIELD_UPLOAD_FAILURE",UPLOADFIELD_UPLOAD_SUCCESS:"UPLOADFIELD_UPLOAD_SUCCESS",UPLOADFIELD_UPDATE_QUEUED_FILE:"UPLOADFIELD_UPDATE_QUEUED_FILE"}},4504:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addFile=function(e,t){return n=>n({type:o.default.UPLOADFIELD_ADD_FILE,payload:{fieldId:e,file:t}})},t.failUpload=function(e,t,n,r){return i=>{let s=n.message;return"string"==typeof n&&(s={value:r||n,type:"error"}),i({type:o.default.UPLOADFIELD_UPLOAD_FAILURE,payload:{fieldId:e,queuedId:t,message:s}})}},t.removeFile=function(e,t){return n=>n({type:o.default.UPLOADFIELD_REMOVE_FILE,payload:{fieldId:e,file:t}})},t.setFiles=function(e,t){return n=>n({type:o.default.UPLOADFIELD_SET_FILES,payload:{fieldId:e,files:t}})},t.setFormSchemaFilesHash=function(e,t){return n=>n({type:o.default.UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH,payload:{fieldId:e,hash:t}})},t.succeedUpload=function(e,t,n){return r=>r({type:o.default.UPLOADFIELD_UPLOAD_SUCCESS,payload:{fieldId:e,queuedId:t,json:n}})},t.updateQueuedFile=function(e,t,n){return r=>r({type:o.default.UPLOADFIELD_UPDATE_QUEUED_FILE,payload:{fieldId:e,queuedId:t,updates:n}})};var r,o=(r=n(4228))&&r.__esModule?r:{default:r}},7437:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=s(n(4228)),o=s(n(5488)),i=s(n(6919));function s(e){return e&&e.__esModule?e:{default:e}}const a={fields:{}},l={formSchemaFilesHash:null,files:[]};var u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=arguments.length>1?arguments[1]:void 0;const n=(0,i.default)(e,t,l);switch(t.type){case r.default.UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH:return n((()=>({formSchemaFilesHash:t.payload.hash})));case r.default.UPLOADFIELD_ADD_FILE:return n((e=>e.files.find((e=>e.id===t.payload.file.id))?e:{...e,files:[...e.files,{...o.default,...t.payload.file}]}));case r.default.UPLOADFIELD_SET_FILES:return n((()=>({files:t.payload.files})));case r.default.UPLOADFIELD_UPLOAD_FAILURE:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,{message:t.payload.message}):e))})));case r.default.UPLOADFIELD_REMOVE_FILE:return n((e=>({files:e.files.filter((e=>!(t.payload.file.queuedId&&e.queuedId===t.payload.file.queuedId||t.payload.file.id&&e.id===t.payload.file.id)))})));case r.default.UPLOADFIELD_UPLOAD_SUCCESS:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,t.payload.json):e))})));case r.default.UPLOADFIELD_UPDATE_QUEUED_FILE:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,t.payload.updates):e))})));default:return e}};t.default=u},3466:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=i(n(7363)),o=i(n(4754));function i(e){return e&&e.__esModule?e:{default:e}}var s=e=>t=>{const n=t.onClick,i={...t,onClick(e,r){const{owners:i}=t.data;let s=null;s=i&&parseInt(i,10)>0?[o.default.inject(o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_1","This file is being used in {count} other published section(s)."),{count:i}),o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_2","Ensure files are removed from content areas prior to unpublishing them. Otherwise, they will appear as broken links."),o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_3","Do you want to unpublish this file anyway?")].join("\n\n"):o.default._t("AssetAdmin.CONFIRMUNPUBLISH","Are you sure you want to unpublish this record?"),confirm(s)?n(e,r):e.preventDefault()}};return r.default.createElement(e,i)};t.default=s},4026:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.disabledTreeDropdownField=t.default=void 0;var r,o=(r=n(7363))&&r.__esModule?r:{default:r},i=n(1624),s=n(2827),a=n(4926);const l=e=>t=>{const{disabledIDs:n}=t,r=t.findTreeByPath||a.findTreeByPath,i={...t,findTreeByPath(e,t){const o=r(e,t),i=t.some((e=>n.includes(e)));return o?{...o,children:o.children.map((e=>({...e,disabled:i||n.includes(e.id)})))}:null}};return o.default.createElement(e,i)};t.disabledTreeDropdownField=l;var u=(0,s.compose)((0,i.connect)((e=>({disabledIDs:e.assetAdmin.gallery.selectedFiles}))),l);t.default=u},6511:function(e,t,n){"use strict";var r=n(7418),o={};function i(e,t,n,r,o,i,s,a){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,i,s,a],d=0;(l=new Error(t.replace(/%s/g,(function(){return u[d++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}var s="mixins";e.exports=function(e,t,n){var a=[],l={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",UNSAFE_componentWillMount:"DEFINE_MANY",UNSAFE_componentWillReceiveProps:"DEFINE_MANY",UNSAFE_componentWillUpdate:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},u={getDerivedStateFromProps:"DEFINE_MANY_MERGED"},d={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n>>2]>>>24-i%4*8&255;t[r+i>>>2]|=s<<24-(r+i)%4*8}else for(var a=0;a>>2]=n[a>>>2];return this.sigBytes+=o,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=l.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n>>2]>>>24-o%4*8&255;r.push((i>>>4).toString(16)),r.push((15&i).toString(16))}return r.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},p=d.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],o=0;o>>2]>>>24-o%4*8&255;r.push(String.fromCharCode(i))}return r.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},f=d.Utf8={stringify:function(e){try{return decodeURIComponent(escape(p.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return p.parse(unescape(encodeURIComponent(e)))}},h=a.BufferedBlockAlgorithm=l.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,r=this._data,o=r.words,i=r.sigBytes,s=this.blockSize,a=i/(4*s),l=(a=t?e.ceil(a):e.max((0|a)-this._minBufferSize,0))*s,d=e.min(4*l,i);if(l){for(var c=0;c>>24)|4278255360&(o<<24|o>>>8)}var i=this._hash.words,s=e[t+0],l=e[t+1],f=e[t+2],h=e[t+3],m=e[t+4],g=e[t+5],y=e[t+6],v=e[t+7],b=e[t+8],E=e[t+9],_=e[t+10],C=e[t+11],S=e[t+12],w=e[t+13],F=e[t+14],O=e[t+15],I=i[0],A=i[1],x=i[2],D=i[3];I=u(I,A,x,D,s,7,a[0]),D=u(D,I,A,x,l,12,a[1]),x=u(x,D,I,A,f,17,a[2]),A=u(A,x,D,I,h,22,a[3]),I=u(I,A,x,D,m,7,a[4]),D=u(D,I,A,x,g,12,a[5]),x=u(x,D,I,A,y,17,a[6]),A=u(A,x,D,I,v,22,a[7]),I=u(I,A,x,D,b,7,a[8]),D=u(D,I,A,x,E,12,a[9]),x=u(x,D,I,A,_,17,a[10]),A=u(A,x,D,I,C,22,a[11]),I=u(I,A,x,D,S,7,a[12]),D=u(D,I,A,x,w,12,a[13]),x=u(x,D,I,A,F,17,a[14]),I=d(I,A=u(A,x,D,I,O,22,a[15]),x,D,l,5,a[16]),D=d(D,I,A,x,y,9,a[17]),x=d(x,D,I,A,C,14,a[18]),A=d(A,x,D,I,s,20,a[19]),I=d(I,A,x,D,g,5,a[20]),D=d(D,I,A,x,_,9,a[21]),x=d(x,D,I,A,O,14,a[22]),A=d(A,x,D,I,m,20,a[23]),I=d(I,A,x,D,E,5,a[24]),D=d(D,I,A,x,F,9,a[25]),x=d(x,D,I,A,h,14,a[26]),A=d(A,x,D,I,b,20,a[27]),I=d(I,A,x,D,w,5,a[28]),D=d(D,I,A,x,f,9,a[29]),x=d(x,D,I,A,v,14,a[30]),I=c(I,A=d(A,x,D,I,S,20,a[31]),x,D,g,4,a[32]),D=c(D,I,A,x,b,11,a[33]),x=c(x,D,I,A,C,16,a[34]),A=c(A,x,D,I,F,23,a[35]),I=c(I,A,x,D,l,4,a[36]),D=c(D,I,A,x,m,11,a[37]),x=c(x,D,I,A,v,16,a[38]),A=c(A,x,D,I,_,23,a[39]),I=c(I,A,x,D,w,4,a[40]),D=c(D,I,A,x,s,11,a[41]),x=c(x,D,I,A,h,16,a[42]),A=c(A,x,D,I,y,23,a[43]),I=c(I,A,x,D,E,4,a[44]),D=c(D,I,A,x,S,11,a[45]),x=c(x,D,I,A,O,16,a[46]),I=p(I,A=c(A,x,D,I,f,23,a[47]),x,D,s,6,a[48]),D=p(D,I,A,x,v,10,a[49]),x=p(x,D,I,A,F,15,a[50]),A=p(A,x,D,I,g,21,a[51]),I=p(I,A,x,D,S,6,a[52]),D=p(D,I,A,x,h,10,a[53]),x=p(x,D,I,A,_,15,a[54]),A=p(A,x,D,I,l,21,a[55]),I=p(I,A,x,D,b,6,a[56]),D=p(D,I,A,x,O,10,a[57]),x=p(x,D,I,A,y,15,a[58]),A=p(A,x,D,I,w,21,a[59]),I=p(I,A,x,D,m,6,a[60]),D=p(D,I,A,x,C,10,a[61]),x=p(x,D,I,A,f,15,a[62]),A=p(A,x,D,I,E,21,a[63]),i[0]=i[0]+I|0,i[1]=i[1]+A|0,i[2]=i[2]+x|0,i[3]=i[3]+D|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,o=8*t.sigBytes;n[o>>>5]|=128<<24-o%32;var i=e.floor(r/4294967296),s=r;n[15+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),n[14+(o+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(n.length+1),this._process();for(var a=this._hash,l=a.words,u=0;u<4;u++){var d=l[u];l[u]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8)}return a},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});function u(e,t,n,r,o,i,s){var a=e+(t&n|~t&r)+o+s;return(a<>>32-i)+t}function d(e,t,n,r,o,i,s){var a=e+(t&r|n&~r)+o+s;return(a<>>32-i)+t}function c(e,t,n,r,o,i,s){var a=e+(t^n^r)+o+s;return(a<>>32-i)+t}function p(e,t,n,r,o,i,s){var a=e+(n^(t|~r))+o+s;return(a<>>32-i)+t}t.MD5=i._createHelper(l),t.HmacMD5=i._createHmacHelper(l)}(Math),r.MD5)},854:function(e,t,n){var r=n(961),o=n(7672);void 0===o.InsertEmbedModal&&(o.InsertEmbedModal=r),e.exports=r},7574:function(e,t,n){var r=n(2896),o=n(7672);void 0===o.InsertMediaModal&&(o.InsertMediaModal=r),e.exports=r},7672:function(e,t,n){"use strict";e.exports=function(){if("object"==typeof globalThis)return globalThis;var e;try{e=this||new Function("return this")()}catch(e){if("object"==typeof window)return window;if("object"==typeof self)return self;if(void 0!==n.g)return n.g}return e}()},3059:function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n0}},{key:"getMetadataColumnProperty",value:function(e,t,n){var r=this.getColumnMetadataByName(e);return null==r?n:r.hasOwnProperty(t)?r[t]:n}},{key:"orderColumns",value:function(e){var t=this;return l(e,(function(e){var n=a(t.columnMetadata,{columnName:e});return null==n||isNaN(n.order)?100:n.order}))}},{key:"getColumns",value:function(){var e=0===this.filteredColumns.length?this.allColumns:this.filteredColumns;return e=u(e,this.metadataColumns),e=this.orderColumns(e)}}]),e}();e.exports=d},1172:function(e,t,n){"use strict";var r=n(7363),o=n(2555)({getDefaultProps:function(){return{placeholderText:""}},render:function(){return"function"!=typeof this.props.customFilterComponent?(console.log("Couldn't find valid template."),r.createElement("div",null)):r.createElement(this.props.customFilterComponent,{changeFilter:this.props.changeFilter,results:this.props.results,currentResults:this.props.currentResults,placeholderText:this.props.placeholderText})}});e.exports=o},2039:function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t0&&(e=r.createElement("button",{type:"button",onClick:this.props.previous,style:this.props.useGriddleStyles?{color:"#222",border:"none",background:"none",margin:"0 0 0 10px"}:null},this.props.previousIconComponent,this.props.previousText)),this.props.currentPage!==this.props.maxPage-1&&(t=r.createElement("button",{type:"button",onClick:this.props.next,style:this.props.useGriddleStyles?{color:"#222",border:"none",background:"none",margin:"0 10px 0 0"}:null},this.props.nextText,this.props.nextIconComponent));var n=null,o=null,s=null;if(!0===this.props.useGriddleStyles){var a={float:"left",minHeight:"1px",marginTop:"5px"};s=i({textAlign:"right",width:"34%"},a),o=i({textAlign:"center",width:"33%"},a),n=i({width:"33%"},a)}for(var l=[],u=1;u<=this.props.maxPage;u++)l.push(r.createElement("option",{value:u,key:u},u));return r.createElement("div",{style:this.props.useGriddleStyles?{minHeight:"35px"}:null},r.createElement("div",{className:this.props.previousClassName,style:n},e),r.createElement("div",{className:"griddle-page",style:o},r.createElement("select",{value:this.props.currentPage+1,onChange:this.pageChange},l)," / ",this.props.maxPage),r.createElement("div",{className:this.props.nextClassName,style:s},t))}});e.exports=s},344:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=(n(3059),n(7024)),s=n(3560),a=n(7287),l=n(8583),u=n(1747),d=n(3220),c=n(2569),p=o({getDefaultProps:function(){return{isChildRow:!1,showChildren:!1,data:{},columnSettings:null,rowSettings:null,hasChildren:!1,useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,paddingHeight:null,rowHeight:null,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",onRowClick:null,multipleSelectionSettings:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null}},componentWillMount:function(){null!==this.props.onRowWillMount&&s(this.props.onRowWillMount)&&this.props.onRowWillMount(this)},componentWillUnmount:function(){null!==this.props.onRowWillUnmount&&s(this.props.onRowWillUnmount)&&this.props.onRowWillUnmount(this)},handleClick:function(e){null!==this.props.onRowClick&&s(this.props.onRowClick)?this.props.onRowClick(this,e):this.props.hasChildren&&this.props.toggleChildren()},handleMouseEnter:function(e){null!==this.props.onRowMouseEnter&&s(this.props.onRowMouseEnter)&&this.props.onRowMouseEnter(this,e)},handleMouseLeave:function(e){null!==this.props.onRowMouseLeave&&s(this.props.onRowMouseLeave)&&this.props.onRowMouseLeave(this,e)},handleSelectionChange:function(e){},handleSelectClick:function(e){this.props.multipleSelectionSettings.isMultipleSelection&&("checkbox"===e.target.type?this.props.multipleSelectionSettings.toggleSelectRow(this.props.data,this.refs.selected.checked):this.props.multipleSelectionSettings.toggleSelectRow(this.props.data,!this.refs.selected.checked))},verifyProps:function(){null===this.props.columnSettings&&console.error("gridRow: The columnSettings prop is null and it shouldn't be")},formatData:function(e){return"boolean"==typeof e?String(e):e},render:function(){var e=this;this.verifyProps();var t=this,n=null;this.props.useGriddleStyles&&(n={margin:"0px",padding:t.props.paddingHeight+"px 5px "+t.props.paddingHeight+"px 5px",height:t.props.rowHeight?this.props.rowHeight-2*t.props.paddingHeight+"px":null,backgroundColor:"#FFF",borderTopColor:"#DDD",color:"#222"});var o=this.props.columnSettings.getColumns(),p=a(o,[]),f=l({},this.props.data);u(f,p);var h,m,g=d(i.pick(f,c(o,"children"))).map((function(t,o){var i=null,s=e.props.columnSettings.getColumnMetadataByName(t[0]),a=0===o&&e.props.hasChildren&&!1===e.props.showChildren&&e.props.useGriddleIcons?r.createElement("span",{style:e.props.useGriddleStyles?{fontSize:"10px",marginRight:"5px"}:null},e.props.parentRowCollapsedComponent):0===o&&e.props.hasChildren&&e.props.showChildren&&e.props.useGriddleIcons?r.createElement("span",{style:e.props.useGriddleStyles?{fontSize:"10px"}:null},e.props.parentRowExpandedComponent):"";if(0===o&&e.props.isChildRow&&e.props.useGriddleStyles&&(n=l(n,{paddingLeft:10})),e.props.columnSettings.hasColumnMetadata()&&null!=s)if(void 0!==s.customComponent&&null!==s.customComponent){var u=r.createElement(s.customComponent,{data:t[1],rowData:f,metadata:s});i=r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,className:s.cssClassName,key:o,style:n},u)}else i=r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,className:s.cssClassName,key:o,style:n},a,e.formatData(t[1]));return i||r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,key:o,style:n},a,t[1])}));if(null!==this.props.onRowClick&&s(this.props.onRowClick)?(h=null,m=this.handleSelectClick):this.props.multipleSelectionSettings&&this.props.multipleSelectionSettings.isMultipleSelection?(h=this.handleSelectClick,m=null):(h=null,m=null),g&&this.props.multipleSelectionSettings&&this.props.multipleSelectionSettings.isMultipleSelection){this.props.multipleSelectionSettings.getSelectedRowIds();g.unshift(r.createElement("td",{key:"selection",style:n,className:"griddle-select griddle-select-cell",onClick:m},r.createElement("input",{type:"checkbox",checked:this.props.multipleSelectionSettings.getIsRowChecked(f),onChange:this.handleSelectionChange,ref:"selected"})))}var y=t.props.rowSettings&&t.props.rowSettings.getBodyRowMetadataClass(t.props.data)||"standard-row";return t.props.isChildRow?y="child-row":t.props.hasChildren&&(y=t.props.showChildren?this.props.parentRowExpandedClassName:this.props.parentRowCollapsedClassName),r.createElement("tr",{onClick:h,className:y},g)}});e.exports=p},3302:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=(n(3059),n(8718)),s=o({getDefaultProps:function(){return{useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,columnSettings:null,rowSettings:null,paddingHeight:null,rowHeight:null,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",onRowClick:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null,multipleSelectionSettings:null}},getInitialState:function(){return{data:{},showChildren:!1}},componentWillReceiveProps:function(){this.setShowChildren(!1)},toggleChildren:function(){this.setShowChildren(!1===this.state.showChildren)},setShowChildren:function(e){this.setState({showChildren:e})},verifyProps:function(){null===this.props.columnSettings&&console.error("gridRowContainer: The columnSettings prop is null and it shouldn't be")},render:function(){this.verifyProps();var e=this;if(void 0===this.props.data)return r.createElement("tbody",null);var t=[],n=this.props.columnSettings.getColumns();t.push(r.createElement(this.props.rowSettings.rowComponent,{useGriddleStyles:this.props.useGriddleStyles,isSubGriddle:this.props.isSubGriddle,data:this.props.rowSettings.isCustom?i(this.props.data,n):this.props.data,rowData:this.props.rowSettings.isCustom?this.props.data:null,columnSettings:this.props.columnSettings,rowSettings:this.props.rowSettings,hasChildren:e.props.hasChildren,toggleChildren:e.toggleChildren,showChildren:e.state.showChildren,key:e.props.uniqueId+"_base_row",useGriddleIcons:e.props.useGriddleIcons,parentRowExpandedClassName:this.props.parentRowExpandedClassName,parentRowCollapsedClassName:this.props.parentRowCollapsedClassName,parentRowExpandedComponent:this.props.parentRowExpandedComponent,parentRowCollapsedComponent:this.props.parentRowCollapsedComponent,paddingHeight:e.props.paddingHeight,rowHeight:e.props.rowHeight,onRowClick:e.props.onRowClick,onRowMouseEnter:e.props.onRowMouseEnter,onRowMouseLeave:e.props.onRowMouseLeave,multipleSelectionSettings:this.props.multipleSelectionSettings,onRowWillMount:e.props.onRowWillMount,onRowWillUnmount:e.props.onRowWillUnmount}));var o=null;return e.state.showChildren&&(o=e.props.hasChildren&&this.props.data.children.map((function(t,n){var o=e.props.rowSettings.getRowKey(t,n);if(void 0!==t.children){var i=e.constructor.Griddle;return r.createElement("tr",{key:o,style:{paddingLeft:5}},r.createElement("td",{colSpan:e.props.columnSettings.getVisibleColumnCount(),className:"griddle-parent",style:e.props.useGriddleStyles?{border:"none",padding:"0 0 0 5px"}:null},r.createElement(i,{rowMetadata:{key:"id"},isSubGriddle:!0,results:[t],columns:e.props.columnSettings.getColumns(),tableClassName:e.props.tableClassName,parentRowExpandedClassName:e.props.parentRowExpandedClassName,parentRowCollapsedClassName:e.props.parentRowCollapsedClassName,showTableHeading:!1,showPager:!1,columnMetadata:e.props.columnSettings.columnMetadata,parentRowExpandedComponent:e.props.parentRowExpandedComponent,parentRowCollapsedComponent:e.props.parentRowCollapsedComponent,paddingHeight:e.props.paddingHeight,rowHeight:e.props.rowHeight})))}return r.createElement(e.props.rowSettings.rowComponent,{useGriddleStyles:e.props.useGriddleStyles,isSubGriddle:e.props.isSubGriddle,data:t,columnSettings:e.props.columnSettings,isChildRow:!0,columnMetadata:e.props.columnSettings.columnMetadata,key:o})}))),!1===e.props.hasChildren?t[0]:r.createElement("tbody",null,e.state.showChildren?t.concat(o):t)}});e.exports=s},7033:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=n(4721),s=n(2569),a=n(3311),l=o({getDefaultProps:function(){return{columns:[],columnMetadata:[],selectedColumns:[],settingsText:"",maxRowsText:"",resultsPerPage:0,enableToggleCustom:!1,useCustomComponent:!1,useGriddleStyles:!0,toggleCustomComponent:function(){}}},setPageSize:function(e){var t=parseInt(e.target.value,10);this.props.setPageSize(t)},handleChange:function(e){var t=e.target.dataset?e.target.dataset.name:e.target.getAttribute("data-name");!0===e.target.checked&&!1===i(this.props.selectedColumns,t)?(this.props.selectedColumns.push(t),this.props.setColumns(this.props.selectedColumns)):this.props.setColumns(s(this.props.selectedColumns,t))},render:function(){var e=this,t=[];!1===e.props.useCustomComponent&&(t=this.props.columns.map((function(t,n){var o=i(e.props.selectedColumns,t),s=a(e.props.columnMetadata,{columnName:t}),l=t;return void 0!==s&&void 0!==s.displayName&&null!=s.displayName&&(l=s.displayName),void 0!==s&&null!=s&&s.locked?r.createElement("div",{className:"column checkbox"},r.createElement("label",null,r.createElement("input",{type:"checkbox",disabled:!0,name:"check",checked:o,"data-name":t}),l)):void 0!==s&&null!=s&&void 0!==s.visible&&!1===s.visible?null:r.createElement("div",{className:"griddle-column-selection checkbox",key:t,style:e.props.useGriddleStyles?{float:"left",width:"20%"}:null},r.createElement("label",null,r.createElement("input",{type:"checkbox",name:"check",onChange:e.handleChange,checked:o,"data-name":t}),l))})));var n=e.props.enableToggleCustom?r.createElement("div",{className:"form-group"},r.createElement("label",{htmlFor:"maxRows"},r.createElement("input",{type:"checkbox",checked:this.props.useCustomComponent,onChange:this.props.toggleCustomComponent})," ",this.props.enableCustomFormatText)):"",o=this.props.showSetPageSize?r.createElement("div",null,r.createElement("label",{htmlFor:"maxRows"},this.props.maxRowsText,":",r.createElement("select",{onChange:this.setPageSize,value:this.props.resultsPerPage},r.createElement("option",{value:"5"},"5"),r.createElement("option",{value:"10"},"10"),r.createElement("option",{value:"25"},"25"),r.createElement("option",{value:"50"},"50"),r.createElement("option",{value:"100"},"100")))):"";return r.createElement("div",{className:"griddle-settings",style:this.props.useGriddleStyles?{backgroundColor:"#FFF",border:"1px solid #DDD",color:"#222",padding:"10px",marginBottom:"10px"}:null},r.createElement("h6",null,this.props.settingsText),r.createElement("div",{className:"griddle-columns",style:this.props.useGriddleStyles?{clear:"both",display:"table",width:"100%",borderBottom:"1px solid #EDEDED",marginBottom:"10px"}:null},t),o,n)}});e.exports=l},1277:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=n(4769),s=n(3302),a=(n(3059),n(5203),o({getDefaultProps:function(){return{data:[],columnSettings:null,rowSettings:null,sortSettings:null,multipleSelectionSettings:null,className:"",enableInfiniteScroll:!1,nextPage:null,hasMorePages:!1,useFixedHeader:!1,useFixedLayout:!0,paddingHeight:null,rowHeight:null,filterByColumn:null,infiniteScrollLoadTreshold:null,bodyHeight:null,useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",externalLoadingComponent:null,externalIsLoading:!1,onRowClick:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null}},getInitialState:function(){return{scrollTop:0,scrollHeight:this.props.bodyHeight,clientHeight:this.props.bodyHeight}},componentDidMount:function(){this.gridScroll()},componentDidUpdate:function(e,t){this.gridScroll()},gridScroll:function(){if(this.props.enableInfiniteScroll&&!this.props.externalIsLoading){var e=this.refs.scrollable,t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;if(null!==this.props.rowHeight&&this.state.scrollTop!==t&&Math.abs(this.state.scrollTop-t)>=this.getAdjustedRowHeight()){var o={scrollTop:t,scrollHeight:n,clientHeight:r};this.setState(o)}.6*(n-(t+r)-this.props.infiniteScrollLoadTreshold)<=this.props.infiniteScrollLoadTreshold&&this.props.nextPage()}},verifyProps:function(){null===this.props.columnSettings&&console.error("gridTable: The columnSettings prop is null and it shouldn't be"),null===this.props.rowSettings&&console.error("gridTable: The rowSettings prop is null and it shouldn't be")},getAdjustedRowHeight:function(){return this.props.rowHeight+2*this.props.paddingHeight},getNodeContent:function(){this.verifyProps();var e=this,t=!1;if(!this.props.externalIsLoading||this.props.enableInfiniteScroll){var n=e.props.data,o=null,i=null;if(this.props.enableInfiniteScroll&&null!==this.props.rowHeight&&void 0!==this.refs.scrollable){var a=e.getAdjustedRowHeight(),l=Math.ceil(e.state.clientHeight/a),u=Math.max(0,Math.floor(e.state.scrollTop/a)-.25*l),d=Math.min(u+1.25*l,this.props.data.length-1);n=n.slice(u,d+1);var c={height:u*a+"px"};o=r.createElement("tr",{key:"above-"+c.height,style:c});var p={height:(this.props.data.length-d)*a+"px"};i=r.createElement("tr",{key:"below-"+p.height,style:p})}var f=n.map((function(n,o){var i=void 0!==n.children&&n.children.length>0,a=e.props.rowSettings.getRowKey(n,o);return i&&(t=i),r.createElement(s,{useGriddleStyles:e.props.useGriddleStyles,isSubGriddle:e.props.isSubGriddle,parentRowExpandedClassName:e.props.parentRowExpandedClassName,parentRowCollapsedClassName:e.props.parentRowCollapsedClassName,parentRowExpandedComponent:e.props.parentRowExpandedComponent,parentRowCollapsedComponent:e.props.parentRowCollapsedComponent,data:n,key:a+"-container",uniqueId:a,columnSettings:e.props.columnSettings,rowSettings:e.props.rowSettings,paddingHeight:e.props.paddingHeight,multipleSelectionSettings:e.props.multipleSelectionSettings,rowHeight:e.props.rowHeight,hasChildren:i,tableClassName:e.props.className,onRowClick:e.props.onRowClick,onRowMouseEnter:e.props.onRowMouseEnter,onRowMouseLeave:e.props.onRowMouseLeave,onRowWillMount:e.props.onRowWillMount,onRowWillUnmount:e.props.onRowWillUnmount})}));if(this.props.showNoData){var h=this.props.columnSettings.getVisibleColumnCount();f.push(r.createElement("tr",{key:"no-data-section"},r.createElement("td",{colSpan:h},this.props.noDataSection)))}return o&&f.unshift(o),i&&f.push(i),{nodes:f,anyHasChildren:t}}return null},render:function(){var e=[],t=!1,n=this.getNodeContent();n&&(e=n.nodes,t=n.anyHasChildren);var o=null,s=null,a={width:"100%"};if(this.props.useFixedLayout&&(a.tableLayout="fixed"),this.props.enableInfiniteScroll&&(o={position:"relative",overflowY:"scroll",height:this.props.bodyHeight+"px",width:"100%"}),this.props.externalIsLoading){var l,u=null;this.props.useGriddleStyles&&(u={textAlign:"center",paddingBottom:"40px"}),l=this.props.columnSettings.getVisibleColumnCount();var d=this.props.externalLoadingComponent?r.createElement(this.props.externalLoadingComponent,null):r.createElement("div",null,"Loading...");s=r.createElement("tbody",null,r.createElement("tr",null,r.createElement("td",{style:u,colSpan:l},d)))}var c=this.props.showTableHeading?r.createElement(i,{useGriddleStyles:this.props.useGriddleStyles,useGriddleIcons:this.props.useGriddleIcons,sortSettings:this.props.sortSettings,multipleSelectionSettings:this.props.multipleSelectionSettings,columnSettings:this.props.columnSettings,filterByColumn:this.props.filterByColumn,rowSettings:this.props.rowSettings}):void 0;t||(e=r.createElement("tbody",null,e));var p=r.createElement("tbody",null);if(this.props.showPager){var f=this.props.useGriddleStyles?{padding:"0px",backgroundColor:"#EDEDED",border:"0px",color:"#222",height:this.props.showNoData?"20px":null}:null;p=r.createElement("tbody",null,r.createElement("tr",null,r.createElement("td",{colSpan:this.props.multipleSelectionSettings.isMultipleSelection?this.props.columnSettings.getVisibleColumnCount()+1:this.props.columnSettings.getVisibleColumnCount(),style:f,className:"footer-container"},this.props.showNoData?null:this.props.pagingContent)))}return this.props.useFixedHeader?(this.props.useGriddleStyles&&(a.tableLayout="fixed"),r.createElement("div",null,r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},c),r.createElement("div",{ref:"scrollable",onScroll:this.gridScroll,style:o},r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},e,s,p)))):r.createElement("div",{ref:"scrollable",onScroll:this.gridScroll,style:o},r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},c,e,s,p))}}));e.exports=a},4769:function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t=0)return!0}return!1}))},defaultColumnFilter:function(e,t,n){var r=M(I(n)?n:[n],(function(e){return(e||"").toLowerCase()}));return k(b.getObjectValues(t),(function(e){return e=e.toString().toLowerCase(),k(r,(function(t){return e.indexOf(t)>=0}))}))},filterByColumnFilters:function(e){var t=this.props.columnFilterFunc||this.defaultColumnFilter,n=Object.keys(e).reduce((function(n,r){return T(n,(function(n){var o=b.getAt(n,r||""),i=e[r];return t(r||"",o,i)}))}),this.props.results),r={columnFilters:e};e?(r.filteredResults=n,r.maxPage=this.getMaxPage(r.filteredResults)):this.state.filter?r.filteredResults=this.props.useCustomFilterer?this.props.customFilterer(this.props.results,filter):this.defaultFilter(this.props.results,filter):r.filteredResults=null,this.setState(r)},filterByColumn:function(e,t){var n=this.state.columnFilters;if(n.hasOwnProperty(t)&&!e)n=P(n,t);else{var r={};r[t]=e,n=R({},n,r)}this.filterByColumnFilters(n)},setFilter:function(e){var t=arguments.length<=1||void 0===arguments[1]?null:arguments[1];if(this.props.useExternal)this.props.externalSetFilter(e);else{var n=this,r={page:0,filter:e};r.filteredResults=this.props.useCustomFilterer?this.props.customFilterer(t||this.props.results,e):this.defaultFilter(t||this.props.results,e),r.maxPage=n.getMaxPage(r.filteredResults),(D(e)||x(e)||A(e))&&(r.filter=e,r.filteredResults=null),n.setState(r),this._resetSelectedRows()}},setPageSize:function(e){if(this.props.useExternal)return this.setState({resultsPerPage:e}),void this.props.externalSetPageSize(e);this.state.resultsPerPage=e,this.setMaxPage()},toggleColumnChooser:function(){this.setState({showColumnChooser:!this.state.showColumnChooser})},isNullOrUndefined:function(e){return null==e},shouldUseCustomRowComponent:function(){return this.isNullOrUndefined(this.state.useCustomRowComponent)?this.props.useCustomRowComponent:this.state.useCustomRowComponent},shouldUseCustomGridComponent:function(){return this.isNullOrUndefined(this.state.useCustomGridComponent)?this.props.useCustomGridComponent:this.state.useCustomGridComponent},toggleCustomComponent:function(){"grid"===this.state.customComponentType?this.setState({useCustomGridComponent:!this.shouldUseCustomGridComponent()}):"row"===this.state.customComponentType&&this.setState({useCustomRowComponent:!this.shouldUseCustomRowComponent()})},getMaxPage:function(e,t){return this.props.useExternal?this.props.externalMaxPage:(t||(t=(e||this.getCurrentResults()).length),Math.ceil(t/this.state.resultsPerPage))},setMaxPage:function(e){var t=this.getMaxPage(e);this.state.maxPage!==t&&this.setState({page:0,maxPage:t,filteredColumns:this.columnSettings.filteredColumns})},setPage:function(e){if(this.props.useExternal)this.props.externalSetPage(e);else{if(e*this.state.resultsPerPage<=this.state.resultsPerPage*this.state.maxPage){var t={page:e};this.setState(t)}this.props.enableInfiniteScroll&&this.setState({isSelectAllChecked:!1})}},setColumns:function(e){this.columnSettings.filteredColumns=I(e)?e:[e],this.setState({filteredColumns:this.columnSettings.filteredColumns})},nextPage:function(){var e=this.getCurrentPage();e0&&this.setPage(e-1)},changeSort:function(e){if(!1!==this.props.enableSort){if(this.props.useExternal){var t=this.props.externalSortColumn!==e||!this.props.externalSortAscending;return this.setState({sortColumn:e,sortDirection:t?"asc":"desc"}),void this.props.externalChangeSort(e,t)}var n=C(this.props.columnMetadata,{columnName:e})||{},r=n.sortDirectionCycle?n.sortDirectionCycle:[null,"asc","desc"],o=r.indexOf(this.state.sortDirection&&e===this.state.sortColumn?this.state.sortDirection:null),i={page:0,sortColumn:e,sortDirection:r[o=(o+1)%r.length]?r[o]:null};this.setState(i)}},componentWillReceiveProps:function(e){if(e.results!==this.props.results&&this.setFilter(this.state.filter,e.results),this.setMaxPage(e.results),e.resultsPerPage!==this.props.resultsPerPage&&this.setPageSize(e.resultsPerPage),this.columnSettings.columnMetadata=e.columnMetadata,e.results.length>0){var t=b.keys(e.results[0]);this.columnSettings.allColumns.length==t.length&&this.columnSettings.allColumns.every((function(e,n){return e===t[n]}))||(this.columnSettings.allColumns=t)}else this.columnSettings.allColumns.length>0&&(this.columnSettings.allColumns=[]);if(e.selectedRowIds){var n=this.getDataForRender(this.getCurrentResults(e.results),this.columnSettings.getColumns(),!0);this.setState({isSelectAllChecked:this._getAreAllRowsChecked(e.selectedRowIds,M(n,this.props.uniqueIdentifier)),selectedRowIds:e.selectedRowIds})}},getInitialState:function(){return{maxPage:0,page:0,filteredResults:null,filteredColumns:[],filter:"",columnFilters:{},resultsPerPage:this.props.resultsPerPage||5,showColumnChooser:!1,isSelectAllChecked:!1,selectedRowIds:this.props.selectedRowIds}},componentWillMount:function(){this.verifyExternal(),this.verifyCustom(),this.columnSettings=new y(this.props.results.length>0?b.keys(this.props.results[0]):[],this.props.columns,this.props.childrenColumnName,this.props.columnMetadata,this.props.metadataColumns),this.rowSettings=new v(this.props.rowMetadata,this.props.useCustomTableRowComponent&&this.props.customTableRowComponent?this.props.customTableRowComponent:p,this.props.useCustomTableRowComponent),this.props.initialSort&&(this.props.useExternal?this.setState({sortColumn:this.props.externalSortColumn,sortDirection:this.props.externalSortAscending?"asc":"desc"}):this.changeSort(this.props.initialSort)),this.setMaxPage(),this.shouldUseCustomGridComponent()?this.setState({customComponentType:"grid"}):this.shouldUseCustomRowComponent()?this.setState({customComponentType:"row"}):this.setState({filteredColumns:this.columnSettings.filteredColumns})},componentDidMount:function(){if(this.props.componentDidMount&&"function"==typeof this.props.componentDidMount)return this.props.componentDidMount()},componentDidUpdate:function(){if(this.props.componentDidUpdate&&"function"==typeof this.props.componentDidUpdate)return this.props.componentDidUpdate(this.state)},verifyExternal:function(){!0===this.props.useExternal&&(null===this.props.externalSetPage&&console.error("useExternal is set to true but there is no externalSetPage function specified."),null===this.props.externalChangeSort&&console.error("useExternal is set to true but there is no externalChangeSort function specified."),null===this.props.externalSetFilter&&console.error("useExternal is set to true but there is no externalSetFilter function specified."),null===this.props.externalSetPageSize&&console.error("useExternal is set to true but there is no externalSetPageSize function specified."),null===this.props.externalMaxPage&&console.error("useExternal is set to true but externalMaxPage is not set."),null===this.props.externalCurrentPage&&console.error("useExternal is set to true but externalCurrentPage is not set. Griddle will not page correctly without that property when using external data."))},verifyCustom:function(){!0===this.props.useCustomGridComponent&&null===this.props.customGridComponent&&console.error("useCustomGridComponent is set to true but no custom component was specified."),!0===this.props.useCustomRowComponent&&null===this.props.customRowComponent&&console.error("useCustomRowComponent is set to true but no custom component was specified."),!0===this.props.useCustomGridComponent&&!0===this.props.useCustomRowComponent&&console.error("Cannot currently use both customGridComponent and customRowComponent."),!0===this.props.useCustomFilterer&&null===this.props.customFilterer&&console.error("useCustomFilterer is set to true but no custom filter function was specified."),!0===this.props.useCustomFilterComponent&&null===this.props.customFilterComponent&&console.error("useCustomFilterComponent is set to true but no customFilterComponent was specified.")},getDataForRender:function(e,t,n){var r=this,o=this;if(!this.props.useExternal){if(""!==this.state.sortColumn){var i,s=this.state.sortColumn,a=T(this.props.columnMetadata,{columnName:s}),l={columns:[],orders:[]};if(a.length>0&&(i=a[0].hasOwnProperty("customCompareFn")&&a[0].customCompareFn,a[0].multiSort&&(l=a[0].multiSort)),this.state.sortDirection)if("function"==typeof i)2===i.length?(e=e.sort((function(e,t){return i(j(e,s),j(t,s))})),"desc"===this.state.sortDirection&&e.reverse()):1===i.length&&(e=N(e,(function(e){return i(j(e,s))}),[this.state.sortDirection]));else{var u=[function(e){return(j(e,s)||"").toString().toLowerCase()}],d=[this.state.sortDirection];l.columns.forEach((function(e,t){u.push((function(t){return(j(t,e)||"").toString().toLowerCase()})),"asc"===l.orders[t]||"desc"===l.orders[t]?d.push(l.orders[t]):d.push(r.state.sortDirection)})),e=N(e,u,d)}}var c=this.getCurrentPage();if(!this.props.useExternal&&n&&this.state.resultsPerPage*(c+1)<=this.state.resultsPerPage*this.state.maxPage&&c>=0)if(this.isInfiniteScrollEnabled())e=S(e,(c+1)*this.state.resultsPerPage);else{var p=E(e,c*this.state.resultsPerPage);e=(_||F)(p,p.length-this.state.resultsPerPage)}}for(var f=[],h=0;h0&&(m.children=o.getDataForRender(m[o.props.childrenColumnName],t,!1),"children"!==o.props.childrenColumnName&&delete m[o.props.childrenColumnName]),f.push(m)}return f},getCurrentResults:function(e){return this.state.filteredResults||e||this.props.results},getCurrentPage:function(){return this.props.externalCurrentPage||this.state.page},getCurrentSort:function(){return this.props.useExternal?this.props.externalSortColumn:this.state.sortColumn},getCurrentSortAscending:function(){return this.props.useExternal?this.props.externalSortAscending:"asc"===this.state.sortDirection},getCurrentMaxPage:function(){return this.props.useExternal?this.props.externalMaxPage:this.state.maxPage},getSortObject:function(){return{enableSort:this.props.enableSort,changeSort:this.changeSort,sortColumn:this.getCurrentSort(),sortAscending:this.getCurrentSortAscending(),sortDirection:this.state.sortDirection,sortAscendingClassName:this.props.sortAscendingClassName,sortDescendingClassName:this.props.sortDescendingClassName,sortAscendingComponent:this.props.sortAscendingComponent,sortDescendingComponent:this.props.sortDescendingComponent,sortDefaultComponent:this.props.sortDefaultComponent}},_toggleSelectAll:function(){var e=this.getDataForRender(this.getCurrentResults(),this.columnSettings.getColumns(),!0),t=!this.state.isSelectAllChecked,n=JSON.parse(JSON.stringify(this.state.selectedRowIds)),r=this;w(e,(function(e){r._updateSelectedRowIds(e[r.props.uniqueIdentifier],n,t)}),this),this.setState({isSelectAllChecked:t,selectedRowIds:n}),this.props.onSelectionChange&&this.props.onSelectionChange(n,t)},_toggleSelectRow:function(e,t){var n=this.getDataForRender(this.getCurrentResults(),this.columnSettings.getColumns(),!0),r=JSON.parse(JSON.stringify(this.state.selectedRowIds));this._updateSelectedRowIds(e[this.props.uniqueIdentifier],r,t);var o=this._getAreAllRowsChecked(r,M(n,this.props.uniqueIdentifier));this.setState({isSelectAllChecked:o,selectedRowIds:r}),this.props.onSelectionChange&&this.props.onSelectionChange(r,o)},_updateSelectedRowIds:function(e,t,n){n?void 0===C(t,(function(t){return e===t}))&&t.push(e):t.splice(t.indexOf(e),1)},_getIsSelectAllChecked:function(){return this.state.isSelectAllChecked},_getAreAllRowsChecked:function(e,t){return t.length===O(t,e).length},_getIsRowChecked:function(e){return this.state.selectedRowIds.indexOf(e[this.props.uniqueIdentifier])>-1},getSelectedRowIds:function(){return this.state.selectedRowIds},_resetSelectedRows:function(){this.setState({isSelectAllChecked:!1,selectedRowIds:[]})},getMultipleSelectionObject:function(){return{isMultipleSelection:!C(this.props.results,(function(e){return"children"in e}))&&this.props.isMultipleSelection,toggleSelectAll:this._toggleSelectAll,getIsSelectAllChecked:this._getIsSelectAllChecked,toggleSelectRow:this._toggleSelectRow,getSelectedRowIds:this.getSelectedRowIds,getIsRowChecked:this._getIsRowChecked}},isInfiniteScrollEnabled:function(){return!this.props.useCustomPagerComponent&&this.props.enableInfiniteScroll},getClearFixStyles:function(){return{clear:"both",display:"table",width:"100%"}},getSettingsStyles:function(){return{float:"left",width:"50%",textAlign:"right"}},getFilterStyles:function(){return{float:"left",width:"50%",textAlign:"left",color:"#222",minHeight:"1px"}},getFilter:function(){return this.props.showFilter&&!1===this.shouldUseCustomGridComponent()?this.props.useCustomFilterComponent?o.createElement(g,{changeFilter:this.setFilter,placeholderText:this.props.filterPlaceholderText,customFilterComponent:this.props.customFilterComponent,results:this.props.results,currentResults:this.getCurrentResults()}):o.createElement(l,{changeFilter:this.setFilter,placeholderText:this.props.filterPlaceholderText}):""},getSettings:function(){return this.props.showSettings?o.createElement("button",{type:"button",className:this.props.settingsToggleClassName,onClick:this.toggleColumnChooser,style:this.props.useGriddleStyles?{background:"none",border:"none",padding:0,margin:0,fontSize:14}:null},this.props.settingsText,this.props.settingsIconComponent):""},getTopSection:function(e,t){if(!1===this.props.showFilter&&!1===this.props.showSettings)return"";var n=null,r=null,i=null;return this.props.useGriddleStyles&&(n=this.getFilterStyles(),r=this.getSettingsStyles(),i=this.getClearFixStyles()),o.createElement("div",{className:"top-section",style:i},o.createElement("div",{className:"griddle-filter",style:n},e),o.createElement("div",{className:"griddle-settings-toggle",style:r},t))},getPagingSection:function(e,t){if(!1!==(this.props.showPager&&!this.isInfiniteScrollEnabled()&&!this.shouldUseCustomGridComponent()))return o.createElement("div",{className:"griddle-footer"},this.props.useCustomPagerComponent?o.createElement(m,{customPagerComponentOptions:this.props.customPagerComponentOptions,next:this.nextPage,previous:this.previousPage,currentPage:e,maxPage:t,setPage:this.setPage,nextText:this.props.nextText,previousText:this.props.previousText,customPagerComponent:this.props.customPagerComponent}):o.createElement(u,{useGriddleStyles:this.props.useGriddleStyles,next:this.nextPage,previous:this.previousPage,nextClassName:this.props.nextClassName,nextIconComponent:this.props.nextIconComponent,previousClassName:this.props.previousClassName,previousIconComponent:this.props.previousIconComponent,currentPage:e,maxPage:t,setPage:this.setPage,nextText:this.props.nextText,previousText:this.props.previousText}))},getColumnSelectorSection:function(e,t){return this.state.showColumnChooser?o.createElement(d,{columns:e,selectedColumns:t,setColumns:this.setColumns,settingsText:this.props.settingsText,settingsIconComponent:this.props.settingsIconComponent,maxRowsText:this.props.maxRowsText,setPageSize:this.setPageSize,showSetPageSize:!this.shouldUseCustomGridComponent(),resultsPerPage:this.state.resultsPerPage,enableToggleCustom:this.props.enableToggleCustom,toggleCustomComponent:this.toggleCustomComponent,useCustomComponent:this.shouldUseCustomRowComponent()||this.shouldUseCustomGridComponent(),useGriddleStyles:this.props.useGriddleStyles,enableCustomFormatText:this.props.enableCustomFormatText,columnMetadata:this.props.columnMetadata}):""},getCustomGridSection:function(){return o.createElement(this.props.customGridComponent,r({data:this.props.results,className:this.props.customGridComponentClassName},this.props.gridMetadata))},getCustomRowSection:function(e,t,n,r,i){return o.createElement("div",null,o.createElement(h,{data:e,columns:t,metadataColumns:n,globalData:i,className:this.props.customRowComponentClassName,customComponent:this.props.customRowComponent,style:this.props.useGriddleStyles?this.getClearFixStyles():null}),this.props.showPager&&r)},getStandardGridSection:function(e,t,n,r,i){var s=this.getSortObject(),l=this.getMultipleSelectionObject(),u=this.shouldShowNoDataSection(e),d=this.getNoDataSection();return o.createElement("div",{className:"griddle-body"},o.createElement(a,{useGriddleStyles:this.props.useGriddleStyles,noDataSection:d,showNoData:u,columnSettings:this.columnSettings,rowSettings:this.rowSettings,sortSettings:s,multipleSelectionSettings:l,filterByColumn:this.filterByColumn,isSubGriddle:this.props.isSubGriddle,useGriddleIcons:this.props.useGriddleIcons,useFixedLayout:this.props.useFixedLayout,showPager:this.props.showPager,pagingContent:r,data:e,className:this.props.tableClassName,enableInfiniteScroll:this.isInfiniteScrollEnabled(),nextPage:this.nextPage,showTableHeading:this.props.showTableHeading,useFixedHeader:this.props.useFixedHeader,parentRowCollapsedClassName:this.props.parentRowCollapsedClassName,parentRowExpandedClassName:this.props.parentRowExpandedClassName,parentRowCollapsedComponent:this.props.parentRowCollapsedComponent,parentRowExpandedComponent:this.props.parentRowExpandedComponent,bodyHeight:this.props.bodyHeight,paddingHeight:this.props.paddingHeight,rowHeight:this.props.rowHeight,infiniteScrollLoadTreshold:this.props.infiniteScrollLoadTreshold,externalLoadingComponent:this.props.externalLoadingComponent,externalIsLoading:this.props.externalIsLoading,hasMorePages:i,onRowClick:this.props.onRowClick,onRowMouseEnter:this.props.onRowMouseEnter,onRowMouseLeave:this.props.onRowMouseLeave,onRowWillMount:this.props.onRowWillMount,onRowWillUnmount:this.props.onRowWillUnmount}))},getContentSection:function(e,t,n,r,o,i){return this.shouldUseCustomGridComponent()&&null!==this.props.customGridComponent?this.getCustomGridSection():this.shouldUseCustomRowComponent()?this.getCustomRowSection(e,t,n,r,i):this.getStandardGridSection(e,t,n,r,o)},getNoDataSection:function(){return null!=this.props.customNoDataComponent?o.createElement("div",{className:this.props.noDataClassName},o.createElement(this.props.customNoDataComponent,this.props.customNoDataComponentProps)):o.createElement(c,{noDataMessage:this.props.noDataMessage})},shouldShowNoDataSection:function(e){return!this.props.allowEmptyGrid&&(!1===this.props.useExternal&&(void 0===e||0===e.length)||!0===this.props.useExternal&&!1===this.props.externalIsLoading&&0===e.length)},render:function(){var e=this.getCurrentResults(),t=(this.props.tableClassName,this.getFilter()),n=this.getSettings(),r=this.getTopSection(t,n),i=[],s=this.columnSettings.getColumns(),a=this.getDataForRender(e,s,!0),l=this.columnSettings.getMetadataColumns();this.props.columnMetadata?w(this.props.columnMetadata,(function(e){"boolean"==typeof e.visible&&!1===e.visible||i.push(e.columnName)})):i=b.keys(P(e[0],l)),i=this.columnSettings.orderColumns(i);var u=this.getCurrentPage(),d=this.getCurrentMaxPage(),c=u+10?"griddle "+this.props.gridClassName:"griddle";return m+=this.shouldUseCustomRowComponent()?" griddle-custom":"",o.createElement("div",{className:m},r,h,o.createElement("div",{className:"griddle-container",style:this.props.useGriddleStyles&&!this.props.isSubGriddle?{border:"1px solid #DDD"}:null},f))}});f.Griddle=e.exports=L},5203:function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n-1}},1196:function(e){e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r=200&&(c=l,p=!1,t=new r(t));e:for(;++d0&&i(d)?n>1?e(d,n-1,i,s,a):r(a,d):s||(a[a.length]=d)}return a}},8483:function(e,t,n){var r=n(5063)();e.exports=r},7816:function(e,t,n){var r=n(8483),o=n(3674);e.exports=function(e,t){return e&&r(e,t,o)}},7786:function(e,t,n){var r=n(1811),o=n(327);e.exports=function(e,t){for(var n=0,i=(t=r(t,e)).length;null!=e&&n=120&&y.length>=120)?new r(f&&y):void 0}y=e[0];var v=-1,b=h[0];e:for(;++vo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Array(o);++rt||s&&a&&u&&!l&&!d||o&&a&&u||!n&&u||!i)return 1;if(!o&&!s&&!d&&e=l?u:u*("desc"==n[o]?-1:1)}return e.index-t.index}},278:function(e){e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n1?n[i-1]:void 0,a=i>2?n[2]:void 0;for(s=e.length>3&&"function"==typeof s?(i--,s):void 0,a&&o(n[0],n[1],a)&&(s=i<3?void 0:s,i=1),t=Object(t);++r-1?a[l?t[u]:u]:void 0}}},3866:function(e,t,n){var r=n(8969),o=n(4160),i=n(8776),s=n(9294);e.exports=function(e){return function(t){var n=o(t);return"[object Map]"==n?i(t):"[object Set]"==n?s(t):r(t,e(t))}}},696:function(e,t,n){var r=n(8630);e.exports=function(e){return r(e)?void 0:e}},8777:function(e,t,n){var r=n(852),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},7114:function(e,t,n){var r=n(8668),o=n(2908),i=n(4757);e.exports=function(e,t,n,s,a,l){var u=1&n,d=e.length,c=t.length;if(d!=c&&!(u&&c>d))return!1;var p=l.get(e),f=l.get(t);if(p&&f)return p==t&&f==e;var h=-1,m=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++h-1&&e%1==0&&e-1}},4705:function(e,t,n){var r=n(8470);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},4785:function(e,t,n){var r=n(1989),o=n(8407),i=n(7071);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},1285:function(e,t,n){var r=n(5050);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},6e3:function(e,t,n){var r=n(5050);e.exports=function(e){return r(this,e).get(e)}},9916:function(e,t,n){var r=n(5050);e.exports=function(e){return r(this,e).has(e)}},5265:function(e,t,n){var r=n(5050);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},8776:function(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},2634:function(e){e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},4523:function(e,t,n){var r=n(8306);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},4536:function(e,t,n){var r=n(852)(Object,"create");e.exports=r},6916:function(e,t,n){var r=n(5569)(Object.keys,Object);e.exports=r},3498:function(e){e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},1167:function(e,t,n){e=n.nmd(e);var r=n(1957),o=t&&!t.nodeType&&t,i=o&&e&&!e.nodeType&&e,s=i&&i.exports===o&&r.process,a=function(){try{var e=i&&i.require&&i.require("util").types;return e||s&&s.binding&&s.binding("util")}catch(e){}}();e.exports=a},2333:function(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},5569:function(e){e.exports=function(e,t){return function(n){return e(t(n))}}},5357:function(e,t,n){var r=n(6874),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,s=-1,a=o(i.length-t,0),l=Array(a);++s0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},7465:function(e,t,n){var r=n(8407);e.exports=function(){this.__data__=new r,this.size=0}},3779:function(e){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},7599:function(e){e.exports=function(e){return this.__data__.get(e)}},4758:function(e){e.exports=function(e){return this.__data__.has(e)}},4309:function(e,t,n){var r=n(8407),o=n(7071),i=n(3369);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!o||s.length<199)return s.push([e,t]),this.size=++n.size,this;n=this.__data__=new i(s)}return n.set(e,t),this.size=n.size,this}},2351:function(e){e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r2?t[2]:void 0;for(u&&i(t[0],t[1],u)&&(r=1);++n-1:!!d&&r(e,t,n)>-1}},8125:function(e,t,n){var r=n(4259);e.exports=function(e){return(null==e?0:e.length)?r(e,0,-1):[]}},5325:function(e,t,n){var r=n(9932),o=n(7556),i=n(5976),s=n(4387),a=i((function(e){var t=r(e,s);return t.length&&t[0]===e[0]?o(t):[]}));e.exports=a},5694:function(e,t,n){var r=n(9454),o=n(7005),i=Object.prototype,s=i.hasOwnProperty,a=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&s.call(e,"callee")&&!a.call(e,"callee")};e.exports=l},1469:function(e){var t=Array.isArray;e.exports=t},8612:function(e,t,n){var r=n(3560),o=n(1780);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},9246:function(e,t,n){var r=n(8612),o=n(7005);e.exports=function(e){return o(e)&&r(e)}},4144:function(e,t,n){e=n.nmd(e);var r=n(5639),o=n(5062),i=t&&!t.nodeType&&t,s=i&&e&&!e.nodeType&&e,a=s&&s.exports===i?r.Buffer:void 0,l=(a?a.isBuffer:void 0)||o;e.exports=l},1609:function(e,t,n){var r=n(280),o=n(4160),i=n(5694),s=n(1469),a=n(8612),l=n(4144),u=n(5726),d=n(6719),c=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(a(e)&&(s(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||d(e)||i(e)))return!e.length;var t=o(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(u(e))return!r(e).length;for(var n in e)if(c.call(e,n))return!1;return!0}},3560:function(e,t,n){var r=n(4239),o=n(3218);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},1780:function(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},6688:function(e,t,n){var r=n(5588),o=n(1717),i=n(1167),s=i&&i.isMap,a=s?o(s):r;e.exports=a},5220:function(e){e.exports=function(e){return null===e}},3218:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},7005:function(e){e.exports=function(e){return null!=e&&"object"==typeof e}},8630:function(e,t,n){var r=n(4239),o=n(5924),i=n(7005),s=Function.prototype,a=Object.prototype,l=s.toString,u=a.hasOwnProperty,d=l.call(Object);e.exports=function(e){if(!i(e)||"[object Object]"!=r(e))return!1;var t=o(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==d}},2928:function(e,t,n){var r=n(9221),o=n(1717),i=n(1167),s=i&&i.isSet,a=s?o(s):r;e.exports=a},7037:function(e,t,n){var r=n(4239),o=n(1469),i=n(7005);e.exports=function(e){return"string"==typeof e||!o(e)&&i(e)&&"[object String]"==r(e)}},3448:function(e,t,n){var r=n(4239),o=n(7005);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},6719:function(e,t,n){var r=n(8749),o=n(1717),i=n(1167),s=i&&i.isTypedArray,a=s?o(s):r;e.exports=a},2353:function(e){e.exports=function(e){return void 0===e}},3674:function(e,t,n){var r=n(4636),o=n(280),i=n(8612);e.exports=function(e){return i(e)?r(e):o(e)}},1704:function(e,t,n){var r=n(4636),o=n(313),i=n(8612);e.exports=function(e){return i(e)?r(e,!0):o(e)}},928:function(e){e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},5161:function(e,t,n){var r=n(9932),o=n(7206),i=n(9199),s=n(1469);e.exports=function(e,t){return(s(e)?r:i)(e,o(t,3))}},8306:function(e,t,n){var r=n(3369);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var s=e.apply(this,r);return n.cache=i.set(o,s)||i,s};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},7557:function(e,t,n){var r=n(9932),o=n(5990),i=n(7406),s=n(1811),a=n(8363),l=n(696),u=n(9021),d=n(6904),c=u((function(e,t){var n={};if(null==e)return n;var u=!1;t=r(t,(function(t){return t=s(t,e),u||(u=t.length>1),t})),a(e,d(e),n),u&&(n=o(n,7,l));for(var c=t.length;c--;)i(n,t[c]);return n}));e.exports=c},5472:function(e,t,n){var r=n(2689),o=n(1469);e.exports=function(e,t,n,i){return null==e?[]:(o(t)||(t=null==t?[]:[t]),o(n=i?void 0:n)||(n=null==n?[]:[n]),r(e,t,n))}},8718:function(e,t,n){var r=n(5970),o=n(9021)((function(e,t){return null==e?{}:r(e,t)}));e.exports=o},9601:function(e,t,n){var r=n(371),o=n(9152),i=n(5403),s=n(327);e.exports=function(e){return i(e)?r(s(e)):o(e)}},9704:function(e,t,n){var r=n(2908),o=n(7206),i=n(5076),s=n(1469),a=n(6612);e.exports=function(e,t,n){var l=s(e)?r:i;return n&&a(e,t,n)&&(t=void 0),l(e,o(t,3))}},9734:function(e,t,n){var r=n(1078),o=n(2689),i=n(5976),s=n(6612),a=i((function(e,t){if(null==e)return[];var n=t.length;return n>1&&s(e,t[0],t[1])?t=[]:n>2&&s(t[0],t[1],t[2])&&(t=[t[0]]),o(e,r(t,1),[])}));e.exports=a},479:function(e){e.exports=function(){return[]}},5062:function(e){e.exports=function(){return!1}},9572:function(e,t,n){var r=n(4259),o=n(554);e.exports=function(e,t,n){return e&&e.length?(t=n||void 0===t?1:o(t),r(e,0,t<0?0:t)):[]}},8601:function(e,t,n){var r=n(4841),o=1/0;e.exports=function(e){return e?(e=r(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},554:function(e,t,n){var r=n(8601);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},4841:function(e,t,n){var r=n(7561),o=n(3218),i=n(3448),s=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=a.test(e);return n||l.test(e)?u(e.slice(2),n?2:8):s.test(e)?NaN:+e}},3220:function(e,t,n){var r=n(3866)(n(3674));e.exports=r},84:function(e,t,n){var r=n(9932),o=n(278),i=n(1469),s=n(3448),a=n(5514),l=n(327),u=n(9833);e.exports=function(e){return i(e)?r(e,l):s(e)?[e]:o(a(u(e)))}},9833:function(e,t,n){var r=n(531);e.exports=function(e){return null==e?"":r(e)}},3955:function(e,t,n){var r=n(9833),o=0;e.exports=function(e){var t=++o;return r(e)+t}},2628:function(e,t,n){var r=n(7415),o=n(3674);e.exports=function(e){return null==e?[]:r(e,o(e))}},2569:function(e,t,n){var r=n(731),o=n(5976),i=n(9246),s=o((function(e,t){return i(e)?r(e,t):[]}));e.exports=s},7287:function(e,t,n){var r=n(4865),o=n(1757);e.exports=function(e,t){return o(e||[],t||[],r)}},7418:function(e){"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,i){for(var s,a,l=o(e),u=1;u1)for(var n=1;n1?t-1:0),r=1;r2?n-2:0),i=2;i1&&void 0!==arguments[1]&&arguments[1],n=this.props,r=n.tolerance,o=n.onSelection,i=n.onEndSelection,s=[],a=(0,d.findDOMNode)(this.refs.selectbox);a&&(this._registry.forEach((function(e){e.domNode&&(0,g.default)(a,e.domNode,r)&&!s.includes(e.key)&&s.push(e.key)})),t?"function"==typeof i&&i(s,e):"function"==typeof o&&o(s,e))}},{key:"render",value:function(){var e=this.props,t=e.children,n=e.enabled,r=e.fixedPosition,o=e.className,i=e.selectingClassName,s=this.state,a=s.isBoxSelecting,l=s.boxLeft,d=s.boxTop,c=s.boxWidth,f=s.boxHeight,h=this.props.component;if(!n)return u.default.createElement(h,{className:o},t);var m={left:l,top:d,width:c,height:f,zIndex:9e3,position:r?"fixed":"absolute",cursor:"default"},g={backgroundColor:"transparent",border:"1px dashed #999",width:"100%",height:"100%",float:"left"},y={position:"relative",overflow:"visible"};return u.default.createElement(h,{className:(0,p.default)(o,a?i:null),style:y},a?u.default.createElement("div",{style:m,ref:"selectbox"},u.default.createElement("span",{style:g})):null,t)}}]),t}(l.Component);v.propTypes={children:c.default.node,onBeginSelection:c.default.func,onEndSelection:c.default.func,onSelection:c.default.func,component:c.default.node,tolerance:c.default.number,fixedPosition:c.default.bool,preventDefault:c.default.bool,onNonItemClick:c.default.func,enabled:c.default.bool,className:c.default.string,selectingClassName:c.default.string},v.defaultProps={component:"div",tolerance:0,fixedPosition:!1,preventDefault:!0,enabled:!0},v.childContextTypes={selectable:c.default.object},t.default=v},function(e,t,n){"use strict";(function(t){var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=n(1),i=n(2),s=n(8),a=n(15),l=n(3),u=n(16);e.exports=function(e,n){function d(e){var t=e&&(A&&e[A]||e[x]);if("function"==typeof t)return t}function c(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){this.message=e,this.stack=""}function f(e){function r(r,u,d,c,f,h,m){if(c=c||D,h=h||d,m!==l)if(n)i(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");else if("production"!==t.env.NODE_ENV&&"undefined"!=typeof console){var g=c+":"+d;!o[g]&&a<3&&(s(!1,"You are manually calling a React.PropTypes validation function for the `%s` prop on `%s`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.",h,c),o[g]=!0,a++)}return null==u[d]?r?new p(null===u[d]?"The "+f+" `"+h+"` is marked as required in `"+c+"`, but its value is `null`.":"The "+f+" `"+h+"` is marked as required in `"+c+"`, but its value is `undefined`."):null:e(u,d,c,f,h)}if("production"!==t.env.NODE_ENV)var o={},a=0;var u=r.bind(null,!1);return u.isRequired=r.bind(null,!0),u}function h(e){function t(t,n,r,o,i,s){var a=t[n];return w(a)!==e?new p("Invalid "+o+" `"+i+"` of type `"+F(a)+"` supplied to `"+r+"`, expected `"+e+"`."):null}return f(t)}function m(e){function t(t,n,r,o,i){if("function"!=typeof e)return new p("Property `"+i+"` of component `"+r+"` has invalid PropType notation inside arrayOf.");var s=t[n];if(!Array.isArray(s))return new p("Invalid "+o+" `"+i+"` of type `"+w(s)+"` supplied to `"+r+"`, expected an array.");for(var a=0;an+a||t+o-lr+s)};t.default=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=e instanceof HTMLElement?(0,r.default)(e):e,s=t instanceof HTMLElement?(0,r.default)(t):t;return o(i.top,i.left,s.top,s.left,i.offsetWidth,i.offsetHeight,s.offsetWidth,s.offsetHeight,n)}},function(e,t,n){"use strict";(function(t){function n(e,t,n){function r(t){var n=m,r=g;return m=g=void 0,w=t,v=e.apply(r,n)}function i(e){return w=e,b=setTimeout(d,t),F?r(e):v}function s(e){var n=t-(e-E);return O?C(n,y-(e-w)):n}function l(e){var n=e-E;return void 0===E||n>=t||n<0||O&&e-w>=y}function d(){var e=S();if(l(e))return c(e);b=setTimeout(d,s(e))}function c(e){return b=void 0,I&&m?r(e):(m=g=void 0,v)}function p(){void 0!==b&&clearTimeout(b),w=0,m=E=g=b=void 0}function f(){return void 0===b?v:c(S())}function h(){var e=S(),n=l(e);if(m=arguments,g=this,E=e,n){if(void 0===b)return i(E);if(O)return b=setTimeout(d,t),r(E)}return void 0===b&&(b=setTimeout(d,t)),v}var m,g,y,v,b,E,w=0,F=!1,O=!1,I=!0;if("function"!=typeof e)throw new TypeError(u);return t=a(t)||0,o(n)&&(F=!!n.leading,y=(O="maxWait"in n)?_(a(n.maxWait)||0,t):y,I="trailing"in n?!!n.trailing:I),h.cancel=p,h.flush=f,h}function r(e,t,r){var i=!0,s=!0;if("function"!=typeof e)throw new TypeError(u);return o(r)&&(i="leading"in r?!!r.leading:i,s="trailing"in r?!!r.trailing:s),n(e,t,{leading:i,maxWait:t,trailing:s})}function o(e){var t=void 0===e?"undefined":l(e);return!!e&&("object"==t||"function"==t)}function i(e){return!!e&&"object"==(void 0===e?"undefined":l(e))}function s(e){return"symbol"==(void 0===e?"undefined":l(e))||i(e)&&E.call(e)==c}function a(e){if("number"==typeof e)return e;if(s(e))return d;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(p,"");var n=h.test(e);return n||m.test(e)?g(e.slice(2),n?2:8):f.test(e)?d:+e}var l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u="Expected a function",d=NaN,c="[object Symbol]",p=/^\s+|\s+$/g,f=/^[-+]0x[0-9a-f]+$/i,h=/^0b[01]+$/i,m=/^0o[0-7]+$/i,g=parseInt,y="object"==(void 0===t?"undefined":l(t))&&t&&t.Object===Object&&t,v="object"==("undefined"==typeof self?"undefined":l(self))&&self&&self.Object===Object&&self,b=y||v||Function("return this")(),E=Object.prototype.toString,_=Math.max,C=Math.min,S=function(){return b.Date.now()};e.exports=r}).call(t,n(21))},function(e,t,n){"use strict";var r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":o(window))&&(r=window)}e.exports=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n=f){var t=console[e]||console.log;return t.apply(console,arguments)}}}!function(e){e.debug=h("debug"),e.log=h("log"),e.warn=h("warn"),e.error=h("error")}(c||(c={}));function m(e){try{return e()}catch(e){}}var g=m((function(){return globalThis}))||m((function(){return window}))||m((function(){return self}))||m((function(){return global}))||m((function(){return m.constructor("return this")()})),y="__",v=[y,y].join("DEV");var b=function(){try{return Boolean(__DEV__)}catch(e){return Object.defineProperty(g,v,{value:"production"!==m((function(){return"production"})),enumerable:!1,configurable:!0,writable:!0}),g[v]}}();function E(e){try{return e()}catch(e){}}var _=E((function(){return globalThis}))||E((function(){return window}))||E((function(){return self}))||E((function(){return global}))||E((function(){return E.constructor("return this")()})),C=!1;function S(){C&&(delete _.process,C=!1)}!_||E((function(){return"production"}))||E((function(){return process}))||(Object.defineProperty(_,"process",{value:{env:{NODE_ENV:"production"}},configurable:!0,enumerable:!1,writable:!0}),C=!0);class w{constructor(e,t="GraphQL request",n={line:1,column:1}){var r;"string"==typeof e||devAssert(!1,`Body must be a string. Received: ${e,formatValue(r,[])}.`),this.body=e,this.name=t,this.locationOffset=n,this.locationOffset.line>0||devAssert(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||devAssert(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}}var F;S(),__DEV__?c("boolean"==typeof b,b):c("boolean"==typeof b,38),function(e){e[e.Query=0]="Query",e[e.Mutation=1]="Mutation",e[e.Subscription=2]="Subscription"}(F||(F={}));var O=new Map;function I(e){var t;switch(e){case F.Query:t="Query";break;case F.Mutation:t="Mutation";break;case F.Subscription:t="Subscription"}return t}function A(e){var t,n,r=O.get(e);if(r)return r;__DEV__?c(!!e&&!!e.kind,"Argument of ".concat(e," passed to parser was not a valid GraphQL ")+"DocumentNode. You may need to use 'graphql-tag' or another method to convert your operation into a document"):c(!!e&&!!e.kind,32);for(var o=[],i=[],s=[],a=[],l=0,u=e.definitions;l=0}))||!1,U=k&&!L,B=!1,q=P.useSyncExternalStore||function(e,t,n){var r=t();__DEV__&&!B&&r!==t()&&(B=!0,__DEV__&&c.error("The result of getSnapshot should be cached to avoid an infinite loop"));var o=D.useState({inst:{value:r,getSnapshot:t}}),i=o[0].inst,s=o[1];return U?D.useLayoutEffect((function(){Object.assign(i,{value:r,getSnapshot:t}),H(i)&&s({inst:i})}),[e,r,t]):Object.assign(i,{value:r,getSnapshot:t}),D.useEffect((function(){return H(i)&&s({inst:i}),e((function(){H(i)&&s({inst:i})}))}),[e]),r};function H(e){var t=e.value,n=e.getSnapshot;try{return t!==n()}catch(e){return!0}}var W=Object.prototype,z=W.toString,G=W.hasOwnProperty,V=Function.prototype.toString,Q=new Map;function $(e,t){try{return Y(e,t)}finally{Q.clear()}}function Y(e,t){if(e===t)return!0;var n,r,o,i=z.call(e);if(i!==z.call(t))return!1;switch(i){case"[object Array]":if(e.length!==t.length)return!1;case"[object Object]":if(J(e,t))return!0;var s=K(e),a=K(t),l=s.length;if(l!==a.length)return!1;for(var u=0;u=0&&n.indexOf(r,o)===o))}return!1}function K(e){return Object.keys(e).filter(Z,e)}function Z(e){return void 0!==this[e]}var X="{ [native code] }";function J(e,t){var n=Q.get(e);if(n){if(n.has(t))return!0}else Q.set(e,n=new Set);return n.add(t),!1}function ee(){for(var e=[],t=0;t0}var ie,se=function(e){function t(n){var r,o,i=n.graphQLErrors,s=n.clientErrors,a=n.networkError,l=n.errorMessage,u=n.extraInfo,d=e.call(this,l)||this;return d.name="ApolloError",d.graphQLErrors=i||[],d.clientErrors=s||[],d.networkError=a||null,d.message=l||(o="",(oe((r=d).graphQLErrors)||oe(r.clientErrors))&&(r.graphQLErrors||[]).concat(r.clientErrors||[]).forEach((function(e){var t=e?e.message:"Error message not found.";o+="".concat(t,"\n")})),r.networkError&&(o+="".concat(r.networkError.message,"\n")),o=o.replace(/\n$/,"")),d.extraInfo=u,d.__proto__=t.prototype,d}return o(t,e),t}(Error);function ae(e){var t=(0,D.useContext)(re()),n=e||t.client;return __DEV__?c(!!n,'Could not find "client" in the context or passed in as an option. Wrap the root component in an , or pass an ApolloClient instance in via options.'):c(!!n,31),n}function le(e){return null!==e&&"object"==typeof e}function ue(e){var t=new Set([e]);return t.forEach((function(e){le(e)&&function(e){if(__DEV__&&!Object.isFrozen(e))try{Object.freeze(e)}catch(e){if(e instanceof TypeError)return null;throw e}return e}(e)===e&&Object.getOwnPropertyNames(e).forEach((function(n){le(e[n])&&t.add(e[n])}))})),e}function de(e){return __DEV__&&ue(e),e}!function(e){e[e.loading=1]="loading",e[e.setVariables=2]="setVariables",e[e.fetchMore=3]="fetchMore",e[e.refetch=4]="refetch",e[e.poll=6]="poll",e[e.ready=7]="ready",e[e.error=8]="error"}(ie||(ie={}));var ce=Object.prototype.hasOwnProperty;function pe(e,t){return void 0===t&&(t=Object.create(null)),function(e,t){var n=(0,D.useRef)();n.current&&e===n.current.client&&t===n.current.query||(n.current=new fe(e,t,n.current));var r=n.current,o=(0,D.useState)(0),i=(o[0],o[1]);return r.forceUpdate=function(){i((function(e){return e+1}))},r}(ae(t.client),e).useQuery(t)}var fe=function(){function e(e,t,n){this.client=e,this.query=t,this.asyncResolveFns=new Set,this.optionsToIgnoreOnce=new(N?WeakSet:Set),this.ssrDisabledResult=de({loading:!0,data:void 0,error:void 0,networkStatus:ie.loading}),this.skipStandbyResult=de({loading:!1,data:void 0,error:void 0,networkStatus:ie.ready}),this.toQueryResultCache=new(T?WeakMap:Map),x(t,F.Query);var r=n&&n.result,o=r&&r.data;o&&(this.previousData=o)}return e.prototype.forceUpdate=function(){__DEV__&&c.warn("Calling default no-op implementation of InternalState#forceUpdate")},e.prototype.asyncUpdate=function(e){var t=this;return new Promise((function(n,r){var o=t.watchQueryOptions,i=function(){t.asyncResolveFns.delete(n),t.optionsToIgnoreOnce.delete(o),e.removeEventListener("abort",i),r(e.reason)};t.asyncResolveFns.add(n),t.optionsToIgnoreOnce.add(o),e.addEventListener("abort",i),t.forceUpdate()}))},e.prototype.useQuery=function(e){var t=this;this.renderPromises=(0,D.useContext)(re()).renderPromises,this.useOptions(e);var n=this.useObservableQuery(),r=q((0,D.useCallback)((function(){if(t.renderPromises)return function(){};var e=function(){var e=t.result,r=n.getCurrentResult();e&&e.loading===r.loading&&e.networkStatus===r.networkStatus&&$(e.data,r.data)||t.setResult(r)},r=function(i){var s=n.last;o.unsubscribe();try{n.resetLastResults(),o=n.subscribe(e,r)}finally{n.last=s}if(!ce.call(i,"graphQLErrors"))throw i;var a=t.result;(!a||a&&a.loading||!$(i,a.error))&&t.setResult({data:a&&a.data,error:i,loading:!1,networkStatus:ie.error})},o=n.subscribe(e,r);return function(){return o.unsubscribe()}}),[n,this.renderPromises,this.client.disableNetworkFetches]),(function(){return t.getCurrentResult()}),(function(){return t.getCurrentResult()}));this.unsafeHandlePartialRefetch(r);var o=this.toQueryResult(r);return!o.loading&&this.asyncResolveFns.size&&(this.asyncResolveFns.forEach((function(e){return e(o)})),this.asyncResolveFns.clear()),o},e.prototype.useOptions=function(t){var n,r=this.createWatchQueryOptions(this.queryHookOptions=t),o=this.watchQueryOptions;!this.optionsToIgnoreOnce.has(o)&&$(r,o)||(this.watchQueryOptions=r,o&&this.observable&&(this.optionsToIgnoreOnce.delete(o),this.observable.reobserve(this.getObsQueryOptions()),this.previousData=(null===(n=this.result)||void 0===n?void 0:n.data)||this.previousData,this.result=void 0)),this.onCompleted=t.onCompleted||e.prototype.onCompleted,this.onError=t.onError||e.prototype.onError,!this.renderPromises&&!this.client.disableNetworkFetches||!1!==this.queryHookOptions.ssr||this.queryHookOptions.skip?this.queryHookOptions.skip||"standby"===this.watchQueryOptions.fetchPolicy?this.result=this.skipStandbyResult:this.result!==this.ssrDisabledResult&&this.result!==this.skipStandbyResult||(this.result=void 0):this.result=this.ssrDisabledResult},e.prototype.getObsQueryOptions=function(){var e=[],t=this.client.defaultOptions.watchQuery;return t&&e.push(t),this.queryHookOptions.defaultOptions&&e.push(this.queryHookOptions.defaultOptions),e.push(ee(this.observable&&this.observable.options,this.watchQueryOptions)),e.reduce(te)},e.prototype.createWatchQueryOptions=function(e){var t;void 0===e&&(e={});var n=e.skip,r=(e.ssr,e.onCompleted,e.onError,e.defaultOptions,s(e,["skip","ssr","onCompleted","onError","defaultOptions"])),o=Object.assign(r,{query:this.query});if(!this.renderPromises||"network-only"!==o.fetchPolicy&&"cache-and-network"!==o.fetchPolicy||(o.fetchPolicy="cache-first"),o.variables||(o.variables={}),n){var i=o.fetchPolicy,a=void 0===i?this.getDefaultFetchPolicy():i,l=o.initialFetchPolicy,u=void 0===l?a:l;Object.assign(o,{initialFetchPolicy:u,fetchPolicy:"standby"})}else o.fetchPolicy||(o.fetchPolicy=(null===(t=this.observable)||void 0===t?void 0:t.options.initialFetchPolicy)||this.getDefaultFetchPolicy());return o},e.prototype.getDefaultFetchPolicy=function(){var e,t;return(null===(e=this.queryHookOptions.defaultOptions)||void 0===e?void 0:e.fetchPolicy)||(null===(t=this.client.defaultOptions.watchQuery)||void 0===t?void 0:t.fetchPolicy)||"cache-first"},e.prototype.onCompleted=function(e){},e.prototype.onError=function(e){},e.prototype.useObservableQuery=function(){var e=this.observable=this.renderPromises&&this.renderPromises.getSSRObservable(this.watchQueryOptions)||this.observable||this.client.watchQuery(this.getObsQueryOptions());this.obsQueryFields=(0,D.useMemo)((function(){return{refetch:e.refetch.bind(e),reobserve:e.reobserve.bind(e),fetchMore:e.fetchMore.bind(e),updateQuery:e.updateQuery.bind(e),startPolling:e.startPolling.bind(e),stopPolling:e.stopPolling.bind(e),subscribeToMore:e.subscribeToMore.bind(e)}}),[e]);var t=!(!1===this.queryHookOptions.ssr||this.queryHookOptions.skip);return this.renderPromises&&t&&(this.renderPromises.registerSSRObservable(e),e.getCurrentResult().loading&&this.renderPromises.addObservableQueryPromise(e)),e},e.prototype.setResult=function(e){var t=this.result;t&&t.data&&(this.previousData=t.data),this.result=e,this.forceUpdate(),this.handleErrorOrCompleted(e)},e.prototype.handleErrorOrCompleted=function(e){var t=this;if(!e.loading){var n=this.toApolloError(e);Promise.resolve().then((function(){n?t.onError(n):e.data&&t.onCompleted(e.data)})).catch((function(e){__DEV__&&c.warn(e)}))}},e.prototype.toApolloError=function(e){return oe(e.errors)?new se({graphQLErrors:e.errors}):e.error},e.prototype.getCurrentResult=function(){return this.result||this.handleErrorOrCompleted(this.result=this.observable.getCurrentResult()),this.result},e.prototype.toQueryResult=function(e){var t=this.toQueryResultCache.get(e);if(t)return t;var n=e.data,r=(e.partial,s(e,["data","partial"]));return this.toQueryResultCache.set(e,t=i(i(i({data:n},r),this.obsQueryFields),{client:this.client,observable:this.observable,variables:this.observable.variables,called:!this.queryHookOptions.skip,previousData:this.previousData})),!t.error&&oe(e.errors)&&(t.error=new se({graphQLErrors:e.errors})),t},e.prototype.unsafeHandlePartialRefetch=function(e){!e.partial||!this.queryHookOptions.partialRefetch||e.loading||e.data&&0!==Object.keys(e.data).length||"cache-only"===this.observable.options.fetchPolicy||(Object.assign(e,{loading:!0,networkStatus:ie.refetch}),this.observable.refetch())},e}();function he(e){var t=e.children,n=pe(e.query,s(e,["children","query"]));return n?t(n):null}he.propTypes={client:R.object,children:R.func.isRequired,fetchPolicy:R.string,notifyOnNetworkStatusChange:R.bool,onCompleted:R.func,onError:R.func,pollInterval:R.number,query:R.object.isRequired,variables:R.object,ssr:R.bool,partialRefetch:R.bool,returnPartialData:R.bool};var me=function(){return{}},ge=function(){return!1};function ye(e){return e.displayName||e.name||"Component"}function ve(e,t){for(var n={},r=0,o=e.variables;r0&&(d.variables=ve(n,l)),D.createElement(he,i({},d,{displayName:a,skip:u,query:e}),(function(e){e.client;var n,a,d=e.data,c=s(e,["client","data"]);if(t.withRef&&(o.withRef=!0,l=Object.assign({},l,{ref:o.setWrappedInstance})),u)return D.createElement(r,i({},l,{}));var p=Object.assign(c,d||{}),h=t.name||"data",m=((n={})[h]=p,n);if(t.props){var g=((a={})[h]=p,a.ownProps=l,a);m=f=t.props(g,f)}return D.createElement(r,i({},l,m))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function _e(e){var t=function(e,t){var n=ae(null==t?void 0:t.client);x(e,F.Mutation);var r=(0,D.useState)({called:!1,loading:!1,client:n}),o=r[0],s=r[1],a=(0,D.useRef)({result:o,mutationId:0,isMounted:!0,client:n,mutation:e,options:t});Object.assign(a.current,{client:n,options:t,mutation:e});var l=(0,D.useCallback)((function(e){void 0===e&&(e={});var t=a.current,n=t.client,r=t.options,o=t.mutation,l=i(i({},r),{mutation:o});a.current.result.loading||l.ignoreResults||!a.current.isMounted||s(a.current.result={loading:!0,error:void 0,data:void 0,called:!0,client:n});var u=++a.current.mutationId,d=te(l,e);return n.mutate(d).then((function(t){var r,o=t.data,i=t.errors,l=i&&i.length>0?new se({graphQLErrors:i}):void 0;if(u===a.current.mutationId&&!d.ignoreResults){var c={called:!0,loading:!1,data:o,error:l,client:n};a.current.isMounted&&!$(a.current.result,c)&&s(a.current.result=c)}var p=e.onCompleted||(null===(r=a.current.options)||void 0===r?void 0:r.onCompleted);return null==p||p(t.data,d),t})).catch((function(t){var r;if(u===a.current.mutationId&&a.current.isMounted){var o={loading:!1,error:t,data:void 0,called:!0,client:n};$(a.current.result,o)||s(a.current.result=o)}var i=e.onError||(null===(r=a.current.options)||void 0===r?void 0:r.onError);if(i)return i(t,d),{data:void 0,errors:t};throw t}))}),[]),u=(0,D.useCallback)((function(){a.current.isMounted&&s({called:!1,loading:!1,client:n})}),[]);return(0,D.useEffect)((function(){return a.current.isMounted=!0,function(){a.current.isMounted=!1}}),[]),[l,i({reset:u},o)]}(e.mutation,e),n=t[0],r=t[1];return e.children?e.children(n,r):null}function Ce(e,t){void 0===t&&(t={});var n=A(e),r=t.options,a=void 0===r?me:r,l=t.alias,u=void 0===l?"Apollo":l,d=a;return"function"!=typeof d&&(d=function(){return a}),function(r){var a="".concat(u,"(").concat(ye(r),")"),l=function(l){function u(){return null!==l&&l.apply(this,arguments)||this}return o(u,l),u.prototype.render=function(){var o=this.props,a=d(o);return t.withRef&&(this.withRef=!0,o=Object.assign({},o,{ref:this.setWrappedInstance})),!a.variables&&n.variables.length>0&&(a.variables=ve(n,o)),D.createElement(_e,i({ignoreResults:!0},a,{mutation:e}),(function(e,n){var a,l,u=n.data,d=s(n,["data"]),c=Object.assign(d,u||{}),p=t.name||"mutate",f=t.name?"".concat(p,"Result"):"result",h=((a={})[p]=e,a[f]=c,a);if(t.props){var m=((l={})[p]=e,l[f]=c,l.ownProps=o,l);h=t.props(m)}return D.createElement(r,i({},o,h))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function Se(e){var t=function(e,t){var n=(0,D.useRef)(!1),r=ae(null==t?void 0:t.client);x(e,F.Subscription);var o=(0,D.useState)({loading:!(null==t?void 0:t.skip),error:void 0,data:void 0,variables:null==t?void 0:t.variables}),i=o[0],s=o[1];n.current||(n.current=!0,(null==t?void 0:t.onSubscriptionData)&&__DEV__&&c.warn(t.onData?"'useSubscription' supports only the 'onSubscriptionData' or 'onData' option, but not both. Only the 'onData' option will be used.":"'onSubscriptionData' is deprecated and will be removed in a future major version. Please use the 'onData' option instead."),(null==t?void 0:t.onSubscriptionComplete)&&__DEV__&&c.warn(t.onComplete?"'useSubscription' supports only the 'onSubscriptionComplete' or 'onComplete' option, but not both. Only the 'onComplete' option will be used.":"'onSubscriptionComplete' is deprecated and will be removed in a future major version. Please use the 'onComplete' option instead."));var a=(0,D.useState)((function(){return(null==t?void 0:t.skip)?null:r.subscribe({query:e,variables:null==t?void 0:t.variables,fetchPolicy:null==t?void 0:t.fetchPolicy,context:null==t?void 0:t.context})})),l=a[0],u=a[1],d=(0,D.useRef)(!1);(0,D.useEffect)((function(){return function(){d.current=!0}}),[]);var p=(0,D.useRef)({client:r,subscription:e,options:t});return(0,D.useEffect)((function(){var n,o,i,a,l=null==t?void 0:t.shouldResubscribe;"function"==typeof l&&(l=!!l(t)),(null==t?void 0:t.skip)?(!(null==t?void 0:t.skip)!=!(null===(n=p.current.options)||void 0===n?void 0:n.skip)||d.current)&&(s({loading:!1,data:void 0,error:void 0,variables:null==t?void 0:t.variables}),u(null),d.current=!1):(!1===l||r===p.current.client&&e===p.current.subscription&&(null==t?void 0:t.fetchPolicy)===(null===(o=p.current.options)||void 0===o?void 0:o.fetchPolicy)&&!(null==t?void 0:t.skip)==!(null===(i=p.current.options)||void 0===i?void 0:i.skip)&&$(null==t?void 0:t.variables,null===(a=p.current.options)||void 0===a?void 0:a.variables))&&!d.current||(s({loading:!0,data:void 0,error:void 0,variables:null==t?void 0:t.variables}),u(r.subscribe({query:e,variables:null==t?void 0:t.variables,fetchPolicy:null==t?void 0:t.fetchPolicy,context:null==t?void 0:t.context})),d.current=!1),Object.assign(p.current,{client:r,subscription:e,options:t})}),[r,e,t,d.current]),(0,D.useEffect)((function(){if(l){var e=l.subscribe({next:function(e){var n,o,i={loading:!1,data:e.data,error:void 0,variables:null==t?void 0:t.variables};s(i),(null===(n=p.current.options)||void 0===n?void 0:n.onData)?p.current.options.onData({client:r,data:i}):(null===(o=p.current.options)||void 0===o?void 0:o.onSubscriptionData)&&p.current.options.onSubscriptionData({client:r,subscriptionData:i})},error:function(e){var n,r;s({loading:!1,data:void 0,error:e,variables:null==t?void 0:t.variables}),null===(r=null===(n=p.current.options)||void 0===n?void 0:n.onError)||void 0===r||r.call(n,e)},complete:function(){var e,t;(null===(e=p.current.options)||void 0===e?void 0:e.onComplete)?p.current.options.onComplete():(null===(t=p.current.options)||void 0===t?void 0:t.onSubscriptionComplete)&&p.current.options.onSubscriptionComplete()}});return function(){e.unsubscribe()}}}),[l]),i}(e.subscription,e);return e.children&&t?e.children(t):null}function we(e,t){void 0===t&&(t={});var n=A(e),r=t.options,a=void 0===r?me:r,l=t.skip,u=void 0===l?ge:l,d=t.alias,c=void 0===d?"Apollo":d,p=t.shouldResubscribe,f=a;"function"!=typeof f&&(f=function(){return a});var h,m=u;return"function"!=typeof m&&(m=function(){return u}),function(r){var a="".concat(c,"(").concat(ye(r),")"),l=function(l){function u(e){var t=l.call(this,e)||this;return t.state={resubscribe:!1},t}return o(u,l),u.prototype.updateResubscribe=function(e){this.setState({resubscribe:e})},u.prototype.componentDidUpdate=function(e){var t=!(!p||!p(e,this.props));this.state.resubscribe!==t&&this.updateResubscribe(t)},u.prototype.render=function(){var o=this,l=this.props,u=m(l),d=u?Object.create(null):f(l);return!u&&!d.variables&&n.variables.length>0&&(d.variables=ve(n,l)),D.createElement(Se,i({},d,{displayName:a,skip:u,subscription:e,shouldResubscribe:this.state.resubscribe}),(function(e){var n,a,d=e.data,c=s(e,["data"]);if(t.withRef&&(o.withRef=!0,l=Object.assign({},l,{ref:o.setWrappedInstance})),u)return D.createElement(r,i({},l,{}));var p=Object.assign(c,d||{}),f=t.name||"data",m=((n={})[f]=p,n);if(t.props){var g=((a={})[f]=p,a.ownProps=l,a);m=h=t.props(g,h)}return D.createElement(r,i({},l,m))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function Fe(e,t){switch(void 0===t&&(t={}),A(e).type){case F.Mutation:return Ce(e,t);case F.Subscription:return we(e,t);case F.Query:default:return Ee(e,t)}}_e.propTypes={mutation:R.object.isRequired,variables:R.object,optimisticResponse:R.oneOfType([R.object,R.func]),refetchQueries:R.oneOfType([R.arrayOf(R.oneOfType([R.string,R.object])),R.func]),awaitRefetchQueries:R.bool,update:R.func,children:R.func.isRequired,onCompleted:R.func,onError:R.func,fetchPolicy:R.string},Se.propTypes={subscription:R.object.isRequired,variables:R.object,children:R.func,onSubscriptionData:R.func,onData:R.func,onSubscriptionComplete:R.func,onComplete:R.func,shouldResubscribe:R.oneOfType([R.func,R.bool])};var Oe=function(e){var t=re();return D.createElement(t.Consumer,null,(function(t){return __DEV__?c(t&&t.client,'Could not find "client" in the context of ApolloConsumer. Wrap the root component in an .'):c(t&&t.client,27),e.children(t.client)}))};function Ie(e,t){void 0===t&&(t={});var n="withApollo(".concat(function(e){return e.displayName||e.name||"Component"}(e),")"),r=function(r){function s(e){var t=r.call(this,e)||this;return t.setWrappedInstance=t.setWrappedInstance.bind(t),t}return o(s,r),s.prototype.getWrappedInstance=function(){return __DEV__?c(t.withRef,"To access the wrapped instance, you need to specify { withRef: true } in the options"):c(t.withRef,30),this.wrappedInstance},s.prototype.setWrappedInstance=function(e){this.wrappedInstance=e},s.prototype.render=function(){var n=this;return D.createElement(Oe,null,(function(r){var o=Object.assign({},n.props,{client:r,ref:t.withRef?n.setWrappedInstance:void 0});return D.createElement(e,i({},o))}))},s.displayName=n,s.WrappedComponent=e,s}(D.Component);return M(r,e,{})}},247:function(e,t,n){"use strict";n.r(t),n.d(t,{Dropzone:function(){return u},default:function(){return u}});var r=function e(){var t=[].slice.call(arguments),n=!1;"boolean"==typeof t[0]&&(n=t.shift());var r=t[0];if(i(r))throw new Error("extendee must be an object");for(var s=t.slice(1),a=s.length,l=0;l'),this.element.appendChild(e));let t=e.getElementsByTagName("span")[0];return t&&(null!=t.textContent?t.textContent=this.options.dictFallbackMessage:null!=t.innerText&&(t.innerText=this.options.dictFallbackMessage)),this.element.appendChild(this.getFallbackForm())},resize(e,t,n,r){let o={srcX:0,srcY:0,srcWidth:e.width,srcHeight:e.height},i=e.width/e.height;null==t&&null==n?(t=o.srcWidth,n=o.srcHeight):null==t?t=n*i:null==n&&(n=t/i);let s=(t=Math.min(t,o.srcWidth))/(n=Math.min(n,o.srcHeight));if(o.srcWidth>t||o.srcHeight>n)if("crop"===r)i>s?(o.srcHeight=e.height,o.srcWidth=o.srcHeight*s):(o.srcWidth=e.width,o.srcHeight=o.srcWidth/s);else{if("contain"!==r)throw new Error(`Unknown resizeMethod '${r}'`);i>s?n=t/i:t=n*i}return o.srcX=(e.width-o.srcWidth)/2,o.srcY=(e.height-o.srcHeight)/2,o.trgWidth=t,o.trgHeight=n,o},transformFile(e,t){return(this.options.resizeWidth||this.options.resizeHeight)&&e.type.match(/image.*/)?this.resizeImage(e,this.options.resizeWidth,this.options.resizeHeight,this.options.resizeMethod,t):t(e)},previewTemplate:s('
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n'),drop(e){return this.element.classList.remove("dz-drag-hover")},dragstart(e){},dragend(e){return this.element.classList.remove("dz-drag-hover")},dragenter(e){return this.element.classList.add("dz-drag-hover")},dragover(e){return this.element.classList.add("dz-drag-hover")},dragleave(e){return this.element.classList.remove("dz-drag-hover")},paste(e){},reset(){return this.element.classList.remove("dz-started")},addedfile(e){if(this.element===this.previewsContainer&&this.element.classList.add("dz-started"),this.previewsContainer&&!this.options.disablePreviews){for(var t of(e.previewElement=u.createElement(this.options.previewTemplate.trim()),e.previewTemplate=e.previewElement,this.previewsContainer.appendChild(e.previewElement),e.previewElement.querySelectorAll("[data-dz-name]")))t.textContent=e.name;for(t of e.previewElement.querySelectorAll("[data-dz-size]"))t.innerHTML=this.filesize(e.size);this.options.addRemoveLinks&&(e._removeLink=u.createElement(`${this.options.dictRemoveFile}`),e.previewElement.appendChild(e._removeLink));let n=t=>(t.preventDefault(),t.stopPropagation(),e.status===u.UPLOADING?u.confirm(this.options.dictCancelUploadConfirmation,(()=>this.removeFile(e))):this.options.dictRemoveFileConfirmation?u.confirm(this.options.dictRemoveFileConfirmation,(()=>this.removeFile(e))):this.removeFile(e));for(let t of e.previewElement.querySelectorAll("[data-dz-remove]"))t.addEventListener("click",n)}},removedfile(e){return null!=e.previewElement&&null!=e.previewElement.parentNode&&e.previewElement.parentNode.removeChild(e.previewElement),this._updateMaxFilesReachedClass()},thumbnail(e,t){if(e.previewElement){e.previewElement.classList.remove("dz-file-preview");for(let n of e.previewElement.querySelectorAll("[data-dz-thumbnail]"))n.alt=e.name,n.src=t;return setTimeout((()=>e.previewElement.classList.add("dz-image-preview")),1)}},error(e,t){if(e.previewElement){e.previewElement.classList.add("dz-error"),"string"!=typeof t&&t.error&&(t=t.error);for(let n of e.previewElement.querySelectorAll("[data-dz-errormessage]"))n.textContent=t}},errormultiple(){},processing(e){if(e.previewElement&&(e.previewElement.classList.add("dz-processing"),e._removeLink))return e._removeLink.innerHTML=this.options.dictCancelUpload},processingmultiple(){},uploadprogress(e,t,n){if(e.previewElement)for(let n of e.previewElement.querySelectorAll("[data-dz-uploadprogress]"))"PROGRESS"===n.nodeName?n.value=t:n.style.width=`${t}%`},totaluploadprogress(){},sending(){},sendingmultiple(){},success(e){if(e.previewElement)return e.previewElement.classList.add("dz-success")},successmultiple(){},canceled(e){return this.emit("error",e,this.options.dictUploadCanceled)},canceledmultiple(){},complete(e){if(e._removeLink&&(e._removeLink.innerHTML=this.options.dictRemoveFile),e.previewElement)return e.previewElement.classList.add("dz-complete")},completemultiple(){},maxfilesexceeded(){},maxfilesreached(){},queuecomplete(){},addedfiles(){}};class u extends a{static initClass(){this.prototype.Emitter=a,this.prototype.events=["drop","dragstart","dragend","dragenter","dragover","dragleave","addedfile","addedfiles","removedfile","thumbnail","error","errormultiple","processing","processingmultiple","uploadprogress","totaluploadprogress","sending","sendingmultiple","success","successmultiple","canceled","canceledmultiple","complete","completemultiple","reset","maxfilesexceeded","maxfilesreached","queuecomplete"],this.prototype._thumbnailQueue=[],this.prototype._processingThumbnail=!1}getAcceptedFiles(){return this.files.filter((e=>e.accepted)).map((e=>e))}getRejectedFiles(){return this.files.filter((e=>!e.accepted)).map((e=>e))}getFilesWithStatus(e){return this.files.filter((t=>t.status===e)).map((e=>e))}getQueuedFiles(){return this.getFilesWithStatus(u.QUEUED)}getUploadingFiles(){return this.getFilesWithStatus(u.UPLOADING)}getAddedFiles(){return this.getFilesWithStatus(u.ADDED)}getActiveFiles(){return this.files.filter((e=>e.status===u.UPLOADING||e.status===u.QUEUED)).map((e=>e))}init(){if("form"===this.element.tagName&&this.element.setAttribute("enctype","multipart/form-data"),this.element.classList.contains("dropzone")&&!this.element.querySelector(".dz-message")&&this.element.appendChild(u.createElement(`
`)),this.clickableElements.length){let e=()=>{this.hiddenFileInput&&this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=document.createElement("input"),this.hiddenFileInput.setAttribute("type","file"),(null===this.options.maxFiles||this.options.maxFiles>1)&&this.hiddenFileInput.setAttribute("multiple","multiple"),this.hiddenFileInput.className="dz-hidden-input",null!==this.options.acceptedFiles&&this.hiddenFileInput.setAttribute("accept",this.options.acceptedFiles),null!==this.options.capture&&this.hiddenFileInput.setAttribute("capture",this.options.capture),this.hiddenFileInput.setAttribute("tabindex","-1"),this.hiddenFileInput.style.visibility="hidden",this.hiddenFileInput.style.position="absolute",this.hiddenFileInput.style.top="0",this.hiddenFileInput.style.left="0",this.hiddenFileInput.style.height="0",this.hiddenFileInput.style.width="0",u.getElement(this.options.hiddenInputContainer,"hiddenInputContainer").appendChild(this.hiddenFileInput),this.hiddenFileInput.addEventListener("change",(()=>{let{files:t}=this.hiddenFileInput;if(t.length)for(let e of t)this.addFile(e);this.emit("addedfiles",t),e()}))};e()}this.URL=null!==window.URL?window.URL:window.webkitURL;for(let e of this.events)this.on(e,this.options[e]);this.on("uploadprogress",(()=>this.updateTotalUploadProgress())),this.on("removedfile",(()=>this.updateTotalUploadProgress())),this.on("canceled",(e=>this.emit("complete",e))),this.on("complete",(e=>{if(0===this.getAddedFiles().length&&0===this.getUploadingFiles().length&&0===this.getQueuedFiles().length)return setTimeout((()=>this.emit("queuecomplete")),0)}));let e=function(e){if(function(e){if(e.dataTransfer.types)for(var t=0;tthis.emit("dragstart",e),dragenter:t=>(e(t),this.emit("dragenter",t)),dragover:t=>{let n;try{n=t.dataTransfer.effectAllowed}catch(e){}return t.dataTransfer.dropEffect="move"===n||"linkMove"===n?"move":"copy",e(t),this.emit("dragover",t)},dragleave:e=>this.emit("dragleave",e),drop:t=>(e(t),this.drop(t)),dragend:e=>this.emit("dragend",e)}}],this.clickableElements.forEach((e=>this.listeners.push({element:e,events:{click:t=>((e!==this.element||t.target===this.element||u.elementInside(t.target,this.element.querySelector(".dz-message")))&&this.hiddenFileInput.click(),!0)}}))),this.enable(),this.options.init.call(this)}destroy(){return this.disable(),this.removeAllFiles(!0),(null!=this.hiddenFileInput?this.hiddenFileInput.parentNode:void 0)&&(this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=null),delete this.element.dropzone,u.instances.splice(u.instances.indexOf(this),1)}updateTotalUploadProgress(){let e,t=0,n=0;if(this.getActiveFiles().length){for(let e of this.getActiveFiles())t+=e.upload.bytesSent,n+=e.upload.total;e=100*t/n}else e=100;return this.emit("totaluploadprogress",e,n,t)}_getParamName(e){return"function"==typeof this.options.paramName?this.options.paramName(e):`${this.options.paramName}${this.options.uploadMultiple?`[${e}]`:""}`}_renameFile(e){return"function"!=typeof this.options.renameFile?e.name:this.options.renameFile(e)}getFallbackForm(){let e,t;if(e=this.getExistingFallback())return e;let n='
';this.options.dictFallbackText&&(n+=`

${this.options.dictFallbackText}

`),n+=`
`;let r=u.createElement(n);return"FORM"!==this.element.tagName?(t=u.createElement(`
`),t.appendChild(r)):(this.element.setAttribute("enctype","multipart/form-data"),this.element.setAttribute("method",this.options.method)),null!=t?t:r}getExistingFallback(){let e=function(e){for(let t of e)if(/(^| )fallback($| )/.test(t.className))return t};for(let n of["div","form"]){var t;if(t=e(this.element.getElementsByTagName(n)))return t}}setupEventListeners(){return this.listeners.map((e=>(()=>{let t=[];for(let n in e.events){let r=e.events[n];t.push(e.element.addEventListener(n,r,!1))}return t})()))}removeEventListeners(){return this.listeners.map((e=>(()=>{let t=[];for(let n in e.events){let r=e.events[n];t.push(e.element.removeEventListener(n,r,!1))}return t})()))}disable(){return this.clickableElements.forEach((e=>e.classList.remove("dz-clickable"))),this.removeEventListeners(),this.disabled=!0,this.files.map((e=>this.cancelUpload(e)))}enable(){return delete this.disabled,this.clickableElements.forEach((e=>e.classList.add("dz-clickable"))),this.setupEventListeners()}filesize(e){let t=0,n="b";if(e>0){let r=["tb","gb","mb","kb","b"];for(let o=0;o=Math.pow(this.options.filesizeBase,4-o)/10){t=e/Math.pow(this.options.filesizeBase,4-o),n=i;break}}t=Math.round(10*t)/10}return`${t} ${this.options.dictFileSizeUnits[n]}`}_updateMaxFilesReachedClass(){return null!=this.options.maxFiles&&this.getAcceptedFiles().length>=this.options.maxFiles?(this.getAcceptedFiles().length===this.options.maxFiles&&this.emit("maxfilesreached",this.files),this.element.classList.add("dz-max-files-reached")):this.element.classList.remove("dz-max-files-reached")}drop(e){if(!e.dataTransfer)return;this.emit("drop",e);let t=[];for(let n=0;ne.items,null!=t?n(t):void 0))return;var t,n;this.emit("paste",e);let{items:r}=e.clipboardData;return r.length?this._addFilesFromItems(r):void 0}handleFiles(e){for(let t of e)this.addFile(t)}_addFilesFromItems(e){return(()=>{let t=[];for(let r of e){var n;null!=r.webkitGetAsEntry&&(n=r.webkitGetAsEntry())?n.isFile?t.push(this.addFile(r.getAsFile())):n.isDirectory?t.push(this._addFilesFromDirectory(n,n.name)):t.push(void 0):null!=r.getAsFile&&(null==r.kind||"file"===r.kind)?t.push(this.addFile(r.getAsFile())):t.push(void 0)}return t})()}_addFilesFromDirectory(e,t){let n=e.createReader(),r=e=>{return t=console,n="log",r=t=>t.log(e),null!=t&&"function"==typeof t[n]?r(t,n):void 0;var t,n,r};var o=()=>n.readEntries((e=>{if(e.length>0){for(let n of e)n.isFile?n.file((e=>{if(!this.options.ignoreHiddenFiles||"."!==e.name.substring(0,1))return e.fullPath=`${t}/${e.name}`,this.addFile(e)})):n.isDirectory&&this._addFilesFromDirectory(n,`${t}/${n.name}`);o()}return null}),r);return o()}accept(e,t){this.options.maxFilesize&&e.size>1048576*this.options.maxFilesize?t(this.options.dictFileTooBig.replace("{{filesize}}",Math.round(e.size/1024/10.24)/100).replace("{{maxFilesize}}",this.options.maxFilesize)):u.isValidFile(e,this.options.acceptedFiles)?null!=this.options.maxFiles&&this.getAcceptedFiles().length>=this.options.maxFiles?(t(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}",this.options.maxFiles)),this.emit("maxfilesexceeded",e)):this.options.accept.call(this,e,t):t(this.options.dictInvalidFileType)}addFile(e){e.upload={uuid:u.uuidv4(),progress:0,total:e.size,bytesSent:0,filename:this._renameFile(e)},this.files.push(e),e.status=u.ADDED,this.emit("addedfile",e),this._enqueueThumbnail(e),this.accept(e,(t=>{t?(e.accepted=!1,this._errorProcessing([e],t)):(e.accepted=!0,this.options.autoQueue&&this.enqueueFile(e)),this._updateMaxFilesReachedClass()}))}enqueueFiles(e){for(let t of e)this.enqueueFile(t);return null}enqueueFile(e){if(e.status!==u.ADDED||!0!==e.accepted)throw new Error("This file can't be queued because it has already been processed or was rejected.");if(e.status=u.QUEUED,this.options.autoProcessQueue)return setTimeout((()=>this.processQueue()),0)}_enqueueThumbnail(e){if(this.options.createImageThumbnails&&e.type.match(/image.*/)&&e.size<=1048576*this.options.maxThumbnailFilesize)return this._thumbnailQueue.push(e),setTimeout((()=>this._processThumbnailQueue()),0)}_processThumbnailQueue(){if(this._processingThumbnail||0===this._thumbnailQueue.length)return;this._processingThumbnail=!0;let e=this._thumbnailQueue.shift();return this.createThumbnail(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,!0,(t=>(this.emit("thumbnail",e,t),this._processingThumbnail=!1,this._processThumbnailQueue())))}removeFile(e){if(e.status===u.UPLOADING&&this.cancelUpload(e),this.files=d(this.files,e),this.emit("removedfile",e),0===this.files.length)return this.emit("reset")}removeAllFiles(e){null==e&&(e=!1);for(let t of this.files.slice())(t.status!==u.UPLOADING||e)&&this.removeFile(t);return null}resizeImage(e,t,n,r,o){return this.createThumbnail(e,t,n,r,!0,((t,n)=>{if(null==n)return o(e);{let{resizeMimeType:t}=this.options;null==t&&(t=e.type);let r=n.toDataURL(t,this.options.resizeQuality);return"image/jpeg"!==t&&"image/jpg"!==t||(r=f.restore(e.dataURL,r)),o(u.dataURItoBlob(r))}}))}createThumbnail(e,t,n,r,o,i){let s=new FileReader;s.onload=()=>{e.dataURL=s.result,"image/svg+xml"!==e.type?this.createThumbnailFromUrl(e,t,n,r,o,i):null!=i&&i(s.result)},s.readAsDataURL(e)}displayExistingFile(e,t,n,r,o=!0){if(this.emit("addedfile",e),this.emit("complete",e),o){let o=t=>{this.emit("thumbnail",e,t),n&&n()};e.dataURL=t,this.createThumbnailFromUrl(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,this.options.fixOrientation,o,r)}else this.emit("thumbnail",e,t),n&&n()}createThumbnailFromUrl(e,t,n,r,o,i,s){let a=document.createElement("img");return s&&(a.crossOrigin=s),o="from-image"!=getComputedStyle(document.body).imageOrientation&&o,a.onload=()=>{let s=e=>e(1);return"undefined"!=typeof EXIF&&null!==EXIF&&o&&(s=e=>EXIF.getData(a,(function(){return e(EXIF.getTag(this,"Orientation"))}))),s((o=>{e.width=a.width,e.height=a.height;let s=this.options.resize.call(this,e,t,n,r),l=document.createElement("canvas"),u=l.getContext("2d");switch(l.width=s.trgWidth,l.height=s.trgHeight,o>4&&(l.width=s.trgHeight,l.height=s.trgWidth),o){case 2:u.translate(l.width,0),u.scale(-1,1);break;case 3:u.translate(l.width,l.height),u.rotate(Math.PI);break;case 4:u.translate(0,l.height),u.scale(1,-1);break;case 5:u.rotate(.5*Math.PI),u.scale(1,-1);break;case 6:u.rotate(.5*Math.PI),u.translate(0,-l.width);break;case 7:u.rotate(.5*Math.PI),u.translate(l.height,-l.width),u.scale(-1,1);break;case 8:u.rotate(-.5*Math.PI),u.translate(-l.height,0)}p(u,a,null!=s.srcX?s.srcX:0,null!=s.srcY?s.srcY:0,s.srcWidth,s.srcHeight,null!=s.trgX?s.trgX:0,null!=s.trgY?s.trgY:0,s.trgWidth,s.trgHeight);let d=l.toDataURL("image/png");if(null!=i)return i(d,l)}))},null!=i&&(a.onerror=i),a.src=e.dataURL}processQueue(){let{parallelUploads:e}=this.options,t=this.getUploadingFiles().length,n=t;if(t>=e)return;let r=this.getQueuedFiles();if(r.length>0){if(this.options.uploadMultiple)return this.processFiles(r.slice(0,e-t));for(;nt.xhr===e)).map((e=>e))}cancelUpload(e){if(e.status===u.UPLOADING){let t=this._getFilesWithXhr(e.xhr);for(let e of t)e.status=u.CANCELED;void 0!==e.xhr&&e.xhr.abort();for(let e of t)this.emit("canceled",e);this.options.uploadMultiple&&this.emit("canceledmultiple",t)}else e.status!==u.ADDED&&e.status!==u.QUEUED||(e.status=u.CANCELED,this.emit("canceled",e),this.options.uploadMultiple&&this.emit("canceledmultiple",[e]));if(this.options.autoProcessQueue)return this.processQueue()}resolveOption(e,...t){return"function"==typeof e?e.apply(this,t):e}uploadFile(e){return this.uploadFiles([e])}uploadFiles(e){this._transformFiles(e,(t=>{if(this.options.chunking){let n=t[0];e[0].upload.chunked=this.options.chunking&&(this.options.forceChunking||n.size>this.options.chunkSize),e[0].upload.totalChunkCount=Math.ceil(n.size/this.options.chunkSize)}if(e[0].upload.chunked){let n=e[0],r=t[0],o=0;n.upload.chunks=[];let i=()=>{let t=0;for(;void 0!==n.upload.chunks[t];)t++;if(t>=n.upload.totalChunkCount)return;o++;let i=t*this.options.chunkSize,s=Math.min(i+this.options.chunkSize,r.size),a={name:this._getParamName(0),data:r.webkitSlice?r.webkitSlice(i,s):r.slice(i,s),filename:n.upload.filename,chunkIndex:t};n.upload.chunks[t]={file:n,index:t,dataBlock:a,status:u.UPLOADING,progress:0,retries:0},this._uploadData(e,[a])};if(n.upload.finishedChunkUpload=(t,r)=>{let o=!0;t.status=u.SUCCESS,t.dataBlock=null,t.response=t.xhr.responseText,t.responseHeaders=t.xhr.getAllResponseHeaders(),t.xhr=null;for(let e=0;e{this._finished(e,r,null)}))},this.options.parallelChunkUploads)for(let e=0;e{this._finishedUploading(e,n,t)},n.ontimeout=()=>{this._handleUploadError(e,n,`Request timedout after ${this.options.timeout/1e3} seconds`)},n.onerror=()=>{this._handleUploadError(e,n)},(null!=n.upload?n.upload:n).onprogress=t=>this._updateFilesUploadProgress(e,n,t);let s=this.options.defaultHeaders?{Accept:"application/json","Cache-Control":"no-cache","X-Requested-With":"XMLHttpRequest"}:{};this.options.binaryBody&&(s["Content-Type"]=e[0].type),this.options.headers&&r(s,this.options.headers);for(let e in s){let t=s[e];t&&n.setRequestHeader(e,t)}if(this.options.binaryBody){for(let t of e)this.emit("sending",t,n);this.options.uploadMultiple&&this.emit("sendingmultiple",e,n),this.submitRequest(n,null,e)}else{let r=new FormData;if(this.options.params){let t=this.options.params;"function"==typeof t&&(t=t.call(this,e,n,e[0].upload.chunked?this._getChunk(e[0],n):null));for(let e in t){let n=t[e];if(Array.isArray(n))for(let t=0;t{n[o]=i,++r===e.length&&t(n)}))}_addFormElementData(e){if("FORM"===this.element.tagName)for(let t of this.element.querySelectorAll("input, textarea, select, button")){let n=t.getAttribute("name"),r=t.getAttribute("type");if(r&&(r=r.toLowerCase()),null!=n)if("SELECT"===t.tagName&&t.hasAttribute("multiple"))for(let r of t.options)r.selected&&e.append(n,r.value);else(!r||"checkbox"!==r&&"radio"!==r||t.checked)&&e.append(n,t.value)}}_updateFilesUploadProgress(e,t,n){if(e[0].upload.chunked){let r=e[0],o=this._getChunk(r,t);n?(o.progress=100*n.loaded/n.total,o.total=n.total,o.bytesSent=n.loaded):(o.progress=100,o.bytesSent=o.total),r.upload.progress=0,r.upload.total=0,r.upload.bytesSent=0;for(let e=0;ethis.options.renameFilename.call(this,e.name,e)),"string"==typeof this.options.method&&(this.options.method=this.options.method.toUpperCase()),(n=this.getExistingFallback())&&n.parentNode&&n.parentNode.removeChild(n),!1!==this.options.previewsContainer&&(this.options.previewsContainer?this.previewsContainer=u.getElement(this.options.previewsContainer,"previewsContainer"):this.previewsContainer=this.element),this.options.clickable&&(!0===this.options.clickable?this.clickableElements=[this.element]:this.clickableElements=u.getElements(this.options.clickable,"clickable")),this.init()}}u.initClass(),u.options={},u.optionsForElement=function(e){return e.getAttribute("id")?u.options[c(e.getAttribute("id"))]:void 0},u.instances=[],u.forElement=function(e){if("string"==typeof e&&(e=document.querySelector(e)),null==(null!=e?e.dropzone:void 0))throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.");return e.dropzone},u.discover=function(){let e;if(document.querySelectorAll)e=document.querySelectorAll(".dropzone");else{e=[];let t=t=>(()=>{let n=[];for(let r of t)/(^| )dropzone($| )/.test(r.className)?n.push(e.push(r)):n.push(void 0);return n})();t(document.getElementsByTagName("div")),t(document.getElementsByTagName("form"))}return(()=>{let t=[];for(let n of e)!1!==u.optionsForElement(n)?t.push(new u(n)):t.push(void 0);return t})()},u.blockedBrowsers=[/opera.*(Macintosh|Windows Phone).*version\/12/i],u.isBrowserSupported=function(){let e=!0;if(window.File&&window.FileReader&&window.FileList&&window.Blob&&window.FormData&&document.querySelector)if("classList"in document.createElement("a")){void 0!==u.blacklistedBrowsers&&(u.blockedBrowsers=u.blacklistedBrowsers);for(let t of u.blockedBrowsers)if(t.test(navigator.userAgent)){e=!1;continue}}else e=!1;else e=!1;return e},u.dataURItoBlob=function(e){let t=atob(e.split(",")[1]),n=e.split(",")[0].split(":")[1].split(";")[0],r=new ArrayBuffer(t.length),o=new Uint8Array(r);for(let e=0,n=t.length,r=0<=n;r?e<=n:e>=n;r?e++:e--)o[e]=t.charCodeAt(e);return new Blob([r],{type:n})};const d=(e,t)=>e.filter((e=>e!==t)).map((e=>e)),c=e=>e.replace(/[\-_](\w)/g,(e=>e.charAt(1).toUpperCase()));u.createElement=function(e){let t=document.createElement("div");return t.innerHTML=e,t.childNodes[0]},u.elementInside=function(e,t){if(e===t)return!0;for(;e=e.parentNode;)if(e===t)return!0;return!1},u.getElement=function(e,t){let n;if("string"==typeof e?n=document.querySelector(e):null!=e.nodeType&&(n=e),null==n)throw new Error(`Invalid \`${t}\` option provided. Please provide a CSS selector or a plain HTML element.`);return n},u.getElements=function(e,t){let n,r;if(e instanceof Array){r=[];try{for(n of e)r.push(this.getElement(n,t))}catch(e){r=null}}else if("string"==typeof e)for(n of(r=[],document.querySelectorAll(e)))r.push(n);else null!=e.nodeType&&(r=[e]);if(null==r||!r.length)throw new Error(`Invalid \`${t}\` option provided. Please provide a CSS selector, a plain HTML element or a list of those.`);return r},u.confirm=function(e,t,n){return window.confirm(e)?t():null!=n?n():void 0},u.isValidFile=function(e,t){if(!t)return!0;t=t.split(",");let n=e.type,r=n.replace(/\/.*$/,"");for(let o of t)if(o=o.trim(),"."===o.charAt(0)){if(-1!==e.name.toLowerCase().indexOf(o.toLowerCase(),e.name.length-o.length))return!0}else if(/\/\*$/.test(o)){if(r===o.replace(/\/.*$/,""))return!0}else if(n===o)return!0;return!1},"undefined"!=typeof jQuery&&null!==jQuery&&(jQuery.fn.dropzone=function(e){return this.each((function(){return new u(this,e)}))}),u.ADDED="added",u.QUEUED="queued",u.ACCEPTED=u.QUEUED,u.UPLOADING="uploading",u.PROCESSING=u.UPLOADING,u.CANCELED="canceled",u.ERROR="error",u.SUCCESS="success";var p=function(e,t,n,r,o,i,s,a,l,u){let d=function(e){e.naturalWidth;let t=e.naturalHeight,n=document.createElement("canvas");n.width=1,n.height=t;let r=n.getContext("2d");r.drawImage(e,0,0);let{data:o}=r.getImageData(1,0,1,t),i=0,s=t,a=t;for(;a>i;)0===o[4*(a-1)+3]?s=a:i=a,a=s+i>>1;let l=a/t;return 0===l?1:l}(t);return e.drawImage(t,n,r,o,i,s,a,l,u/d)};class f{static initClass(){this.KEY_STR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}static encode64(e){let t,n,r,o,i,s="",a="",l="",u=0;for(;t=e[u++],n=e[u++],a=e[u++],r=t>>2,o=(3&t)<<4|n>>4,i=(15&n)<<2|a>>6,l=63&a,isNaN(n)?i=l=64:isNaN(a)&&(l=64),s=s+this.KEY_STR.charAt(r)+this.KEY_STR.charAt(o)+this.KEY_STR.charAt(i)+this.KEY_STR.charAt(l),t=n=a="",r=o=i=l="",ue.length)break}return n}static decode64(e){let t,n,r,o,i,s="",a="",l=0,u=[];for(/[^A-Za-z0-9\+\/\=]/g.exec(e)&&console.warn("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\nExpect errors in decoding."),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");r=this.KEY_STR.indexOf(e.charAt(l++)),o=this.KEY_STR.indexOf(e.charAt(l++)),i=this.KEY_STR.indexOf(e.charAt(l++)),a=this.KEY_STR.indexOf(e.charAt(l++)),t=r<<2|o>>4,n=(15&o)<<4|i>>2,s=(3&i)<<6|a,u.push(t),64!==i&&u.push(n),64!==a&&u.push(s),t=n=s="",r=o=i=a="",l{let{mutate:t,ownProps:{actions:n={}}}=e;return{actions:Object.assign({},n,{files:Object.assign({},n.files,{moveFiles:(e,n)=>t({variables:{folderId:e,fileIds:n},update:()=>{window.ss.apolloClient.resetStore()}})})})}}};t.config=l;var u=(0,o.graphql)(a,l);t.default=u},6307:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mutation=t.default=t.config=void 0;var r,o=n(7588),i=(r=n(6821))&&r.__esModule?r:{default:r};const{mutation:s,config:a}=(0,i.default)("publishFiles");t.config=a,t.mutation=s;var l=(0,o.graphql)(s,a);t.default=l},8115:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{files:t}=e;return{variables:{ids:t.map((e=>e.id))}}},props(e){const{data:{error:t,readDescendantFileCounts:n,loading:r}}=e,o=t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message));return{loading:r,descendantFileCounts:n?n.reduce(((e,t)=>{let{id:n,count:r}=t;return{...e,[n]:r}}),{}):{},graphQLErrors:o}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"DescendantFileCounts",pagination:!1,params:{ids:"[ID]!"},args:{root:{ids:"ids"}},fields:["id","count"]};t.default=s},1421:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{files:t}=e;return{variables:{ids:t.map((e=>e.id))}}},props(e){const{data:{error:t,readFileUsage:n,loading:r}}=e,o=t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message));return{loading:r,fileUsage:n?n.reduce(((e,t)=>{let{id:n,inUseCount:r}=t;return{...e,[n]:r}}),{}):{},graphQLErrors:o}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"FileUsage",pagination:!1,params:{ids:"[ID]!"},args:{root:{ids:"ids"}},fields:["id","inUseCount"]};t.default=s},7100:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1075),o=n(6648);const i={options(e){let{sectionConfig:t,folderId:n,fileId:o,query:i}=e;const s=Object.assign({},i.filter),a=Object.assign({},s,{parentId:void 0,recursive:(0,r.hasFilters)(s),currentFolderOnly:void 0}),l=(0,r.hasFilters)(s)?null:o||null,u={id:l?null:n||0,anyChildId:l},[d,c]=i.sort?i.sort.split(","):["",""],p=i.limit||t.limit;return{variables:{rootFilter:u,childrenFilter:a,limit:p,offset:((i.page||1)-1)*p,sortBy:d&&c?{[d]:c.toUpperCase()}:void 0}}},props(e){let{data:{error:t,refetch:n,readFiles:r,loading:o},ownProps:{actions:i}}=e;const s=r?r[0]:null,a=s&&s.children?s.children.nodes.filter((e=>e)):[],l=s&&s.children?s.children.pageInfo.totalCount:0,u=s&&!s.children;return{loading:o||u,folder:s,files:a,filesTotalCount:l,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message)),actions:Object.assign({},i,{files:Object.assign({},i.files,{readFiles:n})})}}},{READ:s}=o.graphqlTemplates;var a={apolloConfig:i,templateName:s,pluralName:"Files",pagination:!1,params:{limit:"Int!",offset:"Int!",rootFilter:"FileFilterInput",childrenFilter:"FileFilterInput",sortBy:"FolderChildrenSortFields"},args:{root:{filter:"rootFilter"},"root/...on Folder/children":{limit:"limit",offset:"offset",filter:"childrenFilter",sort:"sortBy"}},fragments:["FileInterfaceFields","FileFields"],fields:["...FileInterfaceFields","...FileFields","...on Folder",["children",["pageInfo",["totalCount"],"nodes",["...FileInterfaceFields","...FileFields"]],"parents",["id","title"]]]};t.default=a},1280:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6648);const o={options(e){let{fileId:t}=e;return{variables:{rootFilter:{id:t}}}},props(e){let{data:{error:t,readFiles:n,loading:r}}=e;return{loading:r,file:n?n[0]:null,graphQLErrors:t&&t.graphQLErrors&&t.graphQLErrors.map((e=>e.message))}}},{READ:i}=r.graphqlTemplates;var s={apolloConfig:o,templateName:i,pluralName:"Files",pagination:!1,params:{rootFilter:"FileFilterInput"},args:{root:{filter:"rootFilter"}},fragments:["FileInterfaceFields","FileFields"],fields:["...FileInterfaceFields","...FileFields"]};t.default=s},168:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mutation=t.default=t.config=void 0;var r,o=n(7588),i=(r=n(6821))&&r.__esModule?r:{default:r};const{mutation:s,config:a}=(0,i.default)("unpublishFiles");t.config=a,t.mutation=s;var l=(0,o.graphql)(s,a);t.default=l},8750:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=["SET_LAST_SELECTED","SET_SELECTED_FILES","DESELECT_FILES","SELECT_FILES","LOAD_FILE_REQUEST","LOAD_FILE_SUCCESS","HIGHLIGHT_FILES","UPDATE_BATCH_ACTIONS","SET_NOTICE_MESSAGE","SET_ERROR_MESSAGE","SET_ENABLE_DROPZONE","SET_FILE_BADGE","CLEAR_FILE_BADGE","ACTIVATE_MODAL","DEACTIVATE_MODAL","CONCATENATE_SELECT","SET_LOADING"].reduce(((e,t)=>Object.assign(e,{[t]:`GALLERY.${t}`})),{});t.default=n},3669:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.activateModal=function(e){return t=>{t({type:o.default.ACTIVATE_MODAL,payload:e})}},t.clearFileBadge=i,t.deactivateModal=function(){return e=>{e({type:o.default.DEACTIVATE_MODAL})}},t.deselectFiles=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return t=>t({type:o.default.DESELECT_FILES,payload:{ids:e}})},t.loadFile=function(e,t){return n=>{n({type:o.default.LOAD_FILE_SUCCESS,payload:{id:e,file:t}})}},t.selectFiles=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return t=>t({type:o.default.SELECT_FILES,payload:{ids:e}})},t.setConcatenateSelect=function(e){return t=>t({type:o.default.CONCATENATE_SELECT,payload:!!e})},t.setEnableDropzone=function(e){return t=>t({type:o.default.SET_ENABLE_DROPZONE,payload:{enableDropzone:e}})},t.setErrorMessage=function(e){return t=>t({type:o.default.SET_ERROR_MESSAGE,payload:{message:e}})},t.setFileBadge=function(e,t,n,r){return(s,a)=>{const{assetAdmin:l}=a(),u=l.gallery.badges.find((t=>t.id===e));u&&u.timer&&clearTimeout(u.timer);const d=r>0?setTimeout((()=>i(e)(s)),r):null;s({type:o.default.SET_FILE_BADGE,payload:{id:e,message:t,status:n,timer:d}})}},t.setLastSelected=function(e){return t=>{t({type:o.default.SET_LAST_SELECTED,payload:{id:e}})}},t.setLoading=function(e){return t=>{t({type:o.default.SET_LOADING,payload:!!e})}},t.setNoticeMessage=function(e){return t=>t({type:o.default.SET_NOTICE_MESSAGE,payload:{message:e}})},t.setSelectedFiles=function(e){return t=>{t({type:o.default.SET_SELECTED_FILES,payload:{files:e}})}};var r,o=(r=n(8750))&&r.__esModule?r:{default:r};function i(e){return t=>{t({type:o.default.CLEAR_FILE_BADGE,payload:{id:e}})}}},3627:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,{type:t,payload:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t){case o.default.SET_LAST_SELECTED:return{...e,lastSelected:n.id};case o.default.SET_FILE_BADGE:return{...e,badges:e.badges.filter((e=>e.id!==n.id)).concat([n])};case o.default.CLEAR_FILE_BADGE:return{...e,badges:e.badges.filter((e=>e.id!==n.id))};case o.default.SET_ENABLE_DROPZONE:return{...e,enableDropzone:n.enableDropzone};case o.default.SET_NOTICE_MESSAGE:return{...e,noticeMessage:n.message};case o.default.SET_ERROR_MESSAGE:return{...e,errorMessage:n.message};case o.default.LOAD_FILE_SUCCESS:{const t=e.files.find((e=>e.id===n.id));if(t){const o={...t,...n.file};return(0,r.default)({...e,files:e.files.map((e=>e.id===o.id?o:e))})}return e.folder.id===n.id?(0,r.default)({...e,folder:{...e.folder,...n.file}}):e}case o.default.SET_SELECTED_FILES:return(0,r.default)({...e,selectedFiles:Array.isArray(n.files)?n.files:[]});case o.default.SELECT_FILES:{let t=null;return t=null===n.ids?e.files.map((e=>e.id)):e.selectedFiles.concat(n.ids.filter((t=>-1===e.selectedFiles.indexOf(t)))),(0,r.default)({...e,selectedFiles:t})}case o.default.DESELECT_FILES:{let t=null;return t=null===n.ids?[]:e.selectedFiles.filter((e=>-1===n.ids.indexOf(e))),(0,r.default)({...e,selectedFiles:t})}case o.default.ACTIVATE_MODAL:return(0,r.default)({...e,modal:n});case o.default.DEACTIVATE_MODAL:return(0,r.default)({...e,modal:null});case o.default.CONCATENATE_SELECT:return(0,r.default)({...e,concatenateSelect:n});case o.default.SET_LOADING:return(0,r.default)({...e,loading:n});default:return e}};var r=s(n(7752)),o=s(n(8750)),i=s(n(4754));function s(e){return e&&e.__esModule?e:{default:e}}const a={selectedFiles:[],errorMessage:null,noticeMessage:null,enableDropzone:!0,modal:null,badges:[],concatenateSelect:!1,loading:!1,sorters:[{field:"title",direction:"asc",label:i.default._t("AssetAdmin.FILTER_TITLE_ASC","title a-z")},{field:"title",direction:"desc",label:i.default._t("AssetAdmin.FILTER_TITLE_DESC","title z-a")},{field:"lastEdited",direction:"desc",label:i.default._t("AssetAdmin.FILTER_DATE_DESC","newest")},{field:"lastEdited",direction:"asc",label:i.default._t("AssetAdmin.FILTER_DATE_ASC","oldest")}],lastSelected:null}},9905:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultImageFactory=t.default=void 0;var r=i(n(2175)),o=i(n(270));function i(e){return e&&e.__esModule?e:{default:e}}const s={minRetry:0,maxRetry:0,expiry:0,onStatusChange:()=>null,onRetry:()=>null,onReset:()=>null,onTimeout:()=>null},a=(e,t,n)=>{const r=new Image;r.onload=t,r.onerror=n,r.src=e};t.defaultImageFactory=a;var l=class{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:a;this.options={...s,...e},this.factory=t}loadImage(e){return this.options.minRetry&&o.default.lock(e)?this.loadImageLoop(e,this.options.minRetry):null}loadImageLoop(e,t){return this.options.onStatusChange(e,r.default.LOADING),new Promise(((t,n)=>this.factory(e,t,n))).then((()=>this.handleSuccess(e))).catch((()=>this.handleError(e,t)))}handleReset(e,t){this.options.onReset(e),t()}handleTimeout(e,t){const n=setTimeout(e,t);return this.options.onTimeout(n,t),n}handleSuccess(e){o.default.unlock(e),this.options.onStatusChange(e,r.default.SUCCESS)}handleFailure(e){return o.default.unlock(e),this.options.onStatusChange(e,r.default.FAILED),this.options.expiry?new Promise((t=>{this.handleTimeout((()=>this.handleReset(e,t)),1e3*this.options.expiry)})):null}handleError(e,t){return t>this.options.maxRetry?this.handleFailure(e):(this.options.onStatusChange(e,r.default.WAITING),this.handleRetry(e,t))}handleRetry(e,t){const n=new Promise((n=>{this.handleTimeout((()=>n(this.loadImageLoop(e,2*t))),1e3*t)}));return this.options.onRetry(e,t,n),n}setOnRetry(e){this.options.onRetry=e}setOnReset(e){this.options.onReset=e}setOnStatusChange(e){this.options.onStatusChange=e}setOnTimeout(e){this.options.onTimeout=e}};t.default=l},9505:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={SET_STATUS:"IMAGE_LOAD_SET_STATUS",RESET:"IMAGE_LOAD_RESET"}},3521:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadImage=function(e,t){return(n,i)=>{if(!e)return null;if(i().assetAdmin.imageLoad.files.find((t=>t.url===e)))return null;const s={...t,onStatusChange:(e,t)=>n({type:r.default.SET_STATUS,payload:{status:t,url:e}}),onReset:e=>n({type:r.default.RESET,payload:{url:e}})};return new o.default(s).loadImage(e)}};var r=i(n(9505)),o=i(n(9905));function i(e){return e&&e.__esModule?e:{default:e}}},270:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Component=void 0;class n{constructor(){this.urls=[]}lock(e){return!(this.urls.indexOf(e)>=0)&&(this.urls=[...this.urls,e],!0)}unlock(e){this.urls=this.urls.filter((t=>t!==e))}}t.Component=n,window.ss=window.ss||{},window.ss.imagelocker=window.ss.imagelocker||new n;var r=window.ss.imagelocker;t.default=r},4694:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,{type:t,payload:n}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};switch(t){case o.default.SET_STATUS:return{...e,files:[...e.files.filter((e=>e.url!==n.url)),n]};case o.default.RESET:return{...e,files:[...e.files.filter((e=>e.url!==n.url))]};default:return e}};var r,o=(r=n(9505))&&r.__esModule?r:{default:r};const i={files:[]}},2175:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={DISABLED:"DISABLED",NONE:"NONE",SUCCESS:"SUCCESS",LOADING:"LOADING",WAITING:"WAITING",FAILED:"FAILED"}},3576:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={DEFINE_IMAGE_SIZE_PRESETS:"DEFINE_IMAGE_SIZE_PRESETS",INIT_FORM_SCHEMA_STACK:"INIT_FORM_SCHEMA_STACK",POP_FORM_SCHEMA:"POP_FORM_SCHEMA",PUSH_FORM_SCHEMA:"PUSH_FORM_SCHEMA",RESET:"RESET",RESET_FORM_STACK:"RESET_FORM_STACK"}},4478:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defineImageSizePresets=function(e){return{type:r.default.DEFINE_IMAGE_SIZE_PRESETS,payload:{imageSizePresets:e}}},t.initFormStack=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return{type:r.default.INIT_FORM_SCHEMA_STACK,payload:{formSchema:{type:e,nextType:t}}}},t.popFormStackEntry=function(){return{type:r.default.POP_FORM_SCHEMA}},t.pushFormStackEntry=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0;return{type:r.default.PUSH_FORM_SCHEMA,payload:{formSchema:{type:e,nextType:t}}}},t.reset=function(){return{type:r.default.RESET}},t.resetFormStack=function(){return{type:r.default.RESET_FORM_STACK}},t.stashFormValues=function(e,t){return(n,r)=>{const a=r(),l=(0,o.default)(a.form.formState,`${e}.values`),u=(0,o.default)(a.form.formSchemas,`${t}.schema.fields`);if(l){const e=Object.keys(l).filter((e=>null!==l[e]&&(0,s.default)(e,u))).map((e=>({name:e,value:l[e]})));n((0,i.setSchemaStateOverrides)(t,{fields:e}))}}};var r=a(n(3576)),o=a(n(9298)),i=n(3573),s=a(n(4916));function a(e){return e&&e.__esModule?e:{default:e}}},7897:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.initialState=t.default=void 0;var r,o=(r=n(3576))&&r.__esModule?r:{default:r};const i={imageSizePresets:[],formSchemaStack:[],formSchema:void 0};function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i,{type:t,payload:n}=arguments.length>1?arguments[1]:void 0;const{formSchemaStack:r}=e;switch(t){case o.default.DEFINE_IMAGE_SIZE_PRESETS:return{...e,imageSizePresets:n.imageSizePresets};case o.default.PUSH_FORM_SCHEMA:return{...e,formSchemaStack:[...r,n.formSchema]};case o.default.INIT_FORM_SCHEMA_STACK:return{...e,formSchemaStack:[n.formSchema]};case o.default.POP_FORM_SCHEMA:return{...e,formSchemaStack:r.slice(0,-1)};case o.default.RESET:return i;case o.default.RESET_FORM_STACK:return{...e,formSchemaStack:r.slice(0,1)};default:return e}}t.initialState=i;const a=e=>({...e,formSchema:e.formSchemaStack.slice(-1).pop()});t.default=function(){return a(s(...arguments))}},4916:function(e,t){"use strict";function n(e,t){let r;for(r=0;r0&&void 0!==arguments[0]?arguments[0]:s,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.PREVIEWFIELD_ADD_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:t.payload.file}));case o.default.PREVIEWFIELD_FAIL_UPLOAD:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.message)}));case o.default.PREVIEWFIELD_REMOVE_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:void 0}));case o.default.PREVIEWFIELD_UPDATE_FILE:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.data)}));case o.default.PREVIEWFIELD_UPDATE_STATUS:return(0,r.default)(Object.assign({},e,{[t.payload.id]:Object.assign({},e[t.payload.id],t.payload.status)}));default:return e}};t.default=a},4973:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={ADD_QUEUED_FILE:"ADD_QUEUED_FILE",FAIL_UPLOAD:"FAIL_UPLOAD",PURGE_UPLOAD_QUEUE:"PURGE_UPLOAD_QUEUE",REMOVE_QUEUED_FILE:"REMOVE_QUEUED_FILE",SUCCEED_UPLOAD:"SUCCEED_UPLOAD",UPDATE_QUEUED_FILE:"UPDATE_QUEUED_FILE"}},2986:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addQueuedFile=function(e){return t=>t({type:o.default.ADD_QUEUED_FILE,payload:{file:e}})},t.failUpload=function(e,t,n){return r=>{let i=t.message;return t.errors&&t.errors.length&&(i=t.errors[0]),"string"==typeof t&&(i={value:n||t,type:"error"}),r({type:o.default.FAIL_UPLOAD,payload:{queuedId:e,message:i}})}},t.purgeUploadQueue=function(){return e=>e({type:o.default.PURGE_UPLOAD_QUEUE,payload:null})},t.removeQueuedFile=function(e){return t=>t({type:o.default.REMOVE_QUEUED_FILE,payload:{queuedId:e}})},t.succeedUpload=function(e,t){return n=>n({type:o.default.SUCCEED_UPLOAD,payload:{queuedId:e,json:t}})},t.updateQueuedFile=function(e,t){return n=>n({type:o.default.UPDATE_QUEUED_FILE,payload:{queuedId:e,updates:t}})};var r,o=(r=n(4973))&&r.__esModule?r:{default:r}},5456:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=a(n(7752)),o=a(n(4973)),i=a(n(5488)),s=a(n(4754));function a(e){return e&&e.__esModule?e:{default:e}}const l={items:[]};var u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case o.default.ADD_QUEUED_FILE:return(0,r.default)({...e,items:[...e.items,{...i.default,...t.payload.file}]});case o.default.FAIL_UPLOAD:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,message:t.payload.message}:e))});case o.default.PURGE_UPLOAD_QUEUE:return(0,r.default)({...e,items:e.items.filter((e=>!e.id))});case o.default.REMOVE_QUEUED_FILE:return(0,r.default)({...e,items:e.items.filter((e=>e.queuedId!==t.payload.queuedId))});case o.default.SUCCEED_UPLOAD:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,...t.payload.json,messages:[{value:s.default._t("AssetAdmin.DROPZONE_SUCCESS_UPLOAD"),type:"success",extraClass:"success"}]}:e))});case o.default.UPDATE_QUEUED_FILE:return(0,r.default)({...e,items:e.items.map((e=>e.queuedId===t.payload.queuedId?{...e,...t.payload.updates}:e))});default:return e}};t.default=u},4228:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH:"UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH",UPLOADFIELD_ADD_FILE:"UPLOADFIELD_ADD_FILE",UPLOADFIELD_SET_FILES:"UPLOADFIELD_SET_FILES",UPLOADFIELD_REMOVE_FILE:"UPLOADFIELD_REMOVE_FILE",UPLOADFIELD_UPLOAD_FAILURE:"UPLOADFIELD_UPLOAD_FAILURE",UPLOADFIELD_UPLOAD_SUCCESS:"UPLOADFIELD_UPLOAD_SUCCESS",UPLOADFIELD_UPDATE_QUEUED_FILE:"UPLOADFIELD_UPDATE_QUEUED_FILE"}},4504:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addFile=function(e,t){return n=>n({type:o.default.UPLOADFIELD_ADD_FILE,payload:{fieldId:e,file:t}})},t.failUpload=function(e,t,n,r){return i=>{let s=n.message;return"string"==typeof n&&(s={value:r||n,type:"error"}),i({type:o.default.UPLOADFIELD_UPLOAD_FAILURE,payload:{fieldId:e,queuedId:t,message:s}})}},t.removeFile=function(e,t){return n=>n({type:o.default.UPLOADFIELD_REMOVE_FILE,payload:{fieldId:e,file:t}})},t.setFiles=function(e,t){return n=>n({type:o.default.UPLOADFIELD_SET_FILES,payload:{fieldId:e,files:t}})},t.setFormSchemaFilesHash=function(e,t){return n=>n({type:o.default.UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH,payload:{fieldId:e,hash:t}})},t.succeedUpload=function(e,t,n){return r=>r({type:o.default.UPLOADFIELD_UPLOAD_SUCCESS,payload:{fieldId:e,queuedId:t,json:n}})},t.updateQueuedFile=function(e,t,n){return r=>r({type:o.default.UPLOADFIELD_UPDATE_QUEUED_FILE,payload:{fieldId:e,queuedId:t,updates:n}})};var r,o=(r=n(4228))&&r.__esModule?r:{default:r}},7437:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=s(n(4228)),o=s(n(5488)),i=s(n(6919));function s(e){return e&&e.__esModule?e:{default:e}}const a={fields:{}},l={formSchemaFilesHash:null,files:[]};var u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a,t=arguments.length>1?arguments[1]:void 0;const n=(0,i.default)(e,t,l);switch(t.type){case r.default.UPLOADFIELD_SET_FORM_SCHEMA_FILES_HASH:return n((()=>({formSchemaFilesHash:t.payload.hash})));case r.default.UPLOADFIELD_ADD_FILE:return n((e=>e.files.find((e=>e.id===t.payload.file.id))?e:{...e,files:[...e.files,{...o.default,...t.payload.file}]}));case r.default.UPLOADFIELD_SET_FILES:return n((()=>({files:t.payload.files})));case r.default.UPLOADFIELD_UPLOAD_FAILURE:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,{message:t.payload.message}):e))})));case r.default.UPLOADFIELD_REMOVE_FILE:return n((e=>({files:e.files.filter((e=>!(t.payload.file.queuedId&&e.queuedId===t.payload.file.queuedId||t.payload.file.id&&e.id===t.payload.file.id)))})));case r.default.UPLOADFIELD_UPLOAD_SUCCESS:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,t.payload.json):e))})));case r.default.UPLOADFIELD_UPDATE_QUEUED_FILE:return n((e=>({files:e.files.map((e=>e.queuedId===t.payload.queuedId?Object.assign({},e,t.payload.updates):e))})));default:return e}};t.default=u},3466:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=i(n(7363)),o=i(n(4754));function i(e){return e&&e.__esModule?e:{default:e}}var s=e=>t=>{const n=t.onClick,i={...t,onClick(e,r){const{owners:i}=t.data;let s=null;s=i&&parseInt(i,10)>0?[o.default.inject(o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_1","This file is being used in {count} other published section(s)."),{count:i}),o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_2","Ensure files are removed from content areas prior to unpublishing them. Otherwise, they will appear as broken links."),o.default._t("AssetAdmin.SINGLE_OWNED_WARNING_3","Do you want to unpublish this file anyway?")].join("\n\n"):o.default._t("AssetAdmin.CONFIRMUNPUBLISH","Are you sure you want to unpublish this record?"),confirm(s)?n(e,r):e.preventDefault()}};return r.default.createElement(e,i)};t.default=s},4026:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.disabledTreeDropdownField=t.default=void 0;var r,o=(r=n(7363))&&r.__esModule?r:{default:r},i=n(1624),s=n(2827),a=n(4926);const l=e=>t=>{const{disabledIDs:n}=t,r=t.findTreeByPath||a.findTreeByPath,i={...t,findTreeByPath(e,t){const o=r(e,t),i=t.some((e=>n.includes(e)));return o?{...o,children:o.children.map((e=>({...e,disabled:i||n.includes(e.id)})))}:null}};return o.default.createElement(e,i)};t.disabledTreeDropdownField=l;var u=(0,s.compose)((0,i.connect)((e=>({disabledIDs:e.assetAdmin.gallery.selectedFiles}))),l);t.default=u},6511:function(e,t,n){"use strict";var r=n(7418),o={};function i(e,t,n,r,o,i,s,a){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,i,s,a],d=0;(l=new Error(t.replace(/%s/g,(function(){return u[d++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}var s="mixins";e.exports=function(e,t,n){var a=[],l={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",UNSAFE_componentWillMount:"DEFINE_MANY",UNSAFE_componentWillReceiveProps:"DEFINE_MANY",UNSAFE_componentWillUpdate:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},u={getDerivedStateFromProps:"DEFINE_MANY_MERGED"},d={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n>>2]>>>24-i%4*8&255;t[r+i>>>2]|=s<<24-(r+i)%4*8}else for(var a=0;a>>2]=n[a>>>2];return this.sigBytes+=o,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=l.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n>>2]>>>24-o%4*8&255;r.push((i>>>4).toString(16)),r.push((15&i).toString(16))}return r.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new u.init(n,t/2)}},p=d.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],o=0;o>>2]>>>24-o%4*8&255;r.push(String.fromCharCode(i))}return r.join("")},parse:function(e){for(var t=e.length,n=[],r=0;r>>2]|=(255&e.charCodeAt(r))<<24-r%4*8;return new u.init(n,t)}},f=d.Utf8={stringify:function(e){try{return decodeURIComponent(escape(p.stringify(e)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(e){return p.parse(unescape(encodeURIComponent(e)))}},h=a.BufferedBlockAlgorithm=l.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(e){"string"==typeof e&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,r=this._data,o=r.words,i=r.sigBytes,s=this.blockSize,a=i/(4*s),l=(a=t?e.ceil(a):e.max((0|a)-this._minBufferSize,0))*s,d=e.min(4*l,i);if(l){for(var c=0;c>>24)|4278255360&(o<<24|o>>>8)}var i=this._hash.words,s=e[t+0],l=e[t+1],f=e[t+2],h=e[t+3],m=e[t+4],g=e[t+5],y=e[t+6],v=e[t+7],b=e[t+8],E=e[t+9],_=e[t+10],C=e[t+11],S=e[t+12],w=e[t+13],F=e[t+14],O=e[t+15],I=i[0],A=i[1],x=i[2],D=i[3];I=u(I,A,x,D,s,7,a[0]),D=u(D,I,A,x,l,12,a[1]),x=u(x,D,I,A,f,17,a[2]),A=u(A,x,D,I,h,22,a[3]),I=u(I,A,x,D,m,7,a[4]),D=u(D,I,A,x,g,12,a[5]),x=u(x,D,I,A,y,17,a[6]),A=u(A,x,D,I,v,22,a[7]),I=u(I,A,x,D,b,7,a[8]),D=u(D,I,A,x,E,12,a[9]),x=u(x,D,I,A,_,17,a[10]),A=u(A,x,D,I,C,22,a[11]),I=u(I,A,x,D,S,7,a[12]),D=u(D,I,A,x,w,12,a[13]),x=u(x,D,I,A,F,17,a[14]),I=d(I,A=u(A,x,D,I,O,22,a[15]),x,D,l,5,a[16]),D=d(D,I,A,x,y,9,a[17]),x=d(x,D,I,A,C,14,a[18]),A=d(A,x,D,I,s,20,a[19]),I=d(I,A,x,D,g,5,a[20]),D=d(D,I,A,x,_,9,a[21]),x=d(x,D,I,A,O,14,a[22]),A=d(A,x,D,I,m,20,a[23]),I=d(I,A,x,D,E,5,a[24]),D=d(D,I,A,x,F,9,a[25]),x=d(x,D,I,A,h,14,a[26]),A=d(A,x,D,I,b,20,a[27]),I=d(I,A,x,D,w,5,a[28]),D=d(D,I,A,x,f,9,a[29]),x=d(x,D,I,A,v,14,a[30]),I=c(I,A=d(A,x,D,I,S,20,a[31]),x,D,g,4,a[32]),D=c(D,I,A,x,b,11,a[33]),x=c(x,D,I,A,C,16,a[34]),A=c(A,x,D,I,F,23,a[35]),I=c(I,A,x,D,l,4,a[36]),D=c(D,I,A,x,m,11,a[37]),x=c(x,D,I,A,v,16,a[38]),A=c(A,x,D,I,_,23,a[39]),I=c(I,A,x,D,w,4,a[40]),D=c(D,I,A,x,s,11,a[41]),x=c(x,D,I,A,h,16,a[42]),A=c(A,x,D,I,y,23,a[43]),I=c(I,A,x,D,E,4,a[44]),D=c(D,I,A,x,S,11,a[45]),x=c(x,D,I,A,O,16,a[46]),I=p(I,A=c(A,x,D,I,f,23,a[47]),x,D,s,6,a[48]),D=p(D,I,A,x,v,10,a[49]),x=p(x,D,I,A,F,15,a[50]),A=p(A,x,D,I,g,21,a[51]),I=p(I,A,x,D,S,6,a[52]),D=p(D,I,A,x,h,10,a[53]),x=p(x,D,I,A,_,15,a[54]),A=p(A,x,D,I,l,21,a[55]),I=p(I,A,x,D,b,6,a[56]),D=p(D,I,A,x,O,10,a[57]),x=p(x,D,I,A,y,15,a[58]),A=p(A,x,D,I,w,21,a[59]),I=p(I,A,x,D,m,6,a[60]),D=p(D,I,A,x,C,10,a[61]),x=p(x,D,I,A,f,15,a[62]),A=p(A,x,D,I,E,21,a[63]),i[0]=i[0]+I|0,i[1]=i[1]+A|0,i[2]=i[2]+x|0,i[3]=i[3]+D|0},_doFinalize:function(){var t=this._data,n=t.words,r=8*this._nDataBytes,o=8*t.sigBytes;n[o>>>5]|=128<<24-o%32;var i=e.floor(r/4294967296),s=r;n[15+(o+64>>>9<<4)]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8),n[14+(o+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),t.sigBytes=4*(n.length+1),this._process();for(var a=this._hash,l=a.words,u=0;u<4;u++){var d=l[u];l[u]=16711935&(d<<8|d>>>24)|4278255360&(d<<24|d>>>8)}return a},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});function u(e,t,n,r,o,i,s){var a=e+(t&n|~t&r)+o+s;return(a<>>32-i)+t}function d(e,t,n,r,o,i,s){var a=e+(t&r|n&~r)+o+s;return(a<>>32-i)+t}function c(e,t,n,r,o,i,s){var a=e+(t^n^r)+o+s;return(a<>>32-i)+t}function p(e,t,n,r,o,i,s){var a=e+(n^(t|~r))+o+s;return(a<>>32-i)+t}t.MD5=i._createHelper(l),t.HmacMD5=i._createHmacHelper(l)}(Math),r.MD5)},854:function(e,t,n){var r=n(961),o=n(7672);void 0===o.InsertEmbedModal&&(o.InsertEmbedModal=r),e.exports=r},7574:function(e,t,n){var r=n(2896),o=n(7672);void 0===o.InsertMediaModal&&(o.InsertMediaModal=r),e.exports=r},7672:function(e,t,n){"use strict";e.exports=function(){if("object"==typeof globalThis)return globalThis;var e;try{e=this||new Function("return this")()}catch(e){if("object"==typeof window)return window;if("object"==typeof self)return self;if(void 0!==n.g)return n.g}return e}()},3059:function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n0}},{key:"getMetadataColumnProperty",value:function(e,t,n){var r=this.getColumnMetadataByName(e);return null==r?n:r.hasOwnProperty(t)?r[t]:n}},{key:"orderColumns",value:function(e){var t=this;return l(e,(function(e){var n=a(t.columnMetadata,{columnName:e});return null==n||isNaN(n.order)?100:n.order}))}},{key:"getColumns",value:function(){var e=0===this.filteredColumns.length?this.allColumns:this.filteredColumns;return e=u(e,this.metadataColumns),e=this.orderColumns(e)}}]),e}();e.exports=d},1172:function(e,t,n){"use strict";var r=n(7363),o=n(2555)({getDefaultProps:function(){return{placeholderText:""}},render:function(){return"function"!=typeof this.props.customFilterComponent?(console.log("Couldn't find valid template."),r.createElement("div",null)):r.createElement(this.props.customFilterComponent,{changeFilter:this.props.changeFilter,results:this.props.results,currentResults:this.props.currentResults,placeholderText:this.props.placeholderText})}});e.exports=o},2039:function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t0&&(e=r.createElement("button",{type:"button",onClick:this.props.previous,style:this.props.useGriddleStyles?{color:"#222",border:"none",background:"none",margin:"0 0 0 10px"}:null},this.props.previousIconComponent,this.props.previousText)),this.props.currentPage!==this.props.maxPage-1&&(t=r.createElement("button",{type:"button",onClick:this.props.next,style:this.props.useGriddleStyles?{color:"#222",border:"none",background:"none",margin:"0 10px 0 0"}:null},this.props.nextText,this.props.nextIconComponent));var n=null,o=null,s=null;if(!0===this.props.useGriddleStyles){var a={float:"left",minHeight:"1px",marginTop:"5px"};s=i({textAlign:"right",width:"34%"},a),o=i({textAlign:"center",width:"33%"},a),n=i({width:"33%"},a)}for(var l=[],u=1;u<=this.props.maxPage;u++)l.push(r.createElement("option",{value:u,key:u},u));return r.createElement("div",{style:this.props.useGriddleStyles?{minHeight:"35px"}:null},r.createElement("div",{className:this.props.previousClassName,style:n},e),r.createElement("div",{className:"griddle-page",style:o},r.createElement("select",{value:this.props.currentPage+1,onChange:this.pageChange},l)," / ",this.props.maxPage),r.createElement("div",{className:this.props.nextClassName,style:s},t))}});e.exports=s},344:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=(n(3059),n(7024)),s=n(3560),a=n(7287),l=n(8583),u=n(1747),d=n(3220),c=n(2569),p=o({getDefaultProps:function(){return{isChildRow:!1,showChildren:!1,data:{},columnSettings:null,rowSettings:null,hasChildren:!1,useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,paddingHeight:null,rowHeight:null,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",onRowClick:null,multipleSelectionSettings:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null}},componentWillMount:function(){null!==this.props.onRowWillMount&&s(this.props.onRowWillMount)&&this.props.onRowWillMount(this)},componentWillUnmount:function(){null!==this.props.onRowWillUnmount&&s(this.props.onRowWillUnmount)&&this.props.onRowWillUnmount(this)},handleClick:function(e){null!==this.props.onRowClick&&s(this.props.onRowClick)?this.props.onRowClick(this,e):this.props.hasChildren&&this.props.toggleChildren()},handleMouseEnter:function(e){null!==this.props.onRowMouseEnter&&s(this.props.onRowMouseEnter)&&this.props.onRowMouseEnter(this,e)},handleMouseLeave:function(e){null!==this.props.onRowMouseLeave&&s(this.props.onRowMouseLeave)&&this.props.onRowMouseLeave(this,e)},handleSelectionChange:function(e){},handleSelectClick:function(e){this.props.multipleSelectionSettings.isMultipleSelection&&("checkbox"===e.target.type?this.props.multipleSelectionSettings.toggleSelectRow(this.props.data,this.refs.selected.checked):this.props.multipleSelectionSettings.toggleSelectRow(this.props.data,!this.refs.selected.checked))},verifyProps:function(){null===this.props.columnSettings&&console.error("gridRow: The columnSettings prop is null and it shouldn't be")},formatData:function(e){return"boolean"==typeof e?String(e):e},render:function(){var e=this;this.verifyProps();var t=this,n=null;this.props.useGriddleStyles&&(n={margin:"0px",padding:t.props.paddingHeight+"px 5px "+t.props.paddingHeight+"px 5px",height:t.props.rowHeight?this.props.rowHeight-2*t.props.paddingHeight+"px":null,backgroundColor:"#FFF",borderTopColor:"#DDD",color:"#222"});var o=this.props.columnSettings.getColumns(),p=a(o,[]),f=l({},this.props.data);u(f,p);var h,m,g=d(i.pick(f,c(o,"children"))).map((function(t,o){var i=null,s=e.props.columnSettings.getColumnMetadataByName(t[0]),a=0===o&&e.props.hasChildren&&!1===e.props.showChildren&&e.props.useGriddleIcons?r.createElement("span",{style:e.props.useGriddleStyles?{fontSize:"10px",marginRight:"5px"}:null},e.props.parentRowCollapsedComponent):0===o&&e.props.hasChildren&&e.props.showChildren&&e.props.useGriddleIcons?r.createElement("span",{style:e.props.useGriddleStyles?{fontSize:"10px"}:null},e.props.parentRowExpandedComponent):"";if(0===o&&e.props.isChildRow&&e.props.useGriddleStyles&&(n=l(n,{paddingLeft:10})),e.props.columnSettings.hasColumnMetadata()&&null!=s)if(void 0!==s.customComponent&&null!==s.customComponent){var u=r.createElement(s.customComponent,{data:t[1],rowData:f,metadata:s});i=r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,className:s.cssClassName,key:o,style:n},u)}else i=r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,className:s.cssClassName,key:o,style:n},a,e.formatData(t[1]));return i||r.createElement("td",{onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,onMouseLeave:e.handleMouseLeave,key:o,style:n},a,t[1])}));if(null!==this.props.onRowClick&&s(this.props.onRowClick)?(h=null,m=this.handleSelectClick):this.props.multipleSelectionSettings&&this.props.multipleSelectionSettings.isMultipleSelection?(h=this.handleSelectClick,m=null):(h=null,m=null),g&&this.props.multipleSelectionSettings&&this.props.multipleSelectionSettings.isMultipleSelection){this.props.multipleSelectionSettings.getSelectedRowIds();g.unshift(r.createElement("td",{key:"selection",style:n,className:"griddle-select griddle-select-cell",onClick:m},r.createElement("input",{type:"checkbox",checked:this.props.multipleSelectionSettings.getIsRowChecked(f),onChange:this.handleSelectionChange,ref:"selected"})))}var y=t.props.rowSettings&&t.props.rowSettings.getBodyRowMetadataClass(t.props.data)||"standard-row";return t.props.isChildRow?y="child-row":t.props.hasChildren&&(y=t.props.showChildren?this.props.parentRowExpandedClassName:this.props.parentRowCollapsedClassName),r.createElement("tr",{onClick:h,className:y},g)}});e.exports=p},3302:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=(n(3059),n(8718)),s=o({getDefaultProps:function(){return{useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,columnSettings:null,rowSettings:null,paddingHeight:null,rowHeight:null,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",onRowClick:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null,multipleSelectionSettings:null}},getInitialState:function(){return{data:{},showChildren:!1}},componentWillReceiveProps:function(){this.setShowChildren(!1)},toggleChildren:function(){this.setShowChildren(!1===this.state.showChildren)},setShowChildren:function(e){this.setState({showChildren:e})},verifyProps:function(){null===this.props.columnSettings&&console.error("gridRowContainer: The columnSettings prop is null and it shouldn't be")},render:function(){this.verifyProps();var e=this;if(void 0===this.props.data)return r.createElement("tbody",null);var t=[],n=this.props.columnSettings.getColumns();t.push(r.createElement(this.props.rowSettings.rowComponent,{useGriddleStyles:this.props.useGriddleStyles,isSubGriddle:this.props.isSubGriddle,data:this.props.rowSettings.isCustom?i(this.props.data,n):this.props.data,rowData:this.props.rowSettings.isCustom?this.props.data:null,columnSettings:this.props.columnSettings,rowSettings:this.props.rowSettings,hasChildren:e.props.hasChildren,toggleChildren:e.toggleChildren,showChildren:e.state.showChildren,key:e.props.uniqueId+"_base_row",useGriddleIcons:e.props.useGriddleIcons,parentRowExpandedClassName:this.props.parentRowExpandedClassName,parentRowCollapsedClassName:this.props.parentRowCollapsedClassName,parentRowExpandedComponent:this.props.parentRowExpandedComponent,parentRowCollapsedComponent:this.props.parentRowCollapsedComponent,paddingHeight:e.props.paddingHeight,rowHeight:e.props.rowHeight,onRowClick:e.props.onRowClick,onRowMouseEnter:e.props.onRowMouseEnter,onRowMouseLeave:e.props.onRowMouseLeave,multipleSelectionSettings:this.props.multipleSelectionSettings,onRowWillMount:e.props.onRowWillMount,onRowWillUnmount:e.props.onRowWillUnmount}));var o=null;return e.state.showChildren&&(o=e.props.hasChildren&&this.props.data.children.map((function(t,n){var o=e.props.rowSettings.getRowKey(t,n);if(void 0!==t.children){var i=e.constructor.Griddle;return r.createElement("tr",{key:o,style:{paddingLeft:5}},r.createElement("td",{colSpan:e.props.columnSettings.getVisibleColumnCount(),className:"griddle-parent",style:e.props.useGriddleStyles?{border:"none",padding:"0 0 0 5px"}:null},r.createElement(i,{rowMetadata:{key:"id"},isSubGriddle:!0,results:[t],columns:e.props.columnSettings.getColumns(),tableClassName:e.props.tableClassName,parentRowExpandedClassName:e.props.parentRowExpandedClassName,parentRowCollapsedClassName:e.props.parentRowCollapsedClassName,showTableHeading:!1,showPager:!1,columnMetadata:e.props.columnSettings.columnMetadata,parentRowExpandedComponent:e.props.parentRowExpandedComponent,parentRowCollapsedComponent:e.props.parentRowCollapsedComponent,paddingHeight:e.props.paddingHeight,rowHeight:e.props.rowHeight})))}return r.createElement(e.props.rowSettings.rowComponent,{useGriddleStyles:e.props.useGriddleStyles,isSubGriddle:e.props.isSubGriddle,data:t,columnSettings:e.props.columnSettings,isChildRow:!0,columnMetadata:e.props.columnSettings.columnMetadata,key:o})}))),!1===e.props.hasChildren?t[0]:r.createElement("tbody",null,e.state.showChildren?t.concat(o):t)}});e.exports=s},7033:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=n(4721),s=n(2569),a=n(3311),l=o({getDefaultProps:function(){return{columns:[],columnMetadata:[],selectedColumns:[],settingsText:"",maxRowsText:"",resultsPerPage:0,enableToggleCustom:!1,useCustomComponent:!1,useGriddleStyles:!0,toggleCustomComponent:function(){}}},setPageSize:function(e){var t=parseInt(e.target.value,10);this.props.setPageSize(t)},handleChange:function(e){var t=e.target.dataset?e.target.dataset.name:e.target.getAttribute("data-name");!0===e.target.checked&&!1===i(this.props.selectedColumns,t)?(this.props.selectedColumns.push(t),this.props.setColumns(this.props.selectedColumns)):this.props.setColumns(s(this.props.selectedColumns,t))},render:function(){var e=this,t=[];!1===e.props.useCustomComponent&&(t=this.props.columns.map((function(t,n){var o=i(e.props.selectedColumns,t),s=a(e.props.columnMetadata,{columnName:t}),l=t;return void 0!==s&&void 0!==s.displayName&&null!=s.displayName&&(l=s.displayName),void 0!==s&&null!=s&&s.locked?r.createElement("div",{className:"column checkbox"},r.createElement("label",null,r.createElement("input",{type:"checkbox",disabled:!0,name:"check",checked:o,"data-name":t}),l)):void 0!==s&&null!=s&&void 0!==s.visible&&!1===s.visible?null:r.createElement("div",{className:"griddle-column-selection checkbox",key:t,style:e.props.useGriddleStyles?{float:"left",width:"20%"}:null},r.createElement("label",null,r.createElement("input",{type:"checkbox",name:"check",onChange:e.handleChange,checked:o,"data-name":t}),l))})));var n=e.props.enableToggleCustom?r.createElement("div",{className:"form-group"},r.createElement("label",{htmlFor:"maxRows"},r.createElement("input",{type:"checkbox",checked:this.props.useCustomComponent,onChange:this.props.toggleCustomComponent})," ",this.props.enableCustomFormatText)):"",o=this.props.showSetPageSize?r.createElement("div",null,r.createElement("label",{htmlFor:"maxRows"},this.props.maxRowsText,":",r.createElement("select",{onChange:this.setPageSize,value:this.props.resultsPerPage},r.createElement("option",{value:"5"},"5"),r.createElement("option",{value:"10"},"10"),r.createElement("option",{value:"25"},"25"),r.createElement("option",{value:"50"},"50"),r.createElement("option",{value:"100"},"100")))):"";return r.createElement("div",{className:"griddle-settings",style:this.props.useGriddleStyles?{backgroundColor:"#FFF",border:"1px solid #DDD",color:"#222",padding:"10px",marginBottom:"10px"}:null},r.createElement("h6",null,this.props.settingsText),r.createElement("div",{className:"griddle-columns",style:this.props.useGriddleStyles?{clear:"both",display:"table",width:"100%",borderBottom:"1px solid #EDEDED",marginBottom:"10px"}:null},t),o,n)}});e.exports=l},1277:function(e,t,n){"use strict";var r=n(7363),o=n(2555),i=n(4769),s=n(3302),a=(n(3059),n(5203),o({getDefaultProps:function(){return{data:[],columnSettings:null,rowSettings:null,sortSettings:null,multipleSelectionSettings:null,className:"",enableInfiniteScroll:!1,nextPage:null,hasMorePages:!1,useFixedHeader:!1,useFixedLayout:!0,paddingHeight:null,rowHeight:null,filterByColumn:null,infiniteScrollLoadTreshold:null,bodyHeight:null,useGriddleStyles:!0,useGriddleIcons:!0,isSubGriddle:!1,parentRowCollapsedClassName:"parent-row",parentRowExpandedClassName:"parent-row expanded",parentRowCollapsedComponent:"â–¶",parentRowExpandedComponent:"â–¼",externalLoadingComponent:null,externalIsLoading:!1,onRowClick:null,onRowMouseEnter:null,onRowMouseLeave:null,onRowWillMount:null,onRowWillUnmount:null}},getInitialState:function(){return{scrollTop:0,scrollHeight:this.props.bodyHeight,clientHeight:this.props.bodyHeight}},componentDidMount:function(){this.gridScroll()},componentDidUpdate:function(e,t){this.gridScroll()},gridScroll:function(){if(this.props.enableInfiniteScroll&&!this.props.externalIsLoading){var e=this.refs.scrollable,t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;if(null!==this.props.rowHeight&&this.state.scrollTop!==t&&Math.abs(this.state.scrollTop-t)>=this.getAdjustedRowHeight()){var o={scrollTop:t,scrollHeight:n,clientHeight:r};this.setState(o)}.6*(n-(t+r)-this.props.infiniteScrollLoadTreshold)<=this.props.infiniteScrollLoadTreshold&&this.props.nextPage()}},verifyProps:function(){null===this.props.columnSettings&&console.error("gridTable: The columnSettings prop is null and it shouldn't be"),null===this.props.rowSettings&&console.error("gridTable: The rowSettings prop is null and it shouldn't be")},getAdjustedRowHeight:function(){return this.props.rowHeight+2*this.props.paddingHeight},getNodeContent:function(){this.verifyProps();var e=this,t=!1;if(!this.props.externalIsLoading||this.props.enableInfiniteScroll){var n=e.props.data,o=null,i=null;if(this.props.enableInfiniteScroll&&null!==this.props.rowHeight&&void 0!==this.refs.scrollable){var a=e.getAdjustedRowHeight(),l=Math.ceil(e.state.clientHeight/a),u=Math.max(0,Math.floor(e.state.scrollTop/a)-.25*l),d=Math.min(u+1.25*l,this.props.data.length-1);n=n.slice(u,d+1);var c={height:u*a+"px"};o=r.createElement("tr",{key:"above-"+c.height,style:c});var p={height:(this.props.data.length-d)*a+"px"};i=r.createElement("tr",{key:"below-"+p.height,style:p})}var f=n.map((function(n,o){var i=void 0!==n.children&&n.children.length>0,a=e.props.rowSettings.getRowKey(n,o);return i&&(t=i),r.createElement(s,{useGriddleStyles:e.props.useGriddleStyles,isSubGriddle:e.props.isSubGriddle,parentRowExpandedClassName:e.props.parentRowExpandedClassName,parentRowCollapsedClassName:e.props.parentRowCollapsedClassName,parentRowExpandedComponent:e.props.parentRowExpandedComponent,parentRowCollapsedComponent:e.props.parentRowCollapsedComponent,data:n,key:a+"-container",uniqueId:a,columnSettings:e.props.columnSettings,rowSettings:e.props.rowSettings,paddingHeight:e.props.paddingHeight,multipleSelectionSettings:e.props.multipleSelectionSettings,rowHeight:e.props.rowHeight,hasChildren:i,tableClassName:e.props.className,onRowClick:e.props.onRowClick,onRowMouseEnter:e.props.onRowMouseEnter,onRowMouseLeave:e.props.onRowMouseLeave,onRowWillMount:e.props.onRowWillMount,onRowWillUnmount:e.props.onRowWillUnmount})}));if(this.props.showNoData){var h=this.props.columnSettings.getVisibleColumnCount();f.push(r.createElement("tr",{key:"no-data-section"},r.createElement("td",{colSpan:h},this.props.noDataSection)))}return o&&f.unshift(o),i&&f.push(i),{nodes:f,anyHasChildren:t}}return null},render:function(){var e=[],t=!1,n=this.getNodeContent();n&&(e=n.nodes,t=n.anyHasChildren);var o=null,s=null,a={width:"100%"};if(this.props.useFixedLayout&&(a.tableLayout="fixed"),this.props.enableInfiniteScroll&&(o={position:"relative",overflowY:"scroll",height:this.props.bodyHeight+"px",width:"100%"}),this.props.externalIsLoading){var l,u=null;this.props.useGriddleStyles&&(u={textAlign:"center",paddingBottom:"40px"}),l=this.props.columnSettings.getVisibleColumnCount();var d=this.props.externalLoadingComponent?r.createElement(this.props.externalLoadingComponent,null):r.createElement("div",null,"Loading...");s=r.createElement("tbody",null,r.createElement("tr",null,r.createElement("td",{style:u,colSpan:l},d)))}var c=this.props.showTableHeading?r.createElement(i,{useGriddleStyles:this.props.useGriddleStyles,useGriddleIcons:this.props.useGriddleIcons,sortSettings:this.props.sortSettings,multipleSelectionSettings:this.props.multipleSelectionSettings,columnSettings:this.props.columnSettings,filterByColumn:this.props.filterByColumn,rowSettings:this.props.rowSettings}):void 0;t||(e=r.createElement("tbody",null,e));var p=r.createElement("tbody",null);if(this.props.showPager){var f=this.props.useGriddleStyles?{padding:"0px",backgroundColor:"#EDEDED",border:"0px",color:"#222",height:this.props.showNoData?"20px":null}:null;p=r.createElement("tbody",null,r.createElement("tr",null,r.createElement("td",{colSpan:this.props.multipleSelectionSettings.isMultipleSelection?this.props.columnSettings.getVisibleColumnCount()+1:this.props.columnSettings.getVisibleColumnCount(),style:f,className:"footer-container"},this.props.showNoData?null:this.props.pagingContent)))}return this.props.useFixedHeader?(this.props.useGriddleStyles&&(a.tableLayout="fixed"),r.createElement("div",null,r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},c),r.createElement("div",{ref:"scrollable",onScroll:this.gridScroll,style:o},r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},e,s,p)))):r.createElement("div",{ref:"scrollable",onScroll:this.gridScroll,style:o},r.createElement("table",{className:this.props.className,style:this.props.useGriddleStyles&&a||null},c,e,s,p))}}));e.exports=a},4769:function(e,t,n){"use strict";var r=Object.assign||function(e){for(var t=1;t=0)return!0}return!1}))},defaultColumnFilter:function(e,t,n){var r=M(I(n)?n:[n],(function(e){return(e||"").toLowerCase()}));return k(b.getObjectValues(t),(function(e){return e=e.toString().toLowerCase(),k(r,(function(t){return e.indexOf(t)>=0}))}))},filterByColumnFilters:function(e){var t=this.props.columnFilterFunc||this.defaultColumnFilter,n=Object.keys(e).reduce((function(n,r){return T(n,(function(n){var o=b.getAt(n,r||""),i=e[r];return t(r||"",o,i)}))}),this.props.results),r={columnFilters:e};e?(r.filteredResults=n,r.maxPage=this.getMaxPage(r.filteredResults)):this.state.filter?r.filteredResults=this.props.useCustomFilterer?this.props.customFilterer(this.props.results,filter):this.defaultFilter(this.props.results,filter):r.filteredResults=null,this.setState(r)},filterByColumn:function(e,t){var n=this.state.columnFilters;if(n.hasOwnProperty(t)&&!e)n=P(n,t);else{var r={};r[t]=e,n=R({},n,r)}this.filterByColumnFilters(n)},setFilter:function(e){var t=arguments.length<=1||void 0===arguments[1]?null:arguments[1];if(this.props.useExternal)this.props.externalSetFilter(e);else{var n=this,r={page:0,filter:e};r.filteredResults=this.props.useCustomFilterer?this.props.customFilterer(t||this.props.results,e):this.defaultFilter(t||this.props.results,e),r.maxPage=n.getMaxPage(r.filteredResults),(D(e)||x(e)||A(e))&&(r.filter=e,r.filteredResults=null),n.setState(r),this._resetSelectedRows()}},setPageSize:function(e){if(this.props.useExternal)return this.setState({resultsPerPage:e}),void this.props.externalSetPageSize(e);this.state.resultsPerPage=e,this.setMaxPage()},toggleColumnChooser:function(){this.setState({showColumnChooser:!this.state.showColumnChooser})},isNullOrUndefined:function(e){return null==e},shouldUseCustomRowComponent:function(){return this.isNullOrUndefined(this.state.useCustomRowComponent)?this.props.useCustomRowComponent:this.state.useCustomRowComponent},shouldUseCustomGridComponent:function(){return this.isNullOrUndefined(this.state.useCustomGridComponent)?this.props.useCustomGridComponent:this.state.useCustomGridComponent},toggleCustomComponent:function(){"grid"===this.state.customComponentType?this.setState({useCustomGridComponent:!this.shouldUseCustomGridComponent()}):"row"===this.state.customComponentType&&this.setState({useCustomRowComponent:!this.shouldUseCustomRowComponent()})},getMaxPage:function(e,t){return this.props.useExternal?this.props.externalMaxPage:(t||(t=(e||this.getCurrentResults()).length),Math.ceil(t/this.state.resultsPerPage))},setMaxPage:function(e){var t=this.getMaxPage(e);this.state.maxPage!==t&&this.setState({page:0,maxPage:t,filteredColumns:this.columnSettings.filteredColumns})},setPage:function(e){if(this.props.useExternal)this.props.externalSetPage(e);else{if(e*this.state.resultsPerPage<=this.state.resultsPerPage*this.state.maxPage){var t={page:e};this.setState(t)}this.props.enableInfiniteScroll&&this.setState({isSelectAllChecked:!1})}},setColumns:function(e){this.columnSettings.filteredColumns=I(e)?e:[e],this.setState({filteredColumns:this.columnSettings.filteredColumns})},nextPage:function(){var e=this.getCurrentPage();e0&&this.setPage(e-1)},changeSort:function(e){if(!1!==this.props.enableSort){if(this.props.useExternal){var t=this.props.externalSortColumn!==e||!this.props.externalSortAscending;return this.setState({sortColumn:e,sortDirection:t?"asc":"desc"}),void this.props.externalChangeSort(e,t)}var n=C(this.props.columnMetadata,{columnName:e})||{},r=n.sortDirectionCycle?n.sortDirectionCycle:[null,"asc","desc"],o=r.indexOf(this.state.sortDirection&&e===this.state.sortColumn?this.state.sortDirection:null),i={page:0,sortColumn:e,sortDirection:r[o=(o+1)%r.length]?r[o]:null};this.setState(i)}},componentWillReceiveProps:function(e){if(e.results!==this.props.results&&this.setFilter(this.state.filter,e.results),this.setMaxPage(e.results),e.resultsPerPage!==this.props.resultsPerPage&&this.setPageSize(e.resultsPerPage),this.columnSettings.columnMetadata=e.columnMetadata,e.results.length>0){var t=b.keys(e.results[0]);this.columnSettings.allColumns.length==t.length&&this.columnSettings.allColumns.every((function(e,n){return e===t[n]}))||(this.columnSettings.allColumns=t)}else this.columnSettings.allColumns.length>0&&(this.columnSettings.allColumns=[]);if(e.selectedRowIds){var n=this.getDataForRender(this.getCurrentResults(e.results),this.columnSettings.getColumns(),!0);this.setState({isSelectAllChecked:this._getAreAllRowsChecked(e.selectedRowIds,M(n,this.props.uniqueIdentifier)),selectedRowIds:e.selectedRowIds})}},getInitialState:function(){return{maxPage:0,page:0,filteredResults:null,filteredColumns:[],filter:"",columnFilters:{},resultsPerPage:this.props.resultsPerPage||5,showColumnChooser:!1,isSelectAllChecked:!1,selectedRowIds:this.props.selectedRowIds}},componentWillMount:function(){this.verifyExternal(),this.verifyCustom(),this.columnSettings=new y(this.props.results.length>0?b.keys(this.props.results[0]):[],this.props.columns,this.props.childrenColumnName,this.props.columnMetadata,this.props.metadataColumns),this.rowSettings=new v(this.props.rowMetadata,this.props.useCustomTableRowComponent&&this.props.customTableRowComponent?this.props.customTableRowComponent:p,this.props.useCustomTableRowComponent),this.props.initialSort&&(this.props.useExternal?this.setState({sortColumn:this.props.externalSortColumn,sortDirection:this.props.externalSortAscending?"asc":"desc"}):this.changeSort(this.props.initialSort)),this.setMaxPage(),this.shouldUseCustomGridComponent()?this.setState({customComponentType:"grid"}):this.shouldUseCustomRowComponent()?this.setState({customComponentType:"row"}):this.setState({filteredColumns:this.columnSettings.filteredColumns})},componentDidMount:function(){if(this.props.componentDidMount&&"function"==typeof this.props.componentDidMount)return this.props.componentDidMount()},componentDidUpdate:function(){if(this.props.componentDidUpdate&&"function"==typeof this.props.componentDidUpdate)return this.props.componentDidUpdate(this.state)},verifyExternal:function(){!0===this.props.useExternal&&(null===this.props.externalSetPage&&console.error("useExternal is set to true but there is no externalSetPage function specified."),null===this.props.externalChangeSort&&console.error("useExternal is set to true but there is no externalChangeSort function specified."),null===this.props.externalSetFilter&&console.error("useExternal is set to true but there is no externalSetFilter function specified."),null===this.props.externalSetPageSize&&console.error("useExternal is set to true but there is no externalSetPageSize function specified."),null===this.props.externalMaxPage&&console.error("useExternal is set to true but externalMaxPage is not set."),null===this.props.externalCurrentPage&&console.error("useExternal is set to true but externalCurrentPage is not set. Griddle will not page correctly without that property when using external data."))},verifyCustom:function(){!0===this.props.useCustomGridComponent&&null===this.props.customGridComponent&&console.error("useCustomGridComponent is set to true but no custom component was specified."),!0===this.props.useCustomRowComponent&&null===this.props.customRowComponent&&console.error("useCustomRowComponent is set to true but no custom component was specified."),!0===this.props.useCustomGridComponent&&!0===this.props.useCustomRowComponent&&console.error("Cannot currently use both customGridComponent and customRowComponent."),!0===this.props.useCustomFilterer&&null===this.props.customFilterer&&console.error("useCustomFilterer is set to true but no custom filter function was specified."),!0===this.props.useCustomFilterComponent&&null===this.props.customFilterComponent&&console.error("useCustomFilterComponent is set to true but no customFilterComponent was specified.")},getDataForRender:function(e,t,n){var r=this,o=this;if(!this.props.useExternal){if(""!==this.state.sortColumn){var i,s=this.state.sortColumn,a=T(this.props.columnMetadata,{columnName:s}),l={columns:[],orders:[]};if(a.length>0&&(i=a[0].hasOwnProperty("customCompareFn")&&a[0].customCompareFn,a[0].multiSort&&(l=a[0].multiSort)),this.state.sortDirection)if("function"==typeof i)2===i.length?(e=e.sort((function(e,t){return i(j(e,s),j(t,s))})),"desc"===this.state.sortDirection&&e.reverse()):1===i.length&&(e=N(e,(function(e){return i(j(e,s))}),[this.state.sortDirection]));else{var u=[function(e){return(j(e,s)||"").toString().toLowerCase()}],d=[this.state.sortDirection];l.columns.forEach((function(e,t){u.push((function(t){return(j(t,e)||"").toString().toLowerCase()})),"asc"===l.orders[t]||"desc"===l.orders[t]?d.push(l.orders[t]):d.push(r.state.sortDirection)})),e=N(e,u,d)}}var c=this.getCurrentPage();if(!this.props.useExternal&&n&&this.state.resultsPerPage*(c+1)<=this.state.resultsPerPage*this.state.maxPage&&c>=0)if(this.isInfiniteScrollEnabled())e=S(e,(c+1)*this.state.resultsPerPage);else{var p=E(e,c*this.state.resultsPerPage);e=(_||F)(p,p.length-this.state.resultsPerPage)}}for(var f=[],h=0;h0&&(m.children=o.getDataForRender(m[o.props.childrenColumnName],t,!1),"children"!==o.props.childrenColumnName&&delete m[o.props.childrenColumnName]),f.push(m)}return f},getCurrentResults:function(e){return this.state.filteredResults||e||this.props.results},getCurrentPage:function(){return this.props.externalCurrentPage||this.state.page},getCurrentSort:function(){return this.props.useExternal?this.props.externalSortColumn:this.state.sortColumn},getCurrentSortAscending:function(){return this.props.useExternal?this.props.externalSortAscending:"asc"===this.state.sortDirection},getCurrentMaxPage:function(){return this.props.useExternal?this.props.externalMaxPage:this.state.maxPage},getSortObject:function(){return{enableSort:this.props.enableSort,changeSort:this.changeSort,sortColumn:this.getCurrentSort(),sortAscending:this.getCurrentSortAscending(),sortDirection:this.state.sortDirection,sortAscendingClassName:this.props.sortAscendingClassName,sortDescendingClassName:this.props.sortDescendingClassName,sortAscendingComponent:this.props.sortAscendingComponent,sortDescendingComponent:this.props.sortDescendingComponent,sortDefaultComponent:this.props.sortDefaultComponent}},_toggleSelectAll:function(){var e=this.getDataForRender(this.getCurrentResults(),this.columnSettings.getColumns(),!0),t=!this.state.isSelectAllChecked,n=JSON.parse(JSON.stringify(this.state.selectedRowIds)),r=this;w(e,(function(e){r._updateSelectedRowIds(e[r.props.uniqueIdentifier],n,t)}),this),this.setState({isSelectAllChecked:t,selectedRowIds:n}),this.props.onSelectionChange&&this.props.onSelectionChange(n,t)},_toggleSelectRow:function(e,t){var n=this.getDataForRender(this.getCurrentResults(),this.columnSettings.getColumns(),!0),r=JSON.parse(JSON.stringify(this.state.selectedRowIds));this._updateSelectedRowIds(e[this.props.uniqueIdentifier],r,t);var o=this._getAreAllRowsChecked(r,M(n,this.props.uniqueIdentifier));this.setState({isSelectAllChecked:o,selectedRowIds:r}),this.props.onSelectionChange&&this.props.onSelectionChange(r,o)},_updateSelectedRowIds:function(e,t,n){n?void 0===C(t,(function(t){return e===t}))&&t.push(e):t.splice(t.indexOf(e),1)},_getIsSelectAllChecked:function(){return this.state.isSelectAllChecked},_getAreAllRowsChecked:function(e,t){return t.length===O(t,e).length},_getIsRowChecked:function(e){return this.state.selectedRowIds.indexOf(e[this.props.uniqueIdentifier])>-1},getSelectedRowIds:function(){return this.state.selectedRowIds},_resetSelectedRows:function(){this.setState({isSelectAllChecked:!1,selectedRowIds:[]})},getMultipleSelectionObject:function(){return{isMultipleSelection:!C(this.props.results,(function(e){return"children"in e}))&&this.props.isMultipleSelection,toggleSelectAll:this._toggleSelectAll,getIsSelectAllChecked:this._getIsSelectAllChecked,toggleSelectRow:this._toggleSelectRow,getSelectedRowIds:this.getSelectedRowIds,getIsRowChecked:this._getIsRowChecked}},isInfiniteScrollEnabled:function(){return!this.props.useCustomPagerComponent&&this.props.enableInfiniteScroll},getClearFixStyles:function(){return{clear:"both",display:"table",width:"100%"}},getSettingsStyles:function(){return{float:"left",width:"50%",textAlign:"right"}},getFilterStyles:function(){return{float:"left",width:"50%",textAlign:"left",color:"#222",minHeight:"1px"}},getFilter:function(){return this.props.showFilter&&!1===this.shouldUseCustomGridComponent()?this.props.useCustomFilterComponent?o.createElement(g,{changeFilter:this.setFilter,placeholderText:this.props.filterPlaceholderText,customFilterComponent:this.props.customFilterComponent,results:this.props.results,currentResults:this.getCurrentResults()}):o.createElement(l,{changeFilter:this.setFilter,placeholderText:this.props.filterPlaceholderText}):""},getSettings:function(){return this.props.showSettings?o.createElement("button",{type:"button",className:this.props.settingsToggleClassName,onClick:this.toggleColumnChooser,style:this.props.useGriddleStyles?{background:"none",border:"none",padding:0,margin:0,fontSize:14}:null},this.props.settingsText,this.props.settingsIconComponent):""},getTopSection:function(e,t){if(!1===this.props.showFilter&&!1===this.props.showSettings)return"";var n=null,r=null,i=null;return this.props.useGriddleStyles&&(n=this.getFilterStyles(),r=this.getSettingsStyles(),i=this.getClearFixStyles()),o.createElement("div",{className:"top-section",style:i},o.createElement("div",{className:"griddle-filter",style:n},e),o.createElement("div",{className:"griddle-settings-toggle",style:r},t))},getPagingSection:function(e,t){if(!1!==(this.props.showPager&&!this.isInfiniteScrollEnabled()&&!this.shouldUseCustomGridComponent()))return o.createElement("div",{className:"griddle-footer"},this.props.useCustomPagerComponent?o.createElement(m,{customPagerComponentOptions:this.props.customPagerComponentOptions,next:this.nextPage,previous:this.previousPage,currentPage:e,maxPage:t,setPage:this.setPage,nextText:this.props.nextText,previousText:this.props.previousText,customPagerComponent:this.props.customPagerComponent}):o.createElement(u,{useGriddleStyles:this.props.useGriddleStyles,next:this.nextPage,previous:this.previousPage,nextClassName:this.props.nextClassName,nextIconComponent:this.props.nextIconComponent,previousClassName:this.props.previousClassName,previousIconComponent:this.props.previousIconComponent,currentPage:e,maxPage:t,setPage:this.setPage,nextText:this.props.nextText,previousText:this.props.previousText}))},getColumnSelectorSection:function(e,t){return this.state.showColumnChooser?o.createElement(d,{columns:e,selectedColumns:t,setColumns:this.setColumns,settingsText:this.props.settingsText,settingsIconComponent:this.props.settingsIconComponent,maxRowsText:this.props.maxRowsText,setPageSize:this.setPageSize,showSetPageSize:!this.shouldUseCustomGridComponent(),resultsPerPage:this.state.resultsPerPage,enableToggleCustom:this.props.enableToggleCustom,toggleCustomComponent:this.toggleCustomComponent,useCustomComponent:this.shouldUseCustomRowComponent()||this.shouldUseCustomGridComponent(),useGriddleStyles:this.props.useGriddleStyles,enableCustomFormatText:this.props.enableCustomFormatText,columnMetadata:this.props.columnMetadata}):""},getCustomGridSection:function(){return o.createElement(this.props.customGridComponent,r({data:this.props.results,className:this.props.customGridComponentClassName},this.props.gridMetadata))},getCustomRowSection:function(e,t,n,r,i){return o.createElement("div",null,o.createElement(h,{data:e,columns:t,metadataColumns:n,globalData:i,className:this.props.customRowComponentClassName,customComponent:this.props.customRowComponent,style:this.props.useGriddleStyles?this.getClearFixStyles():null}),this.props.showPager&&r)},getStandardGridSection:function(e,t,n,r,i){var s=this.getSortObject(),l=this.getMultipleSelectionObject(),u=this.shouldShowNoDataSection(e),d=this.getNoDataSection();return o.createElement("div",{className:"griddle-body"},o.createElement(a,{useGriddleStyles:this.props.useGriddleStyles,noDataSection:d,showNoData:u,columnSettings:this.columnSettings,rowSettings:this.rowSettings,sortSettings:s,multipleSelectionSettings:l,filterByColumn:this.filterByColumn,isSubGriddle:this.props.isSubGriddle,useGriddleIcons:this.props.useGriddleIcons,useFixedLayout:this.props.useFixedLayout,showPager:this.props.showPager,pagingContent:r,data:e,className:this.props.tableClassName,enableInfiniteScroll:this.isInfiniteScrollEnabled(),nextPage:this.nextPage,showTableHeading:this.props.showTableHeading,useFixedHeader:this.props.useFixedHeader,parentRowCollapsedClassName:this.props.parentRowCollapsedClassName,parentRowExpandedClassName:this.props.parentRowExpandedClassName,parentRowCollapsedComponent:this.props.parentRowCollapsedComponent,parentRowExpandedComponent:this.props.parentRowExpandedComponent,bodyHeight:this.props.bodyHeight,paddingHeight:this.props.paddingHeight,rowHeight:this.props.rowHeight,infiniteScrollLoadTreshold:this.props.infiniteScrollLoadTreshold,externalLoadingComponent:this.props.externalLoadingComponent,externalIsLoading:this.props.externalIsLoading,hasMorePages:i,onRowClick:this.props.onRowClick,onRowMouseEnter:this.props.onRowMouseEnter,onRowMouseLeave:this.props.onRowMouseLeave,onRowWillMount:this.props.onRowWillMount,onRowWillUnmount:this.props.onRowWillUnmount}))},getContentSection:function(e,t,n,r,o,i){return this.shouldUseCustomGridComponent()&&null!==this.props.customGridComponent?this.getCustomGridSection():this.shouldUseCustomRowComponent()?this.getCustomRowSection(e,t,n,r,i):this.getStandardGridSection(e,t,n,r,o)},getNoDataSection:function(){return null!=this.props.customNoDataComponent?o.createElement("div",{className:this.props.noDataClassName},o.createElement(this.props.customNoDataComponent,this.props.customNoDataComponentProps)):o.createElement(c,{noDataMessage:this.props.noDataMessage})},shouldShowNoDataSection:function(e){return!this.props.allowEmptyGrid&&(!1===this.props.useExternal&&(void 0===e||0===e.length)||!0===this.props.useExternal&&!1===this.props.externalIsLoading&&0===e.length)},render:function(){var e=this.getCurrentResults(),t=(this.props.tableClassName,this.getFilter()),n=this.getSettings(),r=this.getTopSection(t,n),i=[],s=this.columnSettings.getColumns(),a=this.getDataForRender(e,s,!0),l=this.columnSettings.getMetadataColumns();this.props.columnMetadata?w(this.props.columnMetadata,(function(e){"boolean"==typeof e.visible&&!1===e.visible||i.push(e.columnName)})):i=b.keys(P(e[0],l)),i=this.columnSettings.orderColumns(i);var u=this.getCurrentPage(),d=this.getCurrentMaxPage(),c=u+10?"griddle "+this.props.gridClassName:"griddle";return m+=this.shouldUseCustomRowComponent()?" griddle-custom":"",o.createElement("div",{className:m},r,h,o.createElement("div",{className:"griddle-container",style:this.props.useGriddleStyles&&!this.props.isSubGriddle?{border:"1px solid #DDD"}:null},f))}});f.Griddle=e.exports=L},5203:function(e,t,n){"use strict";var r=function(){function e(e,t){for(var n=0;n-1}},1196:function(e){e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r=200&&(c=l,p=!1,t=new r(t));e:for(;++d0&&i(d)?n>1?e(d,n-1,i,s,a):r(a,d):s||(a[a.length]=d)}return a}},8483:function(e,t,n){var r=n(5063)();e.exports=r},7816:function(e,t,n){var r=n(8483),o=n(3674);e.exports=function(e,t){return e&&r(e,t,o)}},7786:function(e,t,n){var r=n(1811),o=n(327);e.exports=function(e,t){for(var n=0,i=(t=r(t,e)).length;null!=e&&n=120&&y.length>=120)?new r(f&&y):void 0}y=e[0];var v=-1,b=h[0];e:for(;++vo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Array(o);++rt||s&&a&&u&&!l&&!d||o&&a&&u||!n&&u||!i)return 1;if(!o&&!s&&!d&&e=l?u:u*("desc"==n[o]?-1:1)}return e.index-t.index}},278:function(e){e.exports=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n1?n[i-1]:void 0,a=i>2?n[2]:void 0;for(s=e.length>3&&"function"==typeof s?(i--,s):void 0,a&&o(n[0],n[1],a)&&(s=i<3?void 0:s,i=1),t=Object(t);++r-1?a[l?t[u]:u]:void 0}}},3866:function(e,t,n){var r=n(8969),o=n(4160),i=n(8776),s=n(9294);e.exports=function(e){return function(t){var n=o(t);return"[object Map]"==n?i(t):"[object Set]"==n?s(t):r(t,e(t))}}},696:function(e,t,n){var r=n(8630);e.exports=function(e){return r(e)?void 0:e}},8777:function(e,t,n){var r=n(852),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},7114:function(e,t,n){var r=n(8668),o=n(2908),i=n(4757);e.exports=function(e,t,n,s,a,l){var u=1&n,d=e.length,c=t.length;if(d!=c&&!(u&&c>d))return!1;var p=l.get(e),f=l.get(t);if(p&&f)return p==t&&f==e;var h=-1,m=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++h-1&&e%1==0&&e-1}},4705:function(e,t,n){var r=n(8470);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},4785:function(e,t,n){var r=n(1989),o=n(8407),i=n(7071);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},1285:function(e,t,n){var r=n(5050);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},6e3:function(e,t,n){var r=n(5050);e.exports=function(e){return r(this,e).get(e)}},9916:function(e,t,n){var r=n(5050);e.exports=function(e){return r(this,e).has(e)}},5265:function(e,t,n){var r=n(5050);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},8776:function(e){e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},2634:function(e){e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},4523:function(e,t,n){var r=n(8306);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},4536:function(e,t,n){var r=n(852)(Object,"create");e.exports=r},6916:function(e,t,n){var r=n(5569)(Object.keys,Object);e.exports=r},3498:function(e){e.exports=function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}},1167:function(e,t,n){e=n.nmd(e);var r=n(1957),o=t&&!t.nodeType&&t,i=o&&e&&!e.nodeType&&e,s=i&&i.exports===o&&r.process,a=function(){try{var e=i&&i.require&&i.require("util").types;return e||s&&s.binding&&s.binding("util")}catch(e){}}();e.exports=a},2333:function(e){var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},5569:function(e){e.exports=function(e,t){return function(n){return e(t(n))}}},5357:function(e,t,n){var r=n(6874),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var i=arguments,s=-1,a=o(i.length-t,0),l=Array(a);++s0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},7465:function(e,t,n){var r=n(8407);e.exports=function(){this.__data__=new r,this.size=0}},3779:function(e){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},7599:function(e){e.exports=function(e){return this.__data__.get(e)}},4758:function(e){e.exports=function(e){return this.__data__.has(e)}},4309:function(e,t,n){var r=n(8407),o=n(7071),i=n(3369);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!o||s.length<199)return s.push([e,t]),this.size=++n.size,this;n=this.__data__=new i(s)}return n.set(e,t),this.size=n.size,this}},2351:function(e){e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r2?t[2]:void 0;for(u&&i(t[0],t[1],u)&&(r=1);++n-1:!!d&&r(e,t,n)>-1}},8125:function(e,t,n){var r=n(4259);e.exports=function(e){return(null==e?0:e.length)?r(e,0,-1):[]}},5325:function(e,t,n){var r=n(9932),o=n(7556),i=n(5976),s=n(4387),a=i((function(e){var t=r(e,s);return t.length&&t[0]===e[0]?o(t):[]}));e.exports=a},5694:function(e,t,n){var r=n(9454),o=n(7005),i=Object.prototype,s=i.hasOwnProperty,a=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&s.call(e,"callee")&&!a.call(e,"callee")};e.exports=l},1469:function(e){var t=Array.isArray;e.exports=t},8612:function(e,t,n){var r=n(3560),o=n(1780);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},9246:function(e,t,n){var r=n(8612),o=n(7005);e.exports=function(e){return o(e)&&r(e)}},4144:function(e,t,n){e=n.nmd(e);var r=n(5639),o=n(5062),i=t&&!t.nodeType&&t,s=i&&e&&!e.nodeType&&e,a=s&&s.exports===i?r.Buffer:void 0,l=(a?a.isBuffer:void 0)||o;e.exports=l},1609:function(e,t,n){var r=n(280),o=n(4160),i=n(5694),s=n(1469),a=n(8612),l=n(4144),u=n(5726),d=n(6719),c=Object.prototype.hasOwnProperty;e.exports=function(e){if(null==e)return!0;if(a(e)&&(s(e)||"string"==typeof e||"function"==typeof e.splice||l(e)||d(e)||i(e)))return!e.length;var t=o(e);if("[object Map]"==t||"[object Set]"==t)return!e.size;if(u(e))return!r(e).length;for(var n in e)if(c.call(e,n))return!1;return!0}},3560:function(e,t,n){var r=n(4239),o=n(3218);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},1780:function(e){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},6688:function(e,t,n){var r=n(5588),o=n(1717),i=n(1167),s=i&&i.isMap,a=s?o(s):r;e.exports=a},5220:function(e){e.exports=function(e){return null===e}},3218:function(e){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},7005:function(e){e.exports=function(e){return null!=e&&"object"==typeof e}},8630:function(e,t,n){var r=n(4239),o=n(5924),i=n(7005),s=Function.prototype,a=Object.prototype,l=s.toString,u=a.hasOwnProperty,d=l.call(Object);e.exports=function(e){if(!i(e)||"[object Object]"!=r(e))return!1;var t=o(e);if(null===t)return!0;var n=u.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==d}},2928:function(e,t,n){var r=n(9221),o=n(1717),i=n(1167),s=i&&i.isSet,a=s?o(s):r;e.exports=a},7037:function(e,t,n){var r=n(4239),o=n(1469),i=n(7005);e.exports=function(e){return"string"==typeof e||!o(e)&&i(e)&&"[object String]"==r(e)}},3448:function(e,t,n){var r=n(4239),o=n(7005);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},6719:function(e,t,n){var r=n(8749),o=n(1717),i=n(1167),s=i&&i.isTypedArray,a=s?o(s):r;e.exports=a},2353:function(e){e.exports=function(e){return void 0===e}},3674:function(e,t,n){var r=n(4636),o=n(280),i=n(8612);e.exports=function(e){return i(e)?r(e):o(e)}},1704:function(e,t,n){var r=n(4636),o=n(313),i=n(8612);e.exports=function(e){return i(e)?r(e,!0):o(e)}},928:function(e){e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},5161:function(e,t,n){var r=n(9932),o=n(7206),i=n(9199),s=n(1469);e.exports=function(e,t){return(s(e)?r:i)(e,o(t,3))}},8306:function(e,t,n){var r=n(3369);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var s=e.apply(this,r);return n.cache=i.set(o,s)||i,s};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},7557:function(e,t,n){var r=n(9932),o=n(5990),i=n(7406),s=n(1811),a=n(8363),l=n(696),u=n(9021),d=n(6904),c=u((function(e,t){var n={};if(null==e)return n;var u=!1;t=r(t,(function(t){return t=s(t,e),u||(u=t.length>1),t})),a(e,d(e),n),u&&(n=o(n,7,l));for(var c=t.length;c--;)i(n,t[c]);return n}));e.exports=c},5472:function(e,t,n){var r=n(2689),o=n(1469);e.exports=function(e,t,n,i){return null==e?[]:(o(t)||(t=null==t?[]:[t]),o(n=i?void 0:n)||(n=null==n?[]:[n]),r(e,t,n))}},8718:function(e,t,n){var r=n(5970),o=n(9021)((function(e,t){return null==e?{}:r(e,t)}));e.exports=o},9601:function(e,t,n){var r=n(371),o=n(9152),i=n(5403),s=n(327);e.exports=function(e){return i(e)?r(s(e)):o(e)}},9704:function(e,t,n){var r=n(2908),o=n(7206),i=n(5076),s=n(1469),a=n(6612);e.exports=function(e,t,n){var l=s(e)?r:i;return n&&a(e,t,n)&&(t=void 0),l(e,o(t,3))}},9734:function(e,t,n){var r=n(1078),o=n(2689),i=n(5976),s=n(6612),a=i((function(e,t){if(null==e)return[];var n=t.length;return n>1&&s(e,t[0],t[1])?t=[]:n>2&&s(t[0],t[1],t[2])&&(t=[t[0]]),o(e,r(t,1),[])}));e.exports=a},479:function(e){e.exports=function(){return[]}},5062:function(e){e.exports=function(){return!1}},9572:function(e,t,n){var r=n(4259),o=n(554);e.exports=function(e,t,n){return e&&e.length?(t=n||void 0===t?1:o(t),r(e,0,t<0?0:t)):[]}},8601:function(e,t,n){var r=n(4841),o=1/0;e.exports=function(e){return e?(e=r(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}},554:function(e,t,n){var r=n(8601);e.exports=function(e){var t=r(e),n=t%1;return t==t?n?t-n:t:0}},4841:function(e,t,n){var r=n(7561),o=n(3218),i=n(3448),s=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,l=/^0o[0-7]+$/i,u=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(i(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=a.test(e);return n||l.test(e)?u(e.slice(2),n?2:8):s.test(e)?NaN:+e}},3220:function(e,t,n){var r=n(3866)(n(3674));e.exports=r},84:function(e,t,n){var r=n(9932),o=n(278),i=n(1469),s=n(3448),a=n(5514),l=n(327),u=n(9833);e.exports=function(e){return i(e)?r(e,l):s(e)?[e]:o(a(u(e)))}},9833:function(e,t,n){var r=n(531);e.exports=function(e){return null==e?"":r(e)}},3955:function(e,t,n){var r=n(9833),o=0;e.exports=function(e){var t=++o;return r(e)+t}},2628:function(e,t,n){var r=n(7415),o=n(3674);e.exports=function(e){return null==e?[]:r(e,o(e))}},2569:function(e,t,n){var r=n(731),o=n(5976),i=n(9246),s=o((function(e,t){return i(e)?r(e,t):[]}));e.exports=s},7287:function(e,t,n){var r=n(4865),o=n(1757);e.exports=function(e,t){return o(e||[],t||[],r)}},7418:function(e){"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,i){for(var s,a,l=o(e),u=1;u1)for(var n=1;n1?t-1:0),r=1;r2?n-2:0),i=2;i1&&void 0!==arguments[1]&&arguments[1],n=this.props,r=n.tolerance,o=n.onSelection,i=n.onEndSelection,s=[],a=(0,d.findDOMNode)(this.refs.selectbox);a&&(this._registry.forEach((function(e){e.domNode&&(0,g.default)(a,e.domNode,r)&&!s.includes(e.key)&&s.push(e.key)})),t?"function"==typeof i&&i(s,e):"function"==typeof o&&o(s,e))}},{key:"render",value:function(){var e=this.props,t=e.children,n=e.enabled,r=e.fixedPosition,o=e.className,i=e.selectingClassName,s=this.state,a=s.isBoxSelecting,l=s.boxLeft,d=s.boxTop,c=s.boxWidth,f=s.boxHeight,h=this.props.component;if(!n)return u.default.createElement(h,{className:o},t);var m={left:l,top:d,width:c,height:f,zIndex:9e3,position:r?"fixed":"absolute",cursor:"default"},g={backgroundColor:"transparent",border:"1px dashed #999",width:"100%",height:"100%",float:"left"},y={position:"relative",overflow:"visible"};return u.default.createElement(h,{className:(0,p.default)(o,a?i:null),style:y},a?u.default.createElement("div",{style:m,ref:"selectbox"},u.default.createElement("span",{style:g})):null,t)}}]),t}(l.Component);v.propTypes={children:c.default.node,onBeginSelection:c.default.func,onEndSelection:c.default.func,onSelection:c.default.func,component:c.default.node,tolerance:c.default.number,fixedPosition:c.default.bool,preventDefault:c.default.bool,onNonItemClick:c.default.func,enabled:c.default.bool,className:c.default.string,selectingClassName:c.default.string},v.defaultProps={component:"div",tolerance:0,fixedPosition:!1,preventDefault:!0,enabled:!0},v.childContextTypes={selectable:c.default.object},t.default=v},function(e,t,n){"use strict";(function(t){var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=n(1),i=n(2),s=n(8),a=n(15),l=n(3),u=n(16);e.exports=function(e,n){function d(e){var t=e&&(A&&e[A]||e[x]);if("function"==typeof t)return t}function c(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){this.message=e,this.stack=""}function f(e){function r(r,u,d,c,f,h,m){if(c=c||D,h=h||d,m!==l)if(n)i(!1,"Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");else if("production"!==t.env.NODE_ENV&&"undefined"!=typeof console){var g=c+":"+d;!o[g]&&a<3&&(s(!1,"You are manually calling a React.PropTypes validation function for the `%s` prop on `%s`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details.",h,c),o[g]=!0,a++)}return null==u[d]?r?new p(null===u[d]?"The "+f+" `"+h+"` is marked as required in `"+c+"`, but its value is `null`.":"The "+f+" `"+h+"` is marked as required in `"+c+"`, but its value is `undefined`."):null:e(u,d,c,f,h)}if("production"!==t.env.NODE_ENV)var o={},a=0;var u=r.bind(null,!1);return u.isRequired=r.bind(null,!0),u}function h(e){function t(t,n,r,o,i,s){var a=t[n];return w(a)!==e?new p("Invalid "+o+" `"+i+"` of type `"+F(a)+"` supplied to `"+r+"`, expected `"+e+"`."):null}return f(t)}function m(e){function t(t,n,r,o,i){if("function"!=typeof e)return new p("Property `"+i+"` of component `"+r+"` has invalid PropType notation inside arrayOf.");var s=t[n];if(!Array.isArray(s))return new p("Invalid "+o+" `"+i+"` of type `"+w(s)+"` supplied to `"+r+"`, expected an array.");for(var a=0;an+a||t+o-lr+s)};t.default=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=e instanceof HTMLElement?(0,r.default)(e):e,s=t instanceof HTMLElement?(0,r.default)(t):t;return o(i.top,i.left,s.top,s.left,i.offsetWidth,i.offsetHeight,s.offsetWidth,s.offsetHeight,n)}},function(e,t,n){"use strict";(function(t){function n(e,t,n){function r(t){var n=m,r=g;return m=g=void 0,w=t,v=e.apply(r,n)}function i(e){return w=e,b=setTimeout(d,t),F?r(e):v}function s(e){var n=t-(e-E);return O?C(n,y-(e-w)):n}function l(e){var n=e-E;return void 0===E||n>=t||n<0||O&&e-w>=y}function d(){var e=S();if(l(e))return c(e);b=setTimeout(d,s(e))}function c(e){return b=void 0,I&&m?r(e):(m=g=void 0,v)}function p(){void 0!==b&&clearTimeout(b),w=0,m=E=g=b=void 0}function f(){return void 0===b?v:c(S())}function h(){var e=S(),n=l(e);if(m=arguments,g=this,E=e,n){if(void 0===b)return i(E);if(O)return b=setTimeout(d,t),r(E)}return void 0===b&&(b=setTimeout(d,t)),v}var m,g,y,v,b,E,w=0,F=!1,O=!1,I=!0;if("function"!=typeof e)throw new TypeError(u);return t=a(t)||0,o(n)&&(F=!!n.leading,y=(O="maxWait"in n)?_(a(n.maxWait)||0,t):y,I="trailing"in n?!!n.trailing:I),h.cancel=p,h.flush=f,h}function r(e,t,r){var i=!0,s=!0;if("function"!=typeof e)throw new TypeError(u);return o(r)&&(i="leading"in r?!!r.leading:i,s="trailing"in r?!!r.trailing:s),n(e,t,{leading:i,maxWait:t,trailing:s})}function o(e){var t=void 0===e?"undefined":l(e);return!!e&&("object"==t||"function"==t)}function i(e){return!!e&&"object"==(void 0===e?"undefined":l(e))}function s(e){return"symbol"==(void 0===e?"undefined":l(e))||i(e)&&E.call(e)==c}function a(e){if("number"==typeof e)return e;if(s(e))return d;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(p,"");var n=h.test(e);return n||m.test(e)?g(e.slice(2),n?2:8):f.test(e)?d:+e}var l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u="Expected a function",d=NaN,c="[object Symbol]",p=/^\s+|\s+$/g,f=/^[-+]0x[0-9a-f]+$/i,h=/^0b[01]+$/i,m=/^0o[0-7]+$/i,g=parseInt,y="object"==(void 0===t?"undefined":l(t))&&t&&t.Object===Object&&t,v="object"==("undefined"==typeof self?"undefined":l(self))&&self&&self.Object===Object&&self,b=y||v||Function("return this")(),E=Object.prototype.toString,_=Math.max,C=Math.min,S=function(){return b.Date.now()};e.exports=r}).call(t,n(21))},function(e,t,n){"use strict";var r,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};r=function(){return this}();try{r=r||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":o(window))&&(r=window)}e.exports=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n=f){var t=console[e]||console.log;return t.apply(console,arguments)}}}!function(e){e.debug=h("debug"),e.log=h("log"),e.warn=h("warn"),e.error=h("error")}(c||(c={}));function m(e){try{return e()}catch(e){}}var g=m((function(){return globalThis}))||m((function(){return window}))||m((function(){return self}))||m((function(){return global}))||m((function(){return m.constructor("return this")()})),y="__",v=[y,y].join("DEV");var b=function(){try{return Boolean(__DEV__)}catch(e){return Object.defineProperty(g,v,{value:"production"!==m((function(){return"production"})),enumerable:!1,configurable:!0,writable:!0}),g[v]}}();function E(e){try{return e()}catch(e){}}var _=E((function(){return globalThis}))||E((function(){return window}))||E((function(){return self}))||E((function(){return global}))||E((function(){return E.constructor("return this")()})),C=!1;function S(){C&&(delete _.process,C=!1)}!_||E((function(){return"production"}))||E((function(){return process}))||(Object.defineProperty(_,"process",{value:{env:{NODE_ENV:"production"}},configurable:!0,enumerable:!1,writable:!0}),C=!0);class w{constructor(e,t="GraphQL request",n={line:1,column:1}){var r;"string"==typeof e||devAssert(!1,`Body must be a string. Received: ${e,formatValue(r,[])}.`),this.body=e,this.name=t,this.locationOffset=n,this.locationOffset.line>0||devAssert(!1,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||devAssert(!1,"column in locationOffset is 1-indexed and must be positive.")}get[Symbol.toStringTag](){return"Source"}}var F;S(),__DEV__?c("boolean"==typeof b,b):c("boolean"==typeof b,38),function(e){e[e.Query=0]="Query",e[e.Mutation=1]="Mutation",e[e.Subscription=2]="Subscription"}(F||(F={}));var O=new Map;function I(e){var t;switch(e){case F.Query:t="Query";break;case F.Mutation:t="Mutation";break;case F.Subscription:t="Subscription"}return t}function A(e){var t,n,r=O.get(e);if(r)return r;__DEV__?c(!!e&&!!e.kind,"Argument of ".concat(e," passed to parser was not a valid GraphQL ")+"DocumentNode. You may need to use 'graphql-tag' or another method to convert your operation into a document"):c(!!e&&!!e.kind,32);for(var o=[],i=[],s=[],a=[],l=0,u=e.definitions;l=0}))||!1,U=k&&!L,B=!1,q=P.useSyncExternalStore||function(e,t,n){var r=t();__DEV__&&!B&&r!==t()&&(B=!0,__DEV__&&c.error("The result of getSnapshot should be cached to avoid an infinite loop"));var o=D.useState({inst:{value:r,getSnapshot:t}}),i=o[0].inst,s=o[1];return U?D.useLayoutEffect((function(){Object.assign(i,{value:r,getSnapshot:t}),W(i)&&s({inst:i})}),[e,r,t]):Object.assign(i,{value:r,getSnapshot:t}),D.useEffect((function(){return W(i)&&s({inst:i}),e((function(){W(i)&&s({inst:i})}))}),[e]),r};function W(e){var t=e.value,n=e.getSnapshot;try{return t!==n()}catch(e){return!0}}var H=Object.prototype,z=H.toString,G=H.hasOwnProperty,V=Function.prototype.toString,Q=new Map;function $(e,t){try{return Y(e,t)}finally{Q.clear()}}function Y(e,t){if(e===t)return!0;var n,r,o,i=z.call(e);if(i!==z.call(t))return!1;switch(i){case"[object Array]":if(e.length!==t.length)return!1;case"[object Object]":if(J(e,t))return!0;var s=K(e),a=K(t),l=s.length;if(l!==a.length)return!1;for(var u=0;u=0&&n.indexOf(r,o)===o))}return!1}function K(e){return Object.keys(e).filter(Z,e)}function Z(e){return void 0!==this[e]}var X="{ [native code] }";function J(e,t){var n=Q.get(e);if(n){if(n.has(t))return!0}else Q.set(e,n=new Set);return n.add(t),!1}function ee(){for(var e=[],t=0;t0}var ie,se=function(e){function t(n){var r,o,i=n.graphQLErrors,s=n.clientErrors,a=n.networkError,l=n.errorMessage,u=n.extraInfo,d=e.call(this,l)||this;return d.name="ApolloError",d.graphQLErrors=i||[],d.clientErrors=s||[],d.networkError=a||null,d.message=l||(o="",(oe((r=d).graphQLErrors)||oe(r.clientErrors))&&(r.graphQLErrors||[]).concat(r.clientErrors||[]).forEach((function(e){var t=e?e.message:"Error message not found.";o+="".concat(t,"\n")})),r.networkError&&(o+="".concat(r.networkError.message,"\n")),o=o.replace(/\n$/,"")),d.extraInfo=u,d.__proto__=t.prototype,d}return o(t,e),t}(Error);function ae(e){var t=(0,D.useContext)(re()),n=e||t.client;return __DEV__?c(!!n,'Could not find "client" in the context or passed in as an option. Wrap the root component in an , or pass an ApolloClient instance in via options.'):c(!!n,31),n}function le(e){return null!==e&&"object"==typeof e}function ue(e){var t=new Set([e]);return t.forEach((function(e){le(e)&&function(e){if(__DEV__&&!Object.isFrozen(e))try{Object.freeze(e)}catch(e){if(e instanceof TypeError)return null;throw e}return e}(e)===e&&Object.getOwnPropertyNames(e).forEach((function(n){le(e[n])&&t.add(e[n])}))})),e}function de(e){return __DEV__&&ue(e),e}!function(e){e[e.loading=1]="loading",e[e.setVariables=2]="setVariables",e[e.fetchMore=3]="fetchMore",e[e.refetch=4]="refetch",e[e.poll=6]="poll",e[e.ready=7]="ready",e[e.error=8]="error"}(ie||(ie={}));var ce=Object.prototype.hasOwnProperty;function pe(e,t){return void 0===t&&(t=Object.create(null)),function(e,t){var n=(0,D.useRef)();n.current&&e===n.current.client&&t===n.current.query||(n.current=new fe(e,t,n.current));var r=n.current,o=(0,D.useState)(0),i=(o[0],o[1]);return r.forceUpdate=function(){i((function(e){return e+1}))},r}(ae(t.client),e).useQuery(t)}var fe=function(){function e(e,t,n){this.client=e,this.query=t,this.asyncResolveFns=new Set,this.optionsToIgnoreOnce=new(N?WeakSet:Set),this.ssrDisabledResult=de({loading:!0,data:void 0,error:void 0,networkStatus:ie.loading}),this.skipStandbyResult=de({loading:!1,data:void 0,error:void 0,networkStatus:ie.ready}),this.toQueryResultCache=new(T?WeakMap:Map),x(t,F.Query);var r=n&&n.result,o=r&&r.data;o&&(this.previousData=o)}return e.prototype.forceUpdate=function(){__DEV__&&c.warn("Calling default no-op implementation of InternalState#forceUpdate")},e.prototype.asyncUpdate=function(e){var t=this;return new Promise((function(n,r){var o=t.watchQueryOptions,i=function(){t.asyncResolveFns.delete(n),t.optionsToIgnoreOnce.delete(o),e.removeEventListener("abort",i),r(e.reason)};t.asyncResolveFns.add(n),t.optionsToIgnoreOnce.add(o),e.addEventListener("abort",i),t.forceUpdate()}))},e.prototype.useQuery=function(e){var t=this;this.renderPromises=(0,D.useContext)(re()).renderPromises,this.useOptions(e);var n=this.useObservableQuery(),r=q((0,D.useCallback)((function(){if(t.renderPromises)return function(){};var e=function(){var e=t.result,r=n.getCurrentResult();e&&e.loading===r.loading&&e.networkStatus===r.networkStatus&&$(e.data,r.data)||t.setResult(r)},r=function(i){var s=n.last;o.unsubscribe();try{n.resetLastResults(),o=n.subscribe(e,r)}finally{n.last=s}if(!ce.call(i,"graphQLErrors"))throw i;var a=t.result;(!a||a&&a.loading||!$(i,a.error))&&t.setResult({data:a&&a.data,error:i,loading:!1,networkStatus:ie.error})},o=n.subscribe(e,r);return function(){return o.unsubscribe()}}),[n,this.renderPromises,this.client.disableNetworkFetches]),(function(){return t.getCurrentResult()}),(function(){return t.getCurrentResult()}));this.unsafeHandlePartialRefetch(r);var o=this.toQueryResult(r);return!o.loading&&this.asyncResolveFns.size&&(this.asyncResolveFns.forEach((function(e){return e(o)})),this.asyncResolveFns.clear()),o},e.prototype.useOptions=function(t){var n,r=this.createWatchQueryOptions(this.queryHookOptions=t),o=this.watchQueryOptions;!this.optionsToIgnoreOnce.has(o)&&$(r,o)||(this.watchQueryOptions=r,o&&this.observable&&(this.optionsToIgnoreOnce.delete(o),this.observable.reobserve(this.getObsQueryOptions()),this.previousData=(null===(n=this.result)||void 0===n?void 0:n.data)||this.previousData,this.result=void 0)),this.onCompleted=t.onCompleted||e.prototype.onCompleted,this.onError=t.onError||e.prototype.onError,!this.renderPromises&&!this.client.disableNetworkFetches||!1!==this.queryHookOptions.ssr||this.queryHookOptions.skip?this.queryHookOptions.skip||"standby"===this.watchQueryOptions.fetchPolicy?this.result=this.skipStandbyResult:this.result!==this.ssrDisabledResult&&this.result!==this.skipStandbyResult||(this.result=void 0):this.result=this.ssrDisabledResult},e.prototype.getObsQueryOptions=function(){var e=[],t=this.client.defaultOptions.watchQuery;return t&&e.push(t),this.queryHookOptions.defaultOptions&&e.push(this.queryHookOptions.defaultOptions),e.push(ee(this.observable&&this.observable.options,this.watchQueryOptions)),e.reduce(te)},e.prototype.createWatchQueryOptions=function(e){var t;void 0===e&&(e={});var n=e.skip,r=(e.ssr,e.onCompleted,e.onError,e.defaultOptions,s(e,["skip","ssr","onCompleted","onError","defaultOptions"])),o=Object.assign(r,{query:this.query});if(!this.renderPromises||"network-only"!==o.fetchPolicy&&"cache-and-network"!==o.fetchPolicy||(o.fetchPolicy="cache-first"),o.variables||(o.variables={}),n){var i=o.fetchPolicy,a=void 0===i?this.getDefaultFetchPolicy():i,l=o.initialFetchPolicy,u=void 0===l?a:l;Object.assign(o,{initialFetchPolicy:u,fetchPolicy:"standby"})}else o.fetchPolicy||(o.fetchPolicy=(null===(t=this.observable)||void 0===t?void 0:t.options.initialFetchPolicy)||this.getDefaultFetchPolicy());return o},e.prototype.getDefaultFetchPolicy=function(){var e,t;return(null===(e=this.queryHookOptions.defaultOptions)||void 0===e?void 0:e.fetchPolicy)||(null===(t=this.client.defaultOptions.watchQuery)||void 0===t?void 0:t.fetchPolicy)||"cache-first"},e.prototype.onCompleted=function(e){},e.prototype.onError=function(e){},e.prototype.useObservableQuery=function(){var e=this.observable=this.renderPromises&&this.renderPromises.getSSRObservable(this.watchQueryOptions)||this.observable||this.client.watchQuery(this.getObsQueryOptions());this.obsQueryFields=(0,D.useMemo)((function(){return{refetch:e.refetch.bind(e),reobserve:e.reobserve.bind(e),fetchMore:e.fetchMore.bind(e),updateQuery:e.updateQuery.bind(e),startPolling:e.startPolling.bind(e),stopPolling:e.stopPolling.bind(e),subscribeToMore:e.subscribeToMore.bind(e)}}),[e]);var t=!(!1===this.queryHookOptions.ssr||this.queryHookOptions.skip);return this.renderPromises&&t&&(this.renderPromises.registerSSRObservable(e),e.getCurrentResult().loading&&this.renderPromises.addObservableQueryPromise(e)),e},e.prototype.setResult=function(e){var t=this.result;t&&t.data&&(this.previousData=t.data),this.result=e,this.forceUpdate(),this.handleErrorOrCompleted(e)},e.prototype.handleErrorOrCompleted=function(e){var t=this;if(!e.loading){var n=this.toApolloError(e);Promise.resolve().then((function(){n?t.onError(n):e.data&&t.onCompleted(e.data)})).catch((function(e){__DEV__&&c.warn(e)}))}},e.prototype.toApolloError=function(e){return oe(e.errors)?new se({graphQLErrors:e.errors}):e.error},e.prototype.getCurrentResult=function(){return this.result||this.handleErrorOrCompleted(this.result=this.observable.getCurrentResult()),this.result},e.prototype.toQueryResult=function(e){var t=this.toQueryResultCache.get(e);if(t)return t;var n=e.data,r=(e.partial,s(e,["data","partial"]));return this.toQueryResultCache.set(e,t=i(i(i({data:n},r),this.obsQueryFields),{client:this.client,observable:this.observable,variables:this.observable.variables,called:!this.queryHookOptions.skip,previousData:this.previousData})),!t.error&&oe(e.errors)&&(t.error=new se({graphQLErrors:e.errors})),t},e.prototype.unsafeHandlePartialRefetch=function(e){!e.partial||!this.queryHookOptions.partialRefetch||e.loading||e.data&&0!==Object.keys(e.data).length||"cache-only"===this.observable.options.fetchPolicy||(Object.assign(e,{loading:!0,networkStatus:ie.refetch}),this.observable.refetch())},e}();function he(e){var t=e.children,n=pe(e.query,s(e,["children","query"]));return n?t(n):null}he.propTypes={client:R.object,children:R.func.isRequired,fetchPolicy:R.string,notifyOnNetworkStatusChange:R.bool,onCompleted:R.func,onError:R.func,pollInterval:R.number,query:R.object.isRequired,variables:R.object,ssr:R.bool,partialRefetch:R.bool,returnPartialData:R.bool};var me=function(){return{}},ge=function(){return!1};function ye(e){return e.displayName||e.name||"Component"}function ve(e,t){for(var n={},r=0,o=e.variables;r0&&(d.variables=ve(n,l)),D.createElement(he,i({},d,{displayName:a,skip:u,query:e}),(function(e){e.client;var n,a,d=e.data,c=s(e,["client","data"]);if(t.withRef&&(o.withRef=!0,l=Object.assign({},l,{ref:o.setWrappedInstance})),u)return D.createElement(r,i({},l,{}));var p=Object.assign(c,d||{}),h=t.name||"data",m=((n={})[h]=p,n);if(t.props){var g=((a={})[h]=p,a.ownProps=l,a);m=f=t.props(g,f)}return D.createElement(r,i({},l,m))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function _e(e){var t=function(e,t){var n=ae(null==t?void 0:t.client);x(e,F.Mutation);var r=(0,D.useState)({called:!1,loading:!1,client:n}),o=r[0],s=r[1],a=(0,D.useRef)({result:o,mutationId:0,isMounted:!0,client:n,mutation:e,options:t});Object.assign(a.current,{client:n,options:t,mutation:e});var l=(0,D.useCallback)((function(e){void 0===e&&(e={});var t=a.current,n=t.client,r=t.options,o=t.mutation,l=i(i({},r),{mutation:o});a.current.result.loading||l.ignoreResults||!a.current.isMounted||s(a.current.result={loading:!0,error:void 0,data:void 0,called:!0,client:n});var u=++a.current.mutationId,d=te(l,e);return n.mutate(d).then((function(t){var r,o=t.data,i=t.errors,l=i&&i.length>0?new se({graphQLErrors:i}):void 0;if(u===a.current.mutationId&&!d.ignoreResults){var c={called:!0,loading:!1,data:o,error:l,client:n};a.current.isMounted&&!$(a.current.result,c)&&s(a.current.result=c)}var p=e.onCompleted||(null===(r=a.current.options)||void 0===r?void 0:r.onCompleted);return null==p||p(t.data,d),t})).catch((function(t){var r;if(u===a.current.mutationId&&a.current.isMounted){var o={loading:!1,error:t,data:void 0,called:!0,client:n};$(a.current.result,o)||s(a.current.result=o)}var i=e.onError||(null===(r=a.current.options)||void 0===r?void 0:r.onError);if(i)return i(t,d),{data:void 0,errors:t};throw t}))}),[]),u=(0,D.useCallback)((function(){a.current.isMounted&&s({called:!1,loading:!1,client:n})}),[]);return(0,D.useEffect)((function(){return a.current.isMounted=!0,function(){a.current.isMounted=!1}}),[]),[l,i({reset:u},o)]}(e.mutation,e),n=t[0],r=t[1];return e.children?e.children(n,r):null}function Ce(e,t){void 0===t&&(t={});var n=A(e),r=t.options,a=void 0===r?me:r,l=t.alias,u=void 0===l?"Apollo":l,d=a;return"function"!=typeof d&&(d=function(){return a}),function(r){var a="".concat(u,"(").concat(ye(r),")"),l=function(l){function u(){return null!==l&&l.apply(this,arguments)||this}return o(u,l),u.prototype.render=function(){var o=this.props,a=d(o);return t.withRef&&(this.withRef=!0,o=Object.assign({},o,{ref:this.setWrappedInstance})),!a.variables&&n.variables.length>0&&(a.variables=ve(n,o)),D.createElement(_e,i({ignoreResults:!0},a,{mutation:e}),(function(e,n){var a,l,u=n.data,d=s(n,["data"]),c=Object.assign(d,u||{}),p=t.name||"mutate",f=t.name?"".concat(p,"Result"):"result",h=((a={})[p]=e,a[f]=c,a);if(t.props){var m=((l={})[p]=e,l[f]=c,l.ownProps=o,l);h=t.props(m)}return D.createElement(r,i({},o,h))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function Se(e){var t=function(e,t){var n=(0,D.useRef)(!1),r=ae(null==t?void 0:t.client);x(e,F.Subscription);var o=(0,D.useState)({loading:!(null==t?void 0:t.skip),error:void 0,data:void 0,variables:null==t?void 0:t.variables}),i=o[0],s=o[1];n.current||(n.current=!0,(null==t?void 0:t.onSubscriptionData)&&__DEV__&&c.warn(t.onData?"'useSubscription' supports only the 'onSubscriptionData' or 'onData' option, but not both. Only the 'onData' option will be used.":"'onSubscriptionData' is deprecated and will be removed in a future major version. Please use the 'onData' option instead."),(null==t?void 0:t.onSubscriptionComplete)&&__DEV__&&c.warn(t.onComplete?"'useSubscription' supports only the 'onSubscriptionComplete' or 'onComplete' option, but not both. Only the 'onComplete' option will be used.":"'onSubscriptionComplete' is deprecated and will be removed in a future major version. Please use the 'onComplete' option instead."));var a=(0,D.useState)((function(){return(null==t?void 0:t.skip)?null:r.subscribe({query:e,variables:null==t?void 0:t.variables,fetchPolicy:null==t?void 0:t.fetchPolicy,context:null==t?void 0:t.context})})),l=a[0],u=a[1],d=(0,D.useRef)(!1);(0,D.useEffect)((function(){return function(){d.current=!0}}),[]);var p=(0,D.useRef)({client:r,subscription:e,options:t});return(0,D.useEffect)((function(){var n,o,i,a,l=null==t?void 0:t.shouldResubscribe;"function"==typeof l&&(l=!!l(t)),(null==t?void 0:t.skip)?(!(null==t?void 0:t.skip)!=!(null===(n=p.current.options)||void 0===n?void 0:n.skip)||d.current)&&(s({loading:!1,data:void 0,error:void 0,variables:null==t?void 0:t.variables}),u(null),d.current=!1):(!1===l||r===p.current.client&&e===p.current.subscription&&(null==t?void 0:t.fetchPolicy)===(null===(o=p.current.options)||void 0===o?void 0:o.fetchPolicy)&&!(null==t?void 0:t.skip)==!(null===(i=p.current.options)||void 0===i?void 0:i.skip)&&$(null==t?void 0:t.variables,null===(a=p.current.options)||void 0===a?void 0:a.variables))&&!d.current||(s({loading:!0,data:void 0,error:void 0,variables:null==t?void 0:t.variables}),u(r.subscribe({query:e,variables:null==t?void 0:t.variables,fetchPolicy:null==t?void 0:t.fetchPolicy,context:null==t?void 0:t.context})),d.current=!1),Object.assign(p.current,{client:r,subscription:e,options:t})}),[r,e,t,d.current]),(0,D.useEffect)((function(){if(l){var e=l.subscribe({next:function(e){var n,o,i={loading:!1,data:e.data,error:void 0,variables:null==t?void 0:t.variables};s(i),(null===(n=p.current.options)||void 0===n?void 0:n.onData)?p.current.options.onData({client:r,data:i}):(null===(o=p.current.options)||void 0===o?void 0:o.onSubscriptionData)&&p.current.options.onSubscriptionData({client:r,subscriptionData:i})},error:function(e){var n,r;s({loading:!1,data:void 0,error:e,variables:null==t?void 0:t.variables}),null===(r=null===(n=p.current.options)||void 0===n?void 0:n.onError)||void 0===r||r.call(n,e)},complete:function(){var e,t;(null===(e=p.current.options)||void 0===e?void 0:e.onComplete)?p.current.options.onComplete():(null===(t=p.current.options)||void 0===t?void 0:t.onSubscriptionComplete)&&p.current.options.onSubscriptionComplete()}});return function(){e.unsubscribe()}}}),[l]),i}(e.subscription,e);return e.children&&t?e.children(t):null}function we(e,t){void 0===t&&(t={});var n=A(e),r=t.options,a=void 0===r?me:r,l=t.skip,u=void 0===l?ge:l,d=t.alias,c=void 0===d?"Apollo":d,p=t.shouldResubscribe,f=a;"function"!=typeof f&&(f=function(){return a});var h,m=u;return"function"!=typeof m&&(m=function(){return u}),function(r){var a="".concat(c,"(").concat(ye(r),")"),l=function(l){function u(e){var t=l.call(this,e)||this;return t.state={resubscribe:!1},t}return o(u,l),u.prototype.updateResubscribe=function(e){this.setState({resubscribe:e})},u.prototype.componentDidUpdate=function(e){var t=!(!p||!p(e,this.props));this.state.resubscribe!==t&&this.updateResubscribe(t)},u.prototype.render=function(){var o=this,l=this.props,u=m(l),d=u?Object.create(null):f(l);return!u&&!d.variables&&n.variables.length>0&&(d.variables=ve(n,l)),D.createElement(Se,i({},d,{displayName:a,skip:u,subscription:e,shouldResubscribe:this.state.resubscribe}),(function(e){var n,a,d=e.data,c=s(e,["data"]);if(t.withRef&&(o.withRef=!0,l=Object.assign({},l,{ref:o.setWrappedInstance})),u)return D.createElement(r,i({},l,{}));var p=Object.assign(c,d||{}),f=t.name||"data",m=((n={})[f]=p,n);if(t.props){var g=((a={})[f]=p,a.ownProps=l,a);m=h=t.props(g,h)}return D.createElement(r,i({},l,m))}))},u.displayName=a,u.WrappedComponent=r,u}(be);return M(l,r,{})}}function Fe(e,t){switch(void 0===t&&(t={}),A(e).type){case F.Mutation:return Ce(e,t);case F.Subscription:return we(e,t);case F.Query:default:return Ee(e,t)}}_e.propTypes={mutation:R.object.isRequired,variables:R.object,optimisticResponse:R.oneOfType([R.object,R.func]),refetchQueries:R.oneOfType([R.arrayOf(R.oneOfType([R.string,R.object])),R.func]),awaitRefetchQueries:R.bool,update:R.func,children:R.func.isRequired,onCompleted:R.func,onError:R.func,fetchPolicy:R.string},Se.propTypes={subscription:R.object.isRequired,variables:R.object,children:R.func,onSubscriptionData:R.func,onData:R.func,onSubscriptionComplete:R.func,onComplete:R.func,shouldResubscribe:R.oneOfType([R.func,R.bool])};var Oe=function(e){var t=re();return D.createElement(t.Consumer,null,(function(t){return __DEV__?c(t&&t.client,'Could not find "client" in the context of ApolloConsumer. Wrap the root component in an .'):c(t&&t.client,27),e.children(t.client)}))};function Ie(e,t){void 0===t&&(t={});var n="withApollo(".concat(function(e){return e.displayName||e.name||"Component"}(e),")"),r=function(r){function s(e){var t=r.call(this,e)||this;return t.setWrappedInstance=t.setWrappedInstance.bind(t),t}return o(s,r),s.prototype.getWrappedInstance=function(){return __DEV__?c(t.withRef,"To access the wrapped instance, you need to specify { withRef: true } in the options"):c(t.withRef,30),this.wrappedInstance},s.prototype.setWrappedInstance=function(e){this.wrappedInstance=e},s.prototype.render=function(){var n=this;return D.createElement(Oe,null,(function(r){var o=Object.assign({},n.props,{client:r,ref:t.withRef?n.setWrappedInstance:void 0});return D.createElement(e,i({},o))}))},s.displayName=n,s.WrappedComponent=e,s}(D.Component);return M(r,e,{})}},247:function(e,t,n){"use strict";n.r(t),n.d(t,{Dropzone:function(){return u},default:function(){return u}});var r=function e(){var t=[].slice.call(arguments),n=!1;"boolean"==typeof t[0]&&(n=t.shift());var r=t[0];if(i(r))throw new Error("extendee must be an object");for(var s=t.slice(1),a=s.length,l=0;l'),this.element.appendChild(e));let t=e.getElementsByTagName("span")[0];return t&&(null!=t.textContent?t.textContent=this.options.dictFallbackMessage:null!=t.innerText&&(t.innerText=this.options.dictFallbackMessage)),this.element.appendChild(this.getFallbackForm())},resize(e,t,n,r){let o={srcX:0,srcY:0,srcWidth:e.width,srcHeight:e.height},i=e.width/e.height;null==t&&null==n?(t=o.srcWidth,n=o.srcHeight):null==t?t=n*i:null==n&&(n=t/i);let s=(t=Math.min(t,o.srcWidth))/(n=Math.min(n,o.srcHeight));if(o.srcWidth>t||o.srcHeight>n)if("crop"===r)i>s?(o.srcHeight=e.height,o.srcWidth=o.srcHeight*s):(o.srcWidth=e.width,o.srcHeight=o.srcWidth/s);else{if("contain"!==r)throw new Error(`Unknown resizeMethod '${r}'`);i>s?n=t/i:t=n*i}return o.srcX=(e.width-o.srcWidth)/2,o.srcY=(e.height-o.srcHeight)/2,o.trgWidth=t,o.trgHeight=n,o},transformFile(e,t){return(this.options.resizeWidth||this.options.resizeHeight)&&e.type.match(/image.*/)?this.resizeImage(e,this.options.resizeWidth,this.options.resizeHeight,this.options.resizeMethod,t):t(e)},previewTemplate:s('
\n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n'),drop(e){return this.element.classList.remove("dz-drag-hover")},dragstart(e){},dragend(e){return this.element.classList.remove("dz-drag-hover")},dragenter(e){return this.element.classList.add("dz-drag-hover")},dragover(e){return this.element.classList.add("dz-drag-hover")},dragleave(e){return this.element.classList.remove("dz-drag-hover")},paste(e){},reset(){return this.element.classList.remove("dz-started")},addedfile(e){if(this.element===this.previewsContainer&&this.element.classList.add("dz-started"),this.previewsContainer&&!this.options.disablePreviews){for(var t of(e.previewElement=u.createElement(this.options.previewTemplate.trim()),e.previewTemplate=e.previewElement,this.previewsContainer.appendChild(e.previewElement),e.previewElement.querySelectorAll("[data-dz-name]")))t.textContent=e.name;for(t of e.previewElement.querySelectorAll("[data-dz-size]"))t.innerHTML=this.filesize(e.size);this.options.addRemoveLinks&&(e._removeLink=u.createElement(`${this.options.dictRemoveFile}`),e.previewElement.appendChild(e._removeLink));let n=t=>(t.preventDefault(),t.stopPropagation(),e.status===u.UPLOADING?u.confirm(this.options.dictCancelUploadConfirmation,(()=>this.removeFile(e))):this.options.dictRemoveFileConfirmation?u.confirm(this.options.dictRemoveFileConfirmation,(()=>this.removeFile(e))):this.removeFile(e));for(let t of e.previewElement.querySelectorAll("[data-dz-remove]"))t.addEventListener("click",n)}},removedfile(e){return null!=e.previewElement&&null!=e.previewElement.parentNode&&e.previewElement.parentNode.removeChild(e.previewElement),this._updateMaxFilesReachedClass()},thumbnail(e,t){if(e.previewElement){e.previewElement.classList.remove("dz-file-preview");for(let n of e.previewElement.querySelectorAll("[data-dz-thumbnail]"))n.alt=e.name,n.src=t;return setTimeout((()=>e.previewElement.classList.add("dz-image-preview")),1)}},error(e,t){if(e.previewElement){e.previewElement.classList.add("dz-error"),"string"!=typeof t&&t.error&&(t=t.error);for(let n of e.previewElement.querySelectorAll("[data-dz-errormessage]"))n.textContent=t}},errormultiple(){},processing(e){if(e.previewElement&&(e.previewElement.classList.add("dz-processing"),e._removeLink))return e._removeLink.innerHTML=this.options.dictCancelUpload},processingmultiple(){},uploadprogress(e,t,n){if(e.previewElement)for(let n of e.previewElement.querySelectorAll("[data-dz-uploadprogress]"))"PROGRESS"===n.nodeName?n.value=t:n.style.width=`${t}%`},totaluploadprogress(){},sending(){},sendingmultiple(){},success(e){if(e.previewElement)return e.previewElement.classList.add("dz-success")},successmultiple(){},canceled(e){return this.emit("error",e,this.options.dictUploadCanceled)},canceledmultiple(){},complete(e){if(e._removeLink&&(e._removeLink.innerHTML=this.options.dictRemoveFile),e.previewElement)return e.previewElement.classList.add("dz-complete")},completemultiple(){},maxfilesexceeded(){},maxfilesreached(){},queuecomplete(){},addedfiles(){}};class u extends a{static initClass(){this.prototype.Emitter=a,this.prototype.events=["drop","dragstart","dragend","dragenter","dragover","dragleave","addedfile","addedfiles","removedfile","thumbnail","error","errormultiple","processing","processingmultiple","uploadprogress","totaluploadprogress","sending","sendingmultiple","success","successmultiple","canceled","canceledmultiple","complete","completemultiple","reset","maxfilesexceeded","maxfilesreached","queuecomplete"],this.prototype._thumbnailQueue=[],this.prototype._processingThumbnail=!1}getAcceptedFiles(){return this.files.filter((e=>e.accepted)).map((e=>e))}getRejectedFiles(){return this.files.filter((e=>!e.accepted)).map((e=>e))}getFilesWithStatus(e){return this.files.filter((t=>t.status===e)).map((e=>e))}getQueuedFiles(){return this.getFilesWithStatus(u.QUEUED)}getUploadingFiles(){return this.getFilesWithStatus(u.UPLOADING)}getAddedFiles(){return this.getFilesWithStatus(u.ADDED)}getActiveFiles(){return this.files.filter((e=>e.status===u.UPLOADING||e.status===u.QUEUED)).map((e=>e))}init(){if("form"===this.element.tagName&&this.element.setAttribute("enctype","multipart/form-data"),this.element.classList.contains("dropzone")&&!this.element.querySelector(".dz-message")&&this.element.appendChild(u.createElement(`
`)),this.clickableElements.length){let e=()=>{this.hiddenFileInput&&this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=document.createElement("input"),this.hiddenFileInput.setAttribute("type","file"),(null===this.options.maxFiles||this.options.maxFiles>1)&&this.hiddenFileInput.setAttribute("multiple","multiple"),this.hiddenFileInput.className="dz-hidden-input",null!==this.options.acceptedFiles&&this.hiddenFileInput.setAttribute("accept",this.options.acceptedFiles),null!==this.options.capture&&this.hiddenFileInput.setAttribute("capture",this.options.capture),this.hiddenFileInput.setAttribute("tabindex","-1"),this.hiddenFileInput.style.visibility="hidden",this.hiddenFileInput.style.position="absolute",this.hiddenFileInput.style.top="0",this.hiddenFileInput.style.left="0",this.hiddenFileInput.style.height="0",this.hiddenFileInput.style.width="0",u.getElement(this.options.hiddenInputContainer,"hiddenInputContainer").appendChild(this.hiddenFileInput),this.hiddenFileInput.addEventListener("change",(()=>{let{files:t}=this.hiddenFileInput;if(t.length)for(let e of t)this.addFile(e);this.emit("addedfiles",t),e()}))};e()}this.URL=null!==window.URL?window.URL:window.webkitURL;for(let e of this.events)this.on(e,this.options[e]);this.on("uploadprogress",(()=>this.updateTotalUploadProgress())),this.on("removedfile",(()=>this.updateTotalUploadProgress())),this.on("canceled",(e=>this.emit("complete",e))),this.on("complete",(e=>{if(0===this.getAddedFiles().length&&0===this.getUploadingFiles().length&&0===this.getQueuedFiles().length)return setTimeout((()=>this.emit("queuecomplete")),0)}));let e=function(e){if(function(e){if(e.dataTransfer.types)for(var t=0;tthis.emit("dragstart",e),dragenter:t=>(e(t),this.emit("dragenter",t)),dragover:t=>{let n;try{n=t.dataTransfer.effectAllowed}catch(e){}return t.dataTransfer.dropEffect="move"===n||"linkMove"===n?"move":"copy",e(t),this.emit("dragover",t)},dragleave:e=>this.emit("dragleave",e),drop:t=>(e(t),this.drop(t)),dragend:e=>this.emit("dragend",e)}}],this.clickableElements.forEach((e=>this.listeners.push({element:e,events:{click:t=>((e!==this.element||t.target===this.element||u.elementInside(t.target,this.element.querySelector(".dz-message")))&&this.hiddenFileInput.click(),!0)}}))),this.enable(),this.options.init.call(this)}destroy(){return this.disable(),this.removeAllFiles(!0),(null!=this.hiddenFileInput?this.hiddenFileInput.parentNode:void 0)&&(this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput),this.hiddenFileInput=null),delete this.element.dropzone,u.instances.splice(u.instances.indexOf(this),1)}updateTotalUploadProgress(){let e,t=0,n=0;if(this.getActiveFiles().length){for(let e of this.getActiveFiles())t+=e.upload.bytesSent,n+=e.upload.total;e=100*t/n}else e=100;return this.emit("totaluploadprogress",e,n,t)}_getParamName(e){return"function"==typeof this.options.paramName?this.options.paramName(e):`${this.options.paramName}${this.options.uploadMultiple?`[${e}]`:""}`}_renameFile(e){return"function"!=typeof this.options.renameFile?e.name:this.options.renameFile(e)}getFallbackForm(){let e,t;if(e=this.getExistingFallback())return e;let n='
';this.options.dictFallbackText&&(n+=`

${this.options.dictFallbackText}

`),n+=`
`;let r=u.createElement(n);return"FORM"!==this.element.tagName?(t=u.createElement(`
`),t.appendChild(r)):(this.element.setAttribute("enctype","multipart/form-data"),this.element.setAttribute("method",this.options.method)),null!=t?t:r}getExistingFallback(){let e=function(e){for(let t of e)if(/(^| )fallback($| )/.test(t.className))return t};for(let n of["div","form"]){var t;if(t=e(this.element.getElementsByTagName(n)))return t}}setupEventListeners(){return this.listeners.map((e=>(()=>{let t=[];for(let n in e.events){let r=e.events[n];t.push(e.element.addEventListener(n,r,!1))}return t})()))}removeEventListeners(){return this.listeners.map((e=>(()=>{let t=[];for(let n in e.events){let r=e.events[n];t.push(e.element.removeEventListener(n,r,!1))}return t})()))}disable(){return this.clickableElements.forEach((e=>e.classList.remove("dz-clickable"))),this.removeEventListeners(),this.disabled=!0,this.files.map((e=>this.cancelUpload(e)))}enable(){return delete this.disabled,this.clickableElements.forEach((e=>e.classList.add("dz-clickable"))),this.setupEventListeners()}filesize(e){let t=0,n="b";if(e>0){let r=["tb","gb","mb","kb","b"];for(let o=0;o=Math.pow(this.options.filesizeBase,4-o)/10){t=e/Math.pow(this.options.filesizeBase,4-o),n=i;break}}t=Math.round(10*t)/10}return`${t} ${this.options.dictFileSizeUnits[n]}`}_updateMaxFilesReachedClass(){return null!=this.options.maxFiles&&this.getAcceptedFiles().length>=this.options.maxFiles?(this.getAcceptedFiles().length===this.options.maxFiles&&this.emit("maxfilesreached",this.files),this.element.classList.add("dz-max-files-reached")):this.element.classList.remove("dz-max-files-reached")}drop(e){if(!e.dataTransfer)return;this.emit("drop",e);let t=[];for(let n=0;ne.items,null!=t?n(t):void 0))return;var t,n;this.emit("paste",e);let{items:r}=e.clipboardData;return r.length?this._addFilesFromItems(r):void 0}handleFiles(e){for(let t of e)this.addFile(t)}_addFilesFromItems(e){return(()=>{let t=[];for(let r of e){var n;null!=r.webkitGetAsEntry&&(n=r.webkitGetAsEntry())?n.isFile?t.push(this.addFile(r.getAsFile())):n.isDirectory?t.push(this._addFilesFromDirectory(n,n.name)):t.push(void 0):null!=r.getAsFile&&(null==r.kind||"file"===r.kind)?t.push(this.addFile(r.getAsFile())):t.push(void 0)}return t})()}_addFilesFromDirectory(e,t){let n=e.createReader(),r=e=>{return t=console,n="log",r=t=>t.log(e),null!=t&&"function"==typeof t[n]?r(t,n):void 0;var t,n,r};var o=()=>n.readEntries((e=>{if(e.length>0){for(let n of e)n.isFile?n.file((e=>{if(!this.options.ignoreHiddenFiles||"."!==e.name.substring(0,1))return e.fullPath=`${t}/${e.name}`,this.addFile(e)})):n.isDirectory&&this._addFilesFromDirectory(n,`${t}/${n.name}`);o()}return null}),r);return o()}accept(e,t){this.options.maxFilesize&&e.size>1048576*this.options.maxFilesize?t(this.options.dictFileTooBig.replace("{{filesize}}",Math.round(e.size/1024/10.24)/100).replace("{{maxFilesize}}",this.options.maxFilesize)):u.isValidFile(e,this.options.acceptedFiles)?null!=this.options.maxFiles&&this.getAcceptedFiles().length>=this.options.maxFiles?(t(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}",this.options.maxFiles)),this.emit("maxfilesexceeded",e)):this.options.accept.call(this,e,t):t(this.options.dictInvalidFileType)}addFile(e){e.upload={uuid:u.uuidv4(),progress:0,total:e.size,bytesSent:0,filename:this._renameFile(e)},this.files.push(e),e.status=u.ADDED,this.emit("addedfile",e),this._enqueueThumbnail(e),this.accept(e,(t=>{t?(e.accepted=!1,this._errorProcessing([e],t)):(e.accepted=!0,this.options.autoQueue&&this.enqueueFile(e)),this._updateMaxFilesReachedClass()}))}enqueueFiles(e){for(let t of e)this.enqueueFile(t);return null}enqueueFile(e){if(e.status!==u.ADDED||!0!==e.accepted)throw new Error("This file can't be queued because it has already been processed or was rejected.");if(e.status=u.QUEUED,this.options.autoProcessQueue)return setTimeout((()=>this.processQueue()),0)}_enqueueThumbnail(e){if(this.options.createImageThumbnails&&e.type.match(/image.*/)&&e.size<=1048576*this.options.maxThumbnailFilesize)return this._thumbnailQueue.push(e),setTimeout((()=>this._processThumbnailQueue()),0)}_processThumbnailQueue(){if(this._processingThumbnail||0===this._thumbnailQueue.length)return;this._processingThumbnail=!0;let e=this._thumbnailQueue.shift();return this.createThumbnail(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,!0,(t=>(this.emit("thumbnail",e,t),this._processingThumbnail=!1,this._processThumbnailQueue())))}removeFile(e){if(e.status===u.UPLOADING&&this.cancelUpload(e),this.files=d(this.files,e),this.emit("removedfile",e),0===this.files.length)return this.emit("reset")}removeAllFiles(e){null==e&&(e=!1);for(let t of this.files.slice())(t.status!==u.UPLOADING||e)&&this.removeFile(t);return null}resizeImage(e,t,n,r,o){return this.createThumbnail(e,t,n,r,!0,((t,n)=>{if(null==n)return o(e);{let{resizeMimeType:t}=this.options;null==t&&(t=e.type);let r=n.toDataURL(t,this.options.resizeQuality);return"image/jpeg"!==t&&"image/jpg"!==t||(r=f.restore(e.dataURL,r)),o(u.dataURItoBlob(r))}}))}createThumbnail(e,t,n,r,o,i){let s=new FileReader;s.onload=()=>{e.dataURL=s.result,"image/svg+xml"!==e.type?this.createThumbnailFromUrl(e,t,n,r,o,i):null!=i&&i(s.result)},s.readAsDataURL(e)}displayExistingFile(e,t,n,r,o=!0){if(this.emit("addedfile",e),this.emit("complete",e),o){let o=t=>{this.emit("thumbnail",e,t),n&&n()};e.dataURL=t,this.createThumbnailFromUrl(e,this.options.thumbnailWidth,this.options.thumbnailHeight,this.options.thumbnailMethod,this.options.fixOrientation,o,r)}else this.emit("thumbnail",e,t),n&&n()}createThumbnailFromUrl(e,t,n,r,o,i,s){let a=document.createElement("img");return s&&(a.crossOrigin=s),o="from-image"!=getComputedStyle(document.body).imageOrientation&&o,a.onload=()=>{let s=e=>e(1);return"undefined"!=typeof EXIF&&null!==EXIF&&o&&(s=e=>EXIF.getData(a,(function(){return e(EXIF.getTag(this,"Orientation"))}))),s((o=>{e.width=a.width,e.height=a.height;let s=this.options.resize.call(this,e,t,n,r),l=document.createElement("canvas"),u=l.getContext("2d");switch(l.width=s.trgWidth,l.height=s.trgHeight,o>4&&(l.width=s.trgHeight,l.height=s.trgWidth),o){case 2:u.translate(l.width,0),u.scale(-1,1);break;case 3:u.translate(l.width,l.height),u.rotate(Math.PI);break;case 4:u.translate(0,l.height),u.scale(1,-1);break;case 5:u.rotate(.5*Math.PI),u.scale(1,-1);break;case 6:u.rotate(.5*Math.PI),u.translate(0,-l.width);break;case 7:u.rotate(.5*Math.PI),u.translate(l.height,-l.width),u.scale(-1,1);break;case 8:u.rotate(-.5*Math.PI),u.translate(-l.height,0)}p(u,a,null!=s.srcX?s.srcX:0,null!=s.srcY?s.srcY:0,s.srcWidth,s.srcHeight,null!=s.trgX?s.trgX:0,null!=s.trgY?s.trgY:0,s.trgWidth,s.trgHeight);let d=l.toDataURL("image/png");if(null!=i)return i(d,l)}))},null!=i&&(a.onerror=i),a.src=e.dataURL}processQueue(){let{parallelUploads:e}=this.options,t=this.getUploadingFiles().length,n=t;if(t>=e)return;let r=this.getQueuedFiles();if(r.length>0){if(this.options.uploadMultiple)return this.processFiles(r.slice(0,e-t));for(;nt.xhr===e)).map((e=>e))}cancelUpload(e){if(e.status===u.UPLOADING){let t=this._getFilesWithXhr(e.xhr);for(let e of t)e.status=u.CANCELED;void 0!==e.xhr&&e.xhr.abort();for(let e of t)this.emit("canceled",e);this.options.uploadMultiple&&this.emit("canceledmultiple",t)}else e.status!==u.ADDED&&e.status!==u.QUEUED||(e.status=u.CANCELED,this.emit("canceled",e),this.options.uploadMultiple&&this.emit("canceledmultiple",[e]));if(this.options.autoProcessQueue)return this.processQueue()}resolveOption(e,...t){return"function"==typeof e?e.apply(this,t):e}uploadFile(e){return this.uploadFiles([e])}uploadFiles(e){this._transformFiles(e,(t=>{if(this.options.chunking){let n=t[0];e[0].upload.chunked=this.options.chunking&&(this.options.forceChunking||n.size>this.options.chunkSize),e[0].upload.totalChunkCount=Math.ceil(n.size/this.options.chunkSize)}if(e[0].upload.chunked){let n=e[0],r=t[0],o=0;n.upload.chunks=[];let i=()=>{let t=0;for(;void 0!==n.upload.chunks[t];)t++;if(t>=n.upload.totalChunkCount)return;o++;let i=t*this.options.chunkSize,s=Math.min(i+this.options.chunkSize,r.size),a={name:this._getParamName(0),data:r.webkitSlice?r.webkitSlice(i,s):r.slice(i,s),filename:n.upload.filename,chunkIndex:t};n.upload.chunks[t]={file:n,index:t,dataBlock:a,status:u.UPLOADING,progress:0,retries:0},this._uploadData(e,[a])};if(n.upload.finishedChunkUpload=(t,r)=>{let o=!0;t.status=u.SUCCESS,t.dataBlock=null,t.response=t.xhr.responseText,t.responseHeaders=t.xhr.getAllResponseHeaders(),t.xhr=null;for(let e=0;e{this._finished(e,r,null)}))},this.options.parallelChunkUploads)for(let e=0;e{this._finishedUploading(e,n,t)},n.ontimeout=()=>{this._handleUploadError(e,n,`Request timedout after ${this.options.timeout/1e3} seconds`)},n.onerror=()=>{this._handleUploadError(e,n)},(null!=n.upload?n.upload:n).onprogress=t=>this._updateFilesUploadProgress(e,n,t);let s=this.options.defaultHeaders?{Accept:"application/json","Cache-Control":"no-cache","X-Requested-With":"XMLHttpRequest"}:{};this.options.binaryBody&&(s["Content-Type"]=e[0].type),this.options.headers&&r(s,this.options.headers);for(let e in s){let t=s[e];t&&n.setRequestHeader(e,t)}if(this.options.binaryBody){for(let t of e)this.emit("sending",t,n);this.options.uploadMultiple&&this.emit("sendingmultiple",e,n),this.submitRequest(n,null,e)}else{let r=new FormData;if(this.options.params){let t=this.options.params;"function"==typeof t&&(t=t.call(this,e,n,e[0].upload.chunked?this._getChunk(e[0],n):null));for(let e in t){let n=t[e];if(Array.isArray(n))for(let t=0;t{n[o]=i,++r===e.length&&t(n)}))}_addFormElementData(e){if("FORM"===this.element.tagName)for(let t of this.element.querySelectorAll("input, textarea, select, button")){let n=t.getAttribute("name"),r=t.getAttribute("type");if(r&&(r=r.toLowerCase()),null!=n)if("SELECT"===t.tagName&&t.hasAttribute("multiple"))for(let r of t.options)r.selected&&e.append(n,r.value);else(!r||"checkbox"!==r&&"radio"!==r||t.checked)&&e.append(n,t.value)}}_updateFilesUploadProgress(e,t,n){if(e[0].upload.chunked){let r=e[0],o=this._getChunk(r,t);n?(o.progress=100*n.loaded/n.total,o.total=n.total,o.bytesSent=n.loaded):(o.progress=100,o.bytesSent=o.total),r.upload.progress=0,r.upload.total=0,r.upload.bytesSent=0;for(let e=0;ethis.options.renameFilename.call(this,e.name,e)),"string"==typeof this.options.method&&(this.options.method=this.options.method.toUpperCase()),(n=this.getExistingFallback())&&n.parentNode&&n.parentNode.removeChild(n),!1!==this.options.previewsContainer&&(this.options.previewsContainer?this.previewsContainer=u.getElement(this.options.previewsContainer,"previewsContainer"):this.previewsContainer=this.element),this.options.clickable&&(!0===this.options.clickable?this.clickableElements=[this.element]:this.clickableElements=u.getElements(this.options.clickable,"clickable")),this.init()}}u.initClass(),u.options={},u.optionsForElement=function(e){return e.getAttribute("id")?u.options[c(e.getAttribute("id"))]:void 0},u.instances=[],u.forElement=function(e){if("string"==typeof e&&(e=document.querySelector(e)),null==(null!=e?e.dropzone:void 0))throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone.");return e.dropzone},u.discover=function(){let e;if(document.querySelectorAll)e=document.querySelectorAll(".dropzone");else{e=[];let t=t=>(()=>{let n=[];for(let r of t)/(^| )dropzone($| )/.test(r.className)?n.push(e.push(r)):n.push(void 0);return n})();t(document.getElementsByTagName("div")),t(document.getElementsByTagName("form"))}return(()=>{let t=[];for(let n of e)!1!==u.optionsForElement(n)?t.push(new u(n)):t.push(void 0);return t})()},u.blockedBrowsers=[/opera.*(Macintosh|Windows Phone).*version\/12/i],u.isBrowserSupported=function(){let e=!0;if(window.File&&window.FileReader&&window.FileList&&window.Blob&&window.FormData&&document.querySelector)if("classList"in document.createElement("a")){void 0!==u.blacklistedBrowsers&&(u.blockedBrowsers=u.blacklistedBrowsers);for(let t of u.blockedBrowsers)if(t.test(navigator.userAgent)){e=!1;continue}}else e=!1;else e=!1;return e},u.dataURItoBlob=function(e){let t=atob(e.split(",")[1]),n=e.split(",")[0].split(":")[1].split(";")[0],r=new ArrayBuffer(t.length),o=new Uint8Array(r);for(let e=0,n=t.length,r=0<=n;r?e<=n:e>=n;r?e++:e--)o[e]=t.charCodeAt(e);return new Blob([r],{type:n})};const d=(e,t)=>e.filter((e=>e!==t)).map((e=>e)),c=e=>e.replace(/[\-_](\w)/g,(e=>e.charAt(1).toUpperCase()));u.createElement=function(e){let t=document.createElement("div");return t.innerHTML=e,t.childNodes[0]},u.elementInside=function(e,t){if(e===t)return!0;for(;e=e.parentNode;)if(e===t)return!0;return!1},u.getElement=function(e,t){let n;if("string"==typeof e?n=document.querySelector(e):null!=e.nodeType&&(n=e),null==n)throw new Error(`Invalid \`${t}\` option provided. Please provide a CSS selector or a plain HTML element.`);return n},u.getElements=function(e,t){let n,r;if(e instanceof Array){r=[];try{for(n of e)r.push(this.getElement(n,t))}catch(e){r=null}}else if("string"==typeof e)for(n of(r=[],document.querySelectorAll(e)))r.push(n);else null!=e.nodeType&&(r=[e]);if(null==r||!r.length)throw new Error(`Invalid \`${t}\` option provided. Please provide a CSS selector, a plain HTML element or a list of those.`);return r},u.confirm=function(e,t,n){return window.confirm(e)?t():null!=n?n():void 0},u.isValidFile=function(e,t){if(!t)return!0;t=t.split(",");let n=e.type,r=n.replace(/\/.*$/,"");for(let o of t)if(o=o.trim(),"."===o.charAt(0)){if(-1!==e.name.toLowerCase().indexOf(o.toLowerCase(),e.name.length-o.length))return!0}else if(/\/\*$/.test(o)){if(r===o.replace(/\/.*$/,""))return!0}else if(n===o)return!0;return!1},"undefined"!=typeof jQuery&&null!==jQuery&&(jQuery.fn.dropzone=function(e){return this.each((function(){return new u(this,e)}))}),u.ADDED="added",u.QUEUED="queued",u.ACCEPTED=u.QUEUED,u.UPLOADING="uploading",u.PROCESSING=u.UPLOADING,u.CANCELED="canceled",u.ERROR="error",u.SUCCESS="success";var p=function(e,t,n,r,o,i,s,a,l,u){let d=function(e){e.naturalWidth;let t=e.naturalHeight,n=document.createElement("canvas");n.width=1,n.height=t;let r=n.getContext("2d");r.drawImage(e,0,0);let{data:o}=r.getImageData(1,0,1,t),i=0,s=t,a=t;for(;a>i;)0===o[4*(a-1)+3]?s=a:i=a,a=s+i>>1;let l=a/t;return 0===l?1:l}(t);return e.drawImage(t,n,r,o,i,s,a,l,u/d)};class f{static initClass(){this.KEY_STR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}static encode64(e){let t,n,r,o,i,s="",a="",l="",u=0;for(;t=e[u++],n=e[u++],a=e[u++],r=t>>2,o=(3&t)<<4|n>>4,i=(15&n)<<2|a>>6,l=63&a,isNaN(n)?i=l=64:isNaN(a)&&(l=64),s=s+this.KEY_STR.charAt(r)+this.KEY_STR.charAt(o)+this.KEY_STR.charAt(i)+this.KEY_STR.charAt(l),t=n=a="",r=o=i=l="",ue.length)break}return n}static decode64(e){let t,n,r,o,i,s="",a="",l=0,u=[];for(/[^A-Za-z0-9\+\/\=]/g.exec(e)&&console.warn("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\nExpect errors in decoding."),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");r=this.KEY_STR.indexOf(e.charAt(l++)),o=this.KEY_STR.indexOf(e.charAt(l++)),i=this.KEY_STR.indexOf(e.charAt(l++)),a=this.KEY_STR.indexOf(e.charAt(l++)),t=r<<2|o>>4,n=(15&o)<<4|i>>2,s=(3&i)<<6|a,u.push(t),64!==i&&u.push(n),64!==a&&u.push(s),t=n=s="",r=o=i=a="",l { let item = null; beforeEach(() => { - item = ReactTestUtils.renderIntoDocument( - - ); + item = new AssetDropzone(); }); it('should set this.dropzone to null', () => { - item.dropzone = 1; - item.constructor(props); - expect(item.dropzone).toBe(null); }); }); diff --git a/client/src/components/BackButton/tests/BackButton-test.js b/client/src/components/BackButton/tests/BackButton-test.js index 4a77d248c..6f3a31393 100644 --- a/client/src/components/BackButton/tests/BackButton-test.js +++ b/client/src/components/BackButton/tests/BackButton-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; diff --git a/client/src/components/BulkActions/tests/BulkActions-test.js b/client/src/components/BulkActions/tests/BulkActions-test.js index bdb9bb442..3b6762cad 100644 --- a/client/src/components/BulkActions/tests/BulkActions-test.js +++ b/client/src/components/BulkActions/tests/BulkActions-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ jest.mock('jquery', () => { const jqueryMock = { @@ -131,7 +131,7 @@ describe('BulkActions', () => { const callbackMockFn = jest.fn(); bulkActions.getOptionByValue - .mockReturnValueOnce({ confirm: Promise.resolve(), callback: callbackMockFn }); + .mockReturnValueOnce({ confirm: () => Promise.resolve(), callback: callbackMockFn }); return bulkActions.handleChangeValue(event).then(() => { expect(callbackMockFn).toBeCalled(); }); @@ -141,9 +141,9 @@ describe('BulkActions', () => { const callbackMockFn = jest.fn(); bulkActions.getOptionByValue - .mockReturnValueOnce({ confirm: Promise.reject(), callback: callbackMockFn }); + .mockReturnValueOnce({ confirm: () => Promise.reject('cancelled'), callback: callbackMockFn }); return bulkActions.handleChangeValue(event).then(() => { - expect(callbackMockFn).toBeCalled(); + expect(callbackMockFn).not.toBeCalled(); }); }); }); diff --git a/client/src/components/GalleryItem/tests/GalleryItem-test.js b/client/src/components/GalleryItem/tests/GalleryItem-test.js index 668a33d17..ee1051172 100644 --- a/client/src/components/GalleryItem/tests/GalleryItem-test.js +++ b/client/src/components/GalleryItem/tests/GalleryItem-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, Event */ +/* global jest, describe, it, expect, beforeEach, Event */ import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; diff --git a/client/src/components/InsertEmbedModal/tests/InsertEmbedModal-test.js b/client/src/components/InsertEmbedModal/tests/InsertEmbedModal-test.js index 844bde779..ebe3844cd 100644 --- a/client/src/components/InsertEmbedModal/tests/InsertEmbedModal-test.js +++ b/client/src/components/InsertEmbedModal/tests/InsertEmbedModal-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ // FormBuilderLoader mock was not mocking properly // manually override with a stateless null component diff --git a/client/src/components/PreviewImageField/tests/PreviewImageField-test.js b/client/src/components/PreviewImageField/tests/PreviewImageField-test.js index 46b291bf4..1fdd5e7b2 100644 --- a/client/src/components/PreviewImageField/tests/PreviewImageField-test.js +++ b/client/src/components/PreviewImageField/tests/PreviewImageField-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ jest.mock('components/AssetDropzone/AssetDropzone'); diff --git a/client/src/components/ProportionConstraintField/tests/ImageSizePresetList-test.js b/client/src/components/ProportionConstraintField/tests/ImageSizePresetList-test.js index d8a1021ef..53ea21921 100644 --- a/client/src/components/ProportionConstraintField/tests/ImageSizePresetList-test.js +++ b/client/src/components/ProportionConstraintField/tests/ImageSizePresetList-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import React from 'react'; import ImageSizePresetList from '../ImageSizePresetList'; diff --git a/client/src/components/ProportionConstraintField/tests/ProportionConstraintField-test.js b/client/src/components/ProportionConstraintField/tests/ProportionConstraintField-test.js index 8d792ded4..42354c10a 100644 --- a/client/src/components/ProportionConstraintField/tests/ProportionConstraintField-test.js +++ b/client/src/components/ProportionConstraintField/tests/ProportionConstraintField-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; diff --git a/client/src/components/UploadField/tests/UploadField-test.js b/client/src/components/UploadField/tests/UploadField-test.js index 845b577ec..aa14939c7 100644 --- a/client/src/components/UploadField/tests/UploadField-test.js +++ b/client/src/components/UploadField/tests/UploadField-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; diff --git a/client/src/components/UploadField/tests/UploadFieldItem-test.js b/client/src/components/UploadField/tests/UploadFieldItem-test.js index b4f3872cb..10428126c 100644 --- a/client/src/components/UploadField/tests/UploadFieldItem-test.js +++ b/client/src/components/UploadField/tests/UploadFieldItem-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import React from 'react'; import ReactTestUtils from 'react-dom/test-utils'; diff --git a/client/src/containers/AssetAdmin/AssetAdmin.js b/client/src/containers/AssetAdmin/AssetAdmin.js index 3d01c2afb..6beed05b0 100644 --- a/client/src/containers/AssetAdmin/AssetAdmin.js +++ b/client/src/containers/AssetAdmin/AssetAdmin.js @@ -30,10 +30,6 @@ import AssetAdminBreadcrumb from './AssetAdminBreadcrumb'; class AssetAdmin extends Component { constructor(props) { super(props); - // Needed to avoid warnings about missing state when getDerivedStateFromProps is called - if (!this.state) { - this.state = {}; - } this.handleOpenFile = this.handleOpenFile.bind(this); this.handleCloseFile = this.handleCloseFile.bind(this); @@ -58,11 +54,10 @@ class AssetAdmin extends Component { this.handleMoveFilesSuccess = this.handleMoveFilesSuccess.bind(this); } - static getDerivedStateFromProps(props) { - if (!props.loading && props.folder && props.folderId !== props.folder.id) { + componentWillReceiveProps(props) { + if ((typeof props.onReplaceUrl === 'function') && !props.loading && props.folder && props.folderId !== props.folder.id) { props.onReplaceUrl(props.folder.id, props.fileId, props.query, props.viewAction); } - return null; } /** diff --git a/client/src/containers/AssetAdmin/tests/AssetAdmin-test.js b/client/src/containers/AssetAdmin/tests/AssetAdmin-test.js index 1c07c1580..605365f2f 100644 --- a/client/src/containers/AssetAdmin/tests/AssetAdmin-test.js +++ b/client/src/containers/AssetAdmin/tests/AssetAdmin-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ // mock sub-components, as they could rely on a Redux store context and not necessary for unit test jest.mock('containers/Editor/Editor'); diff --git a/client/src/containers/AssetAdmin/tests/AssetAdminBreadcrumb-test.js b/client/src/containers/AssetAdmin/tests/AssetAdminBreadcrumb-test.js index d0c270eed..18857e14a 100644 --- a/client/src/containers/AssetAdmin/tests/AssetAdminBreadcrumb-test.js +++ b/client/src/containers/AssetAdmin/tests/AssetAdminBreadcrumb-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import Breadcrumb from '../AssetAdminBreadcrumb'; import ShallowRenderer from 'react-test-renderer/shallow'; import React from 'react'; diff --git a/client/src/containers/AssetAdmin/tests/AssetAdminRouter-test.js b/client/src/containers/AssetAdmin/tests/AssetAdminRouter-test.js index 4cd80f281..125fc2565 100644 --- a/client/src/containers/AssetAdmin/tests/AssetAdminRouter-test.js +++ b/client/src/containers/AssetAdmin/tests/AssetAdminRouter-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ // mock sub-components, as they could rely on a Redux store context and not necessary for unit test jest.mock('containers/AssetAdmin/AssetAdmin'); @@ -17,19 +17,14 @@ describe('AssetAdminRouter', () => { limit: 10, form: {}, }, - location: { - pathname: '', - query: {}, - search: '', - }, - match: { - params: { - fileId: '0', - folderId: '0', + router: { + location: { + pathname: '', + query: {}, + search: '', }, - }, - history: { - push: jest.fn(), + navigate: jest.fn(), + params: {}, }, }; }); @@ -42,7 +37,7 @@ describe('AssetAdminRouter', () => { }); it('should retain page query parameter when not changing folders', () => { - const newUrl = component.getUrl(props.match.params.folderId, null, { page: 2 }); + const newUrl = component.getUrl(props.router.params.folderId, null, { page: 2 }); expect(newUrl).toContain('page=2'); }); diff --git a/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteConfirmation-test.js b/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteConfirmation-test.js index e3c70d592..807f31dc7 100644 --- a/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteConfirmation-test.js +++ b/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteConfirmation-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, Event */ +/* global jest, describe, it, expect, beforeEach, Event */ import React from 'react'; import { Component } from '../BulkDeleteConfirmation'; diff --git a/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteMessage-test.js b/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteMessage-test.js index 2e047bbdd..52a34eef8 100644 --- a/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteMessage-test.js +++ b/client/src/containers/BulkDeleteConfirmation/tests/BulkDeleteMessage-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, Event */ +/* global jest, describe, it, expect, beforeEach, Event */ import React from 'react'; import Component from '../BulkDeleteMessage'; diff --git a/client/src/containers/BulkDeleteConfirmation/tests/helpers-test.js b/client/src/containers/BulkDeleteConfirmation/tests/helpers-test.js index 5ffe3bc27..ec3b2431a 100644 --- a/client/src/containers/BulkDeleteConfirmation/tests/helpers-test.js +++ b/client/src/containers/BulkDeleteConfirmation/tests/helpers-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import { getFolderDescendantFileTotals, getFileTotalItems } from '../helpers'; import { mockfiles as files } from './mockfiles'; diff --git a/client/src/containers/Editor/tests/Editor-test.js b/client/src/containers/Editor/tests/Editor-test.js index 5fbd8fd07..97761ae5c 100644 --- a/client/src/containers/Editor/tests/Editor-test.js +++ b/client/src/containers/Editor/tests/Editor-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, FormData */ +/* global jest, describe, it, expect, beforeEach, FormData */ jest.mock('containers/FormBuilderLoader/FormBuilderLoader'); jest.mock('components/FormBuilderModal/FormBuilderModal'); diff --git a/client/src/containers/Editor/tests/EditorHeader-test.js b/client/src/containers/Editor/tests/EditorHeader-test.js index 9e7d85c05..031982cdf 100644 --- a/client/src/containers/Editor/tests/EditorHeader-test.js +++ b/client/src/containers/Editor/tests/EditorHeader-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, FormData */ +/* global jest, describe, it, expect, beforeEach, FormData */ jest.mock('containers/FormBuilderLoader/FormBuilderLoader'); jest.mock('components/FormBuilderModal/FormBuilderModal'); diff --git a/client/src/containers/Gallery/tests/Gallery-test.js b/client/src/containers/Gallery/tests/Gallery-test.js index 8da9ac6ab..f7030105b 100644 --- a/client/src/containers/Gallery/tests/Gallery-test.js +++ b/client/src/containers/Gallery/tests/Gallery-test.js @@ -471,21 +471,6 @@ describe('Gallery', () => { }); }); - describe('handleCreateFolder()', () => { - let gallery = null; - - beforeEach(() => { - props.onCreateFolder = jest.fn(); - - gallery = ReactTestUtils.renderIntoDocument( - - ); - gallery.handleCreateFolder(); - - expect(props.onCreateFolder).toBeCalled(); - }); - }); - describe('bulkActions', () => { let gallery = null; diff --git a/client/src/lib/tests/getFormSchema-test.js b/client/src/lib/tests/getFormSchema-test.js index bd51bc713..13f1fb5e7 100644 --- a/client/src/lib/tests/getFormSchema-test.js +++ b/client/src/lib/tests/getFormSchema-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, FormData */ +/* global jest, describe, it, expect, beforeEach, FormData */ import getFormSchema from '../getFormSchema'; import CONSTANTS from 'constants/index'; diff --git a/client/src/lib/tests/getStatusCodeMessage-test.js b/client/src/lib/tests/getStatusCodeMessage-test.js index 790c4cc74..f35614cb5 100644 --- a/client/src/lib/tests/getStatusCodeMessage-test.js +++ b/client/src/lib/tests/getStatusCodeMessage-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach, FormData */ +/* global jest, describe, it, expect, beforeEach, FormData */ import getStatusCodeMessage from '../getStatusCodeMessage'; diff --git a/client/src/state/confirmDeletion/tests/ConfirmDeletionReducer-test.js b/client/src/state/confirmDeletion/tests/ConfirmDeletionReducer-test.js index 51ad414ca..32faa911d 100644 --- a/client/src/state/confirmDeletion/tests/ConfirmDeletionReducer-test.js +++ b/client/src/state/confirmDeletion/tests/ConfirmDeletionReducer-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import reducer, { initialState } from '../ConfirmDeletionReducer'; import ACTION_TYPES from '../ConfirmDeletionActionTypes'; import * as TRANSITIONS from '../ConfirmDeletionTransitions'; diff --git a/client/src/state/files/tests/readFilesQuery-test.js b/client/src/state/files/tests/readFilesQuery-test.js index 495f9ef87..9c58ec622 100644 --- a/client/src/state/files/tests/readFilesQuery-test.js +++ b/client/src/state/files/tests/readFilesQuery-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import query from '../readFilesQuery'; diff --git a/client/src/state/imageLoad/tests/ImageLoadActionHandler-test.js b/client/src/state/imageLoad/tests/ImageLoadActionHandler-test.js index bdf1554e9..13c954c79 100644 --- a/client/src/state/imageLoad/tests/ImageLoadActionHandler-test.js +++ b/client/src/state/imageLoad/tests/ImageLoadActionHandler-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, expect, beforeEach, jasmine */ +/* global jest, describe, it, expect, beforeEach */ import ImageLoadActionHandler from '../ImageLoadActionHandler'; import IMAGE_STATUS from '../ImageLoadStatus'; @@ -36,7 +36,9 @@ describe('ImageLoadActionHandler', () => { }); it('eternally failing images end up failed', () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const options = { minRetry: 4, @@ -49,7 +51,7 @@ describe('ImageLoadActionHandler', () => { // Create handler which always fails const loadImageHandler = new ImageLoadActionHandler( options, - (url, resolve, reject) => { reject(); } + (url, resolve, reject) => { reject(4); } ); // Attempts three times, after a 4 second then 8 second retry delay @@ -73,7 +75,9 @@ describe('ImageLoadActionHandler', () => { }); it('initially failing download can eventually succeed', () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const options = { minRetry: 4, @@ -88,7 +92,7 @@ describe('ImageLoadActionHandler', () => { if (attempts > 2) { resolve(); } else { - reject(); + reject(2); } }; @@ -110,7 +114,9 @@ describe('ImageLoadActionHandler', () => { }); it('failed download with expiry will eventually expire', () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const options = { minRetry: 4, @@ -121,7 +127,7 @@ describe('ImageLoadActionHandler', () => { // ensure all future timers advance automatically onTimeout: () => jest.runAllTimers(), }; - const handler = (url, resolve, reject) => { reject(); }; + const handler = (url, resolve, reject) => { reject(3); }; // Create handler which always fails const loadImageHandler = new ImageLoadActionHandler( options, diff --git a/client/src/state/imageLoad/tests/ImageLoadActions-test.js b/client/src/state/imageLoad/tests/ImageLoadActions-test.js index 62f56ae1a..b473845fa 100644 --- a/client/src/state/imageLoad/tests/ImageLoadActions-test.js +++ b/client/src/state/imageLoad/tests/ImageLoadActions-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, expect, beforeEach, jasmine */ +/* global jest, describe, it, expect, beforeEach */ jest.mock('../ImageLoadActionHandler', () => jest.fn()); diff --git a/client/src/state/imageLoad/tests/ImageLoadLocker-test.js b/client/src/state/imageLoad/tests/ImageLoadLocker-test.js index 673bd3156..9f6605260 100644 --- a/client/src/state/imageLoad/tests/ImageLoadLocker-test.js +++ b/client/src/state/imageLoad/tests/ImageLoadLocker-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, expect, beforeEach, jasmine */ +/* global jest, describe, it, expect, beforeEach */ jest.unmock('../ImageLoadLocker'); diff --git a/client/src/state/modal/tests/ModalReducer-test.js b/client/src/state/modal/tests/ModalReducer-test.js index 1081fd659..4e298474a 100644 --- a/client/src/state/modal/tests/ModalReducer-test.js +++ b/client/src/state/modal/tests/ModalReducer-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import reducer, { initialState } from '../ModalReducer'; import { defineImageSizePresets, diff --git a/client/src/state/modal/tests/helpers-test.js b/client/src/state/modal/tests/helpers-test.js index 1dfa65c32..4a07d243f 100644 --- a/client/src/state/modal/tests/helpers-test.js +++ b/client/src/state/modal/tests/helpers-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, pit, expect, beforeEach, jasmine */ +/* global jest, describe, it, pit, expect, beforeEach */ import isStashableField, { findField } from '../helpers'; const stashable = { diff --git a/client/src/state/previewField/tests/PreviewFieldReducer-test.js b/client/src/state/previewField/tests/PreviewFieldReducer-test.js index 770035f5b..be2b3a393 100644 --- a/client/src/state/previewField/tests/PreviewFieldReducer-test.js +++ b/client/src/state/previewField/tests/PreviewFieldReducer-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, expect, beforeEach, jasmine */ +/* global jest, describe, it, expect, beforeEach */ import previewFieldReducer from '../PreviewFieldReducer'; import ACTION_TYPES from '../PreviewFieldActionTypes'; diff --git a/client/src/state/queuedFiles/tests/QueuedFilesReducer-test.js b/client/src/state/queuedFiles/tests/QueuedFilesReducer-test.js index 8f86b75c1..99914f4db 100644 --- a/client/src/state/queuedFiles/tests/QueuedFilesReducer-test.js +++ b/client/src/state/queuedFiles/tests/QueuedFilesReducer-test.js @@ -1,4 +1,4 @@ -/* global jest, jasmine, describe, it, expect, beforeEach */ +/* global jest, describe, it, expect, beforeEach */ import queuedFilesReducer from '../QueuedFilesReducer'; diff --git a/client/src/state/uploadField/tests/UploadFieldReducer-test.js b/client/src/state/uploadField/tests/UploadFieldReducer-test.js index ca35f32b1..55939d313 100644 --- a/client/src/state/uploadField/tests/UploadFieldReducer-test.js +++ b/client/src/state/uploadField/tests/UploadFieldReducer-test.js @@ -1,4 +1,4 @@ -/* global jest, describe, it, expect, beforeEach, jasmine */ +/* global jest, describe, it, expect, beforeEach */ import uploadFieldReducer from '../UploadFieldReducer'; import fileStructure from '../../../lib/fileStructure'; @@ -122,7 +122,7 @@ describe('uploadFieldReducer', () => { }); expect(nextState.fields.anotherfield.files.length).toBe(2); expect(nextState.fields.anotherfield.files[1]).toEqual( - jasmine.objectContaining({ + expect.objectContaining({ id: 10, queuedId: 'xyz', name: 'InProgressFile.jpg', diff --git a/package.json b/package.json index ff87a13de..bd457880e 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "dev": "NODE_ENV=development webpack --progress", "watch": "NODE_ENV=development webpack --watch --progress", "css": "WEBPACK_CHILD=css npm run build", - "test": "jest", + "test": "jest --maxWorkers 1", "coverage": "jest --coverage", "lock": "npm-shrinkwrap --dev", "lint": "eslint client/src && sass-lint client/src", @@ -29,9 +29,15 @@ "lint-sass": "sass-lint client/src" }, "jest": { + "testEnvironment": "jsdom", "roots": [ "client/src" ], + "moduleNameMapper": { + "^react-dom/client$": "react-dom-16", + "^react-dom((/.*)?)$": "react-dom-16$1", + "^react((/.*)?)$": "react-16$1" + }, "modulePaths": [ "client/src", "../admin/client/src", @@ -54,7 +60,12 @@ "@storybook/react": "^6.5.13", "babel-jest": "^29.3.0", "copy-webpack-plugin": "^11.0.0", + "enzyme": "^3.11.0", + "enzyme-adapter-react-16": "^1.15.6", "jest-cli": "^29.3.0", + "jest-environment-jsdom": "^29.3.1", + "react-16": "npm:react@^16.14.0", + "react-dom-16": "npm:react-dom@^16.14.0", "terser-webpack-plugin": "^5.3.6", "webpack": "^5.74.0", "webpack-cli": "^5.0.0" @@ -99,11 +110,5 @@ }, "browserslist": [ "defaults" - ], - "babel": { - "presets": [ - "@babel/preset-env", - "@babel/preset-react" - ] - } + ] } diff --git a/yarn.lock b/yarn.lock index 2c2775fc1..fc4d6dbd7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1288,6 +1288,16 @@ "@types/node" "*" jest-mock "^29.3.1" +"@jest/environment@^29.4.2": + version "29.4.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.4.2.tgz#ee92c316ee2fbdf0bcd9d2db0ef42d64fea26b56" + integrity sha512-JKs3VUtse0vQfCaFGJRX1bir9yBdtasxziSyu+pIiEllAQOe4oQhdCYIf3+Lx+nGglFktSKToBnRJfD5QKp+NQ== + dependencies: + "@jest/fake-timers" "^29.4.2" + "@jest/types" "^29.4.2" + "@types/node" "*" + jest-mock "^29.4.2" + "@jest/expect-utils@^29.3.1": version "29.3.1" resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.3.1.tgz#531f737039e9b9e27c42449798acb5bba01935b6" @@ -1315,6 +1325,18 @@ jest-mock "^29.3.1" jest-util "^29.3.1" +"@jest/fake-timers@^29.4.2": + version "29.4.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.4.2.tgz#af43ee1a5720b987d0348f80df98f2cb17d45cd0" + integrity sha512-Ny1u0Wg6kCsHFWq7A/rW/tMhIedq2siiyHyLpHCmIhP7WmcAmd2cx95P+0xtTZlj5ZbJxIRQi4OPydZZUoiSQQ== + dependencies: + "@jest/types" "^29.4.2" + "@sinonjs/fake-timers" "^10.0.2" + "@types/node" "*" + jest-message-util "^29.4.2" + jest-mock "^29.4.2" + jest-util "^29.4.2" + "@jest/globals@^29.3.1": version "29.3.1" resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.3.1.tgz#92be078228e82d629df40c3656d45328f134a0c6" @@ -1362,6 +1384,13 @@ dependencies: "@sinclair/typebox" "^0.24.1" +"@jest/schemas@^29.4.2": + version "29.4.2" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.4.2.tgz#cf7cfe97c5649f518452b176c47ed07486270fc1" + integrity sha512-ZrGzGfh31NtdVH8tn0mgJw4khQuNHiKqdzJAFbCaERbyCP9tHlxWuL/mnMu8P7e/+k4puWjI1NOzi/sFsjce/g== + dependencies: + "@sinclair/typebox" "^0.25.16" + "@jest/source-map@^29.2.0": version "29.2.0" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.2.0.tgz#ab3420c46d42508dcc3dc1c6deee0b613c235744" @@ -1424,6 +1453,18 @@ "@types/yargs" "^17.0.8" chalk "^4.0.0" +"@jest/types@^29.4.2": + version "29.4.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.4.2.tgz#8f724a414b1246b2bfd56ca5225d9e1f39540d82" + integrity sha512-CKlngyGP0fwlgC1BRUtPZSiWLBhyS9dKwKmyGxk8Z6M82LBEGB2aLQSg+U1MyLsU+M7UjnlLllBM2BLWKVm/Uw== + dependencies: + "@jest/schemas" "^29.4.2" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^17.0.8" + chalk "^4.0.0" + "@jridgewell/gen-mapping@^0.1.0": version "0.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" @@ -1809,6 +1850,11 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" integrity sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA== +"@sinclair/typebox@^0.25.16": + version "0.25.21" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.21.tgz#763b05a4b472c93a8db29b2c3e359d55b29ce272" + integrity sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g== + "@sinonjs/commons@^1.7.0": version "1.8.6" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" @@ -1816,6 +1862,20 @@ dependencies: type-detect "4.0.8" +"@sinonjs/commons@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3" + integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^10.0.2": + version "10.0.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c" + integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw== + dependencies: + "@sinonjs/commons" "^2.0.0" + "@sinonjs/fake-timers@^9.1.2": version "9.1.2" resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" @@ -2579,6 +2639,15 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jsdom@^20.0.0": + version "20.0.1" + resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.1.tgz#07c14bc19bd2f918c1929541cdaacae894744808" + integrity sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ== + dependencies: + "@types/node" "*" + "@types/tough-cookie" "*" + parse5 "^7.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.11" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" @@ -2693,6 +2762,11 @@ resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.8.tgz#b94a4391c85666c7b73299fd3ad79d4faa435310" integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ== +"@types/tough-cookie@*": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.2.tgz#6286b4c7228d58ab7866d19716f3696e03a09397" + integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw== + "@types/uglify-js@*": version "3.17.1" resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.17.1.tgz#e0ffcef756476410e5bce2cb01384ed878a195b5" @@ -3060,6 +3134,11 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== +abab@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + abbrev@^1.0.0, abbrev@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" @@ -3073,6 +3152,14 @@ accepts@~1.3.5, accepts@~1.3.8: mime-types "~2.1.34" negotiator "0.6.3" +acorn-globals@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-7.0.1.tgz#0dbf05c44fa7c94332914c02066d5beff62c40c3" + integrity sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q== + dependencies: + acorn "^8.1.0" + acorn-walk "^8.0.2" + acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" @@ -3095,7 +3182,7 @@ acorn-walk@^7.2.0: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.0.0: +acorn-walk@^8.0.0, acorn-walk@^8.0.2: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== @@ -3125,6 +3212,11 @@ acorn@^8.0.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.1.tgz#0a3f9cbecc4ec3bea6f0a80b66ae8dd2da250b73" integrity sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA== +acorn@^8.1.0, acorn@^8.8.1: + version "8.8.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" + integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== + address@^1.0.1: version "1.2.2" resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" @@ -3185,6 +3277,21 @@ airbnb-js-shims@^2.2.1: string.prototype.padstart "^3.0.0" symbol.prototype.description "^1.0.0" +airbnb-prop-types@^2.16.0: + version "2.16.0" + resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.16.0.tgz#b96274cefa1abb14f623f804173ee97c13971dc2" + integrity sha512-7WHOFolP/6cS96PhKNrslCLMYAI8yB1Pp6u6XmxozQOiZbsI5ycglZr5cHhBFfuRcQQjzCMith5ZPZdYiJCxUg== + dependencies: + array.prototype.find "^2.1.1" + function.prototype.name "^1.1.2" + is-regex "^1.1.0" + object-is "^1.1.2" + object.assign "^4.1.0" + object.entries "^1.1.2" + prop-types "^15.7.2" + prop-types-exact "^1.2.0" + react-is "^16.13.1" + ajv-errors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -3446,7 +3553,28 @@ array-unique@^0.3.2: resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== -array.prototype.flat@^1.2.1, array.prototype.flat@^1.3.1: +array.prototype.filter@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array.prototype.filter/-/array.prototype.filter-1.0.2.tgz#5f90ca6e3d01c31ea8db24c147665541db28bb4c" + integrity sha512-us+UrmGOilqttSOgoWZTpOvHu68vZT2YCjc/H4vhu56vzZpaDFBhB+Se2UwqWzMKbDv7Myq5M5pcZLAtUvTQdQ== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + +array.prototype.find@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.2.1.tgz#769b8182a0b535c3d76ac025abab98ba1e12467b" + integrity sha512-I2ri5Z9uMpMvnsNrHre9l3PaX+z9D0/z6F7Yt2u15q7wt0I62g5kX6xUKR1SJiefgG+u2/gJUmM8B47XRvQR6w== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + es-shim-unscopables "^1.0.0" + +array.prototype.flat@^1.2.1, array.prototype.flat@^1.2.3, array.prototype.flat@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz#ffc6576a7ca3efc2f46a143b9d1dda9b4b3cf5e2" integrity sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA== @@ -4420,6 +4548,31 @@ character-reference-invalid@^1.0.0: resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== +cheerio-select@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" + integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g== + dependencies: + boolbase "^1.0.0" + css-select "^5.1.0" + css-what "^6.1.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" + domutils "^3.0.1" + +cheerio@^1.0.0-rc.3: + version "1.0.0-rc.12" + resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683" + integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q== + dependencies: + cheerio-select "^2.1.0" + dom-serializer "^2.0.0" + domhandler "^5.0.3" + domutils "^3.0.1" + htmlparser2 "^8.0.1" + parse5 "^7.0.0" + parse5-htmlparser2-tree-adapter "^7.0.0" + "chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.4.2: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -5049,7 +5202,18 @@ css-select@^4.1.3: domutils "^2.8.0" nth-check "^2.0.1" -css-what@^6.0.1: +css-select@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" + integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== + dependencies: + boolbase "^1.0.0" + css-what "^6.1.0" + domhandler "^5.0.2" + domutils "^3.0.1" + nth-check "^2.0.1" + +css-what@^6.0.1, css-what@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== @@ -5059,6 +5223,23 @@ cssesc@^3.0.0: resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== +cssom@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" + integrity sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + csstype@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" @@ -5089,6 +5270,15 @@ damerau-levenshtein@^1.0.8: resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== +data-urls@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" + integrity sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ== + dependencies: + abab "^2.0.6" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + debug@2.6.9, debug@^2.1.1, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" @@ -5120,6 +5310,11 @@ decamelize@^1.1.2, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decimal.js@^10.4.2: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + decode-uri-component@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" @@ -5344,6 +5539,11 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" +discontinuous-range@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a" + integrity sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ== + dnd-core@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/dnd-core/-/dnd-core-4.0.5.tgz#3b83d138d0d5e265c73ec978dec5e1ed441dc665" @@ -5399,6 +5599,15 @@ dom-serializer@^1.0.1: domhandler "^4.2.0" entities "^2.0.0" +dom-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + dom-walk@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" @@ -5409,11 +5618,18 @@ domain-browser@^1.1.1: resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@^2.0.1, domelementtype@^2.2.0: +domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== +domexception@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673" + integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw== + dependencies: + webidl-conversions "^7.0.0" + domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -5421,6 +5637,13 @@ domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: dependencies: domelementtype "^2.2.0" +domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== + dependencies: + domelementtype "^2.3.0" + domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" @@ -5430,6 +5653,15 @@ domutils@^2.5.2, domutils@^2.8.0: domelementtype "^2.2.0" domhandler "^4.2.0" +domutils@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c" + integrity sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q== + dependencies: + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.1" + dot-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" @@ -5564,6 +5796,11 @@ entities@^2.0.0: resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== +entities@^4.2.0, entities@^4.3.0, entities@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" + integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== + entities@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.1.0.tgz#992d3129cf7df6870b96c57858c249a120f8b8b5" @@ -5579,6 +5816,70 @@ envinfo@^7.7.3: resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== +enzyme-adapter-react-16@^1.15.6: + version "1.15.7" + resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.7.tgz#a737e6d8e2c147e9da5acf957755be7634f76201" + integrity sha512-LtjKgvlTc/H7adyQcj+aq0P0H07LDL480WQl1gU512IUyaDo/sbOaNDdZsJXYW2XaoPqrLLE9KbZS+X2z6BASw== + dependencies: + enzyme-adapter-utils "^1.14.1" + enzyme-shallow-equal "^1.0.5" + has "^1.0.3" + object.assign "^4.1.4" + object.values "^1.1.5" + prop-types "^15.8.1" + react-is "^16.13.1" + react-test-renderer "^16.0.0-0" + semver "^5.7.0" + +enzyme-adapter-utils@^1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.14.1.tgz#f30db15dafc22e0ccd44f5acc8d93be29218cdcf" + integrity sha512-JZgMPF1QOI7IzBj24EZoDpaeG/p8Os7WeBZWTJydpsH7JRStc7jYbHE4CmNQaLqazaGFyLM8ALWA3IIZvxW3PQ== + dependencies: + airbnb-prop-types "^2.16.0" + function.prototype.name "^1.1.5" + has "^1.0.3" + object.assign "^4.1.4" + object.fromentries "^2.0.5" + prop-types "^15.8.1" + semver "^5.7.1" + +enzyme-shallow-equal@^1.0.1, enzyme-shallow-equal@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.5.tgz#5528a897a6ad2bdc417c7221a7db682cd01711ba" + integrity sha512-i6cwm7hN630JXenxxJFBKzgLC3hMTafFQXflvzHgPmDhOBhxUWDe8AeRv1qp2/uWJ2Y8z5yLWMzmAfkTOiOCZg== + dependencies: + has "^1.0.3" + object-is "^1.1.5" + +enzyme@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.11.0.tgz#71d680c580fe9349f6f5ac6c775bc3e6b7a79c28" + integrity sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw== + dependencies: + array.prototype.flat "^1.2.3" + cheerio "^1.0.0-rc.3" + enzyme-shallow-equal "^1.0.1" + function.prototype.name "^1.1.2" + has "^1.0.3" + html-element-map "^1.2.0" + is-boolean-object "^1.0.1" + is-callable "^1.1.5" + is-number-object "^1.0.4" + is-regex "^1.0.5" + is-string "^1.0.5" + is-subset "^0.1.1" + lodash.escape "^4.0.1" + lodash.isequal "^4.5.0" + object-inspect "^1.7.0" + object-is "^1.0.2" + object.assign "^4.1.0" + object.entries "^1.1.1" + object.values "^1.1.1" + raf "^3.4.1" + rst-selector-parser "^2.2.3" + string.prototype.trim "^1.2.1" + err-code@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" @@ -6574,6 +6875,15 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -6684,7 +6994,7 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== -function.prototype.name@^1.1.0, function.prototype.name@^1.1.5: +function.prototype.name@^1.1.0, function.prototype.name@^1.1.2, function.prototype.name@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== @@ -7265,6 +7575,21 @@ hosted-git-info@^5.0.0, hosted-git-info@^5.2.1: dependencies: lru-cache "^7.5.1" +html-element-map@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.3.1.tgz#44b2cbcfa7be7aa4ff59779e47e51012e1c73c08" + integrity sha512-6XMlxrAFX4UEEGxctfFnmrFaaZFNf9i5fNuV5wZ3WWQ4FVaNP1aX1LkX9j2mfEx1NpjeE/rL3nmgEn23GdFmrg== + dependencies: + array.prototype.filter "^1.0.0" + call-bind "^1.0.2" + +html-encoding-sniffer@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" + integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA== + dependencies: + whatwg-encoding "^2.0.0" + html-entities@^2.1.0: version "2.3.3" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" @@ -7323,6 +7648,16 @@ htmlparser2@^6.1.0: domutils "^2.5.2" entities "^2.0.0" +htmlparser2@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.1.tgz#abaa985474fcefe269bc761a779b544d7196d010" + integrity sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + domutils "^3.0.1" + entities "^4.3.0" + http-cache-semantics@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" @@ -7353,7 +7688,7 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== -https-proxy-agent@^5.0.0: +https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== @@ -7380,7 +7715,7 @@ iconv-lite@0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.6.2: +iconv-lite@0.6.3, iconv-lite@^0.6.2: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== @@ -7663,7 +7998,7 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-boolean-object@^1.1.0: +is-boolean-object@^1.0.1, is-boolean-object@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== @@ -7681,7 +8016,7 @@ is-buffer@^2.0.0: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== -is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.1.5, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== @@ -7902,6 +8237,11 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-promise@^2.1.0: version "2.2.2" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -7912,7 +8252,7 @@ is-property@^1.0.0, is-property@^1.0.2: resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" integrity sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g== -is-regex@^1.0.4, is-regex@^1.1.2, is-regex@^1.1.4: +is-regex@^1.0.4, is-regex@^1.0.5, is-regex@^1.1.0, is-regex@^1.1.2, is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== @@ -7954,6 +8294,11 @@ is-string@^1.0.5, is-string@^1.0.7: dependencies: has-tostringtag "^1.0.0" +is-subset@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6" + integrity sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw== + is-symbol@^1.0.2, is-symbol@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" @@ -8239,6 +8584,20 @@ jest-each@^29.3.1: jest-util "^29.3.1" pretty-format "^29.3.1" +jest-environment-jsdom@^29.3.1: + version "29.4.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-29.4.2.tgz#0cf95ad846949280dd58bc91a9ca463b6b232dd8" + integrity sha512-v1sH4Q0JGM+LPEGqHNM+m+uTMf3vpXpKiuDYqWUAh+0c9+nc7scGE+qTR5JuE+OOTDnwfzPgcv9sMq6zWAOaVg== + dependencies: + "@jest/environment" "^29.4.2" + "@jest/fake-timers" "^29.4.2" + "@jest/types" "^29.4.2" + "@types/jsdom" "^20.0.0" + "@types/node" "*" + jest-mock "^29.4.2" + jest-util "^29.4.2" + jsdom "^20.0.0" + jest-environment-node@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.3.1.tgz#5023b32472b3fba91db5c799a0d5624ad4803e74" @@ -8308,6 +8667,21 @@ jest-message-util@^29.3.1: slash "^3.0.0" stack-utils "^2.0.3" +jest-message-util@^29.4.2: + version "29.4.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.4.2.tgz#309a2924eae6ca67cf7f25781a2af1902deee717" + integrity sha512-SElcuN4s6PNKpOEtTInjOAA8QvItu0iugkXqhYyguRvQoXapg5gN+9RQxLAkakChZA7Y26j6yUCsFWN+hlKD6g== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^29.4.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^29.4.2" + slash "^3.0.0" + stack-utils "^2.0.3" + jest-mock@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.3.1.tgz#60287d92e5010979d01f218c6b215b688e0f313e" @@ -8317,6 +8691,15 @@ jest-mock@^29.3.1: "@types/node" "*" jest-util "^29.3.1" +jest-mock@^29.4.2: + version "29.4.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.4.2.tgz#e1054be66fb3e975d26d4528fcde6979e4759de8" + integrity sha512-x1FSd4Gvx2yIahdaIKoBjwji6XpboDunSJ95RpntGrYulI1ByuYQCKN/P7hvk09JB74IonU3IPLdkutEWYt++g== + dependencies: + "@jest/types" "^29.4.2" + "@types/node" "*" + jest-util "^29.4.2" + jest-pnp-resolver@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" @@ -8447,6 +8830,18 @@ jest-util@^29.3.1: graceful-fs "^4.2.9" picomatch "^2.2.3" +jest-util@^29.4.2: + version "29.4.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.4.2.tgz#3db8580b295df453a97de4a1b42dd2578dabd2c2" + integrity sha512-wKnm6XpJgzMUSRFB7YF48CuwdzuDIHenVuoIb1PLuJ6F+uErZsuDkU+EiExkChf6473XcawBrSfDSnXl+/YG4g== + dependencies: + "@jest/types" "^29.4.2" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + jest-validate@^29.3.1: version "29.3.1" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.3.1.tgz#d56fefaa2e7d1fde3ecdc973c7f7f8f25eea704a" @@ -8545,6 +8940,38 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" +jsdom@^20.0.0: + version "20.0.3" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-20.0.3.tgz#886a41ba1d4726f67a8858028c99489fed6ad4db" + integrity sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ== + dependencies: + abab "^2.0.6" + acorn "^8.8.1" + acorn-globals "^7.0.0" + cssom "^0.5.0" + cssstyle "^2.3.0" + data-urls "^3.0.2" + decimal.js "^10.4.2" + domexception "^4.0.0" + escodegen "^2.0.0" + form-data "^4.0.0" + html-encoding-sniffer "^3.0.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.1" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.2" + parse5 "^7.1.1" + saxes "^6.0.0" + symbol-tree "^3.2.4" + tough-cookie "^4.1.2" + w3c-xmlserializer "^4.0.0" + webidl-conversions "^7.0.0" + whatwg-encoding "^2.0.0" + whatwg-mimetype "^3.0.0" + whatwg-url "^11.0.0" + ws "^8.11.0" + xml-name-validator "^4.0.0" + jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" @@ -8977,11 +9404,21 @@ lodash.debounce@^4.0.8: resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== +lodash.escape@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" + integrity sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw== + lodash.flatten@^4.2.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== +lodash.flattendeep@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" + integrity sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ== + lodash.forown@^4.1.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.forown/-/lodash.forown-4.4.0.tgz#85115cf04f73ef966eced52511d3893cc46683af" @@ -9002,7 +9439,7 @@ lodash.includes@^4.1.2: resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== -lodash.isequal@^4.2.0: +lodash.isequal@^4.2.0, lodash.isequal@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ== @@ -9569,6 +10006,11 @@ modernizr@^3.12.0: requirejs "^2.3.6" yargs "^15.4.1" +moo@^0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.2.tgz#f9fe82473bc7c184b0d32e2215d3f6e67278733c" + integrity sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -9648,6 +10090,16 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== +nearley@^2.7.10: + version "2.20.1" + resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.20.1.tgz#246cd33eff0d012faf197ff6774d7ac78acdd474" + integrity sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ== + dependencies: + commander "^2.19.0" + moo "^0.5.0" + railroad-diagrams "^1.0.0" + randexp "0.4.6" + negotiator@0.6.3, negotiator@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" @@ -10014,6 +10466,11 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== +nwsapi@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" + integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== + object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -10028,12 +10485,12 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.12.2, object-inspect@^1.9.0: +object-inspect@^1.12.2, object-inspect@^1.7.0, object-inspect@^1.9.0: version "1.12.3" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== -object-is@^1.0.1, object-is@^1.1.5: +object-is@^1.0.1, object-is@^1.0.2, object-is@^1.1.2, object-is@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== @@ -10053,7 +10510,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4: +object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" integrity sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ== @@ -10063,7 +10520,7 @@ object.assign@^4.1.2, object.assign@^4.1.3, object.assign@^4.1.4: has-symbols "^1.0.3" object-keys "^1.1.1" -object.entries@^1.1.0, object.entries@^1.1.5, object.entries@^1.1.6: +object.entries@^1.1.0, object.entries@^1.1.1, object.entries@^1.1.2, object.entries@^1.1.5, object.entries@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz#9737d0e5b8291edd340a3e3264bb8a3b00d5fa23" integrity sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w== @@ -10072,7 +10529,7 @@ object.entries@^1.1.0, object.entries@^1.1.5, object.entries@^1.1.6: define-properties "^1.1.4" es-abstract "^1.20.4" -"object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.6: +"object.fromentries@^2.0.0 || ^1.0.0", object.fromentries@^2.0.5, object.fromentries@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz#cdb04da08c539cffa912dcd368b886e0904bfa73" integrity sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg== @@ -10106,7 +10563,7 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0, object.values@^1.1.6: +object.values@^1.1.0, object.values@^1.1.1, object.values@^1.1.5, object.values@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz#4abbaa71eba47d63589d402856f908243eea9b1d" integrity sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw== @@ -10417,11 +10874,26 @@ parse-json@^5.0.0, parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" +parse5-htmlparser2-tree-adapter@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz#23c2cc233bcf09bb7beba8b8a69d46b08c62c2f1" + integrity sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g== + dependencies: + domhandler "^5.0.2" + parse5 "^7.0.0" + parse5@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== +parse5@^7.0.0, parse5@^7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" + integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== + dependencies: + entities "^4.4.0" + parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -10524,6 +10996,11 @@ pbkdf2@^3.0.3: safe-buffer "^5.0.1" sha.js "^2.4.8" +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== + picocolors@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" @@ -10786,6 +11263,15 @@ pretty-format@^29.3.1: ansi-styles "^5.0.0" react-is "^18.0.0" +pretty-format@^29.4.2: + version "29.4.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.4.2.tgz#64bf5ccc0d718c03027d94ac957bdd32b3fb2401" + integrity sha512-qKlHR8yFVCbcEWba0H0TOC8dnLlO4vPlyEjRPw31FZ2Rupy9nLa8ZLbYny8gWEl8CkEhJqAE6IzdNELTBVcBEg== + dependencies: + "@jest/schemas" "^29.4.2" + ansi-styles "^5.0.0" + react-is "^18.0.0" + pretty-hrtime@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" @@ -10882,6 +11368,15 @@ promzard@^0.3.0: dependencies: read "1" +prop-types-exact@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/prop-types-exact/-/prop-types-exact-1.2.0.tgz#825d6be46094663848237e3925a98c6e944e9869" + integrity sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA== + dependencies: + has "^1.0.3" + object.assign "^4.1.0" + reflect.ownkeys "^0.2.0" + prop-types@^15.0.0, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" @@ -10911,6 +11406,11 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + public-encrypt@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" @@ -10958,7 +11458,7 @@ punycode@^1.2.4: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== -punycode@^2.1.0: +punycode@^2.1.0, punycode@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== @@ -10985,16 +11485,41 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +raf@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" + integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA== + dependencies: + performance-now "^2.1.0" + +railroad-diagrams@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e" + integrity sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A== + ramda@^0.28.0: version "0.28.0" resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.28.0.tgz#acd785690100337e8b063cab3470019be427cc97" integrity sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA== +randexp@0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3" + integrity sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ== + dependencies: + discontinuous-range "1.0.0" + ret "~0.1.10" + randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -11033,6 +11558,15 @@ raw-loader@^4.0.2: loader-utils "^2.0.0" schema-utils "^3.0.0" +"react-16@npm:react@^16.14.0": + version "16.14.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d" + integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + react-dnd-html5-backend@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/react-dnd-html5-backend/-/react-dnd-html5-backend-5.0.1.tgz#0b578d79c5c01317c70414c8d717f632b919d4f1" @@ -11076,6 +11610,16 @@ react-docgen@^5.0.0: node-dir "^0.1.10" strip-indent "^3.0.0" +"react-dom-16@npm:react-dom@^16.14.0": + version "16.14.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.14.0.tgz#7ad838ec29a777fb3c75c3a190f661cf92ab8b89" + integrity sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.2" + scheduler "^0.19.1" + react-dom@^18.2.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d" @@ -11107,7 +11651,7 @@ react-is@17.0.2: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -react-is@^16.13.1, react-is@^16.4.2, react-is@^16.7.0: +react-is@^16.13.1, react-is@^16.4.2, react-is@^16.7.0, react-is@^16.8.6: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -11172,6 +11716,16 @@ react-selectable@^2.1.1: resolved "https://registry.yarnpkg.com/react-selectable/-/react-selectable-2.1.1.tgz#21272e613929991e248570cc98a9266aa10eeecb" integrity sha512-5W7WrC+TCchIwE8wDQhV5F1iJXNZJN09RsIa7kgl8P8tcG7UOYSkK6M3Jundec90mB7iN+KOLeLivSRdf9WrxQ== +react-test-renderer@^16.0.0-0: + version "16.14.0" + resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.14.0.tgz#e98360087348e260c56d4fe2315e970480c228ae" + integrity sha512-L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg== + dependencies: + object-assign "^4.1.1" + prop-types "^15.6.2" + react-is "^16.8.6" + scheduler "^0.19.1" + react-transition-group@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-3.0.0.tgz#36efa4db970d5eec5e3028e0c458931163fa3b9b" @@ -11383,6 +11937,11 @@ redux@^4.0.0, redux@^4.2.0: dependencies: "@babel/runtime" "^7.9.2" +reflect.ownkeys@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz#749aceec7f3fdf8b63f927a04809e90c5c0b3460" + integrity sha512-qOLsBKHCpSOFKK1NUOCGC5VyeufB6lEsFe92AL2bhIJsacZS1qdoOZSbPk3MYKuT2cFlRDnulKXuuElIrMjGUg== + regenerate-unicode-properties@^10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c" @@ -11577,6 +12136,11 @@ requirejs@^2.3.6: resolved "https://registry.yarnpkg.com/requirejs/-/requirejs-2.3.6.tgz#e5093d9601c2829251258c0b9445d4d19fa9e7c9" integrity sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg== +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== + resolve-cwd@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" @@ -11695,6 +12259,14 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" +rst-selector-parser@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz#81b230ea2fcc6066c89e3472de794285d9b03d91" + integrity sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA== + dependencies: + lodash.flattendeep "^4.4.0" + nearley "^2.7.10" + run-async@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" @@ -11794,6 +12366,21 @@ sass@^1.55.0: immutable "^4.0.0" source-map-js ">=0.6.2 <2.0.0" +saxes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" + integrity sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA== + dependencies: + xmlchars "^2.2.0" + +scheduler@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" + integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + scheduler@^0.23.0: version "0.23.0" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe" @@ -11847,7 +12434,7 @@ schema-utils@^4.0.0: ajv-formats "^2.1.1" ajv-keywords "^5.0.0" -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -12365,6 +12952,15 @@ string.prototype.padstart@^3.0.0: define-properties "^1.1.4" es-abstract "^1.20.4" +string.prototype.trim@^1.2.1: + version "1.2.7" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533" + integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.4" + es-abstract "^1.20.4" + string.prototype.trimend@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533" @@ -12525,6 +13121,11 @@ symbol-observable@^4.0.0: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205" integrity sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ== +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + symbol.prototype.description@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/symbol.prototype.description/-/symbol.prototype.description-1.0.5.tgz#d30e01263b6020fbbd2d2884a6276ce4d49ab568" @@ -12749,6 +13350,23 @@ totalist@^1.0.0: resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== +tough-cookie@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" + integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + +tr46@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" + integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== + dependencies: + punycode "^2.1.1" + tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -13071,6 +13689,11 @@ universalify@^0.1.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -13130,6 +13753,14 @@ url-loader@^4.1.1: mime-types "^2.1.27" schema-utils "^3.0.0" +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -13266,6 +13897,13 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== +w3c-xmlserializer@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073" + integrity sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw== + dependencies: + xml-name-validator "^4.0.0" + walk-up-path@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/walk-up-path/-/walk-up-path-1.0.0.tgz#d4745e893dd5fd0dbb58dd0a4c6a33d9c9fec53e" @@ -13328,6 +13966,11 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== +webidl-conversions@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== + webpack-bundle-analyzer@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.7.0.tgz#33c1c485a7fcae8627c547b5c3328b46de733c66" @@ -13482,11 +14125,31 @@ webpack@4: watchpack "^2.4.0" webpack-sources "^3.2.3" +whatwg-encoding@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" + integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg== + dependencies: + iconv-lite "0.6.3" + whatwg-fetch@>=0.10.0: version "3.6.2" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== +whatwg-mimetype@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" + integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== + +whatwg-url@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" + integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== + dependencies: + tr46 "^3.0.0" + webidl-conversions "^7.0.0" + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -13626,7 +14289,7 @@ ws@^7.3.1: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== -ws@^8.2.3: +ws@^8.11.0, ws@^8.2.3: version "8.12.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.12.0.tgz#485074cc392689da78e1828a9ff23585e06cddd8" integrity sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig== @@ -13638,6 +14301,16 @@ x-default-browser@^0.4.0: optionalDependencies: default-browser-id "^1.0.4" +xml-name-validator@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" + integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"