UNPKG

@aurigma/ui-framework

Version:

A platform which allows building print product personalization editors based on Aurigma's Customer's Canvas.

1 lines 8.42 kB
(window.multistep_editor_jsonpFunction=window.multistep_editor_jsonpFunction||[]).push([[15],{911:function(e,t,r){r.r(t),r.d(t,"AuWidgetAssetStorageAjax",function(){return n}),r.d(t,"widget",function(){return n});var s,p=r(0),t=r(160),i=(r(201),r(2)),o=r(1),n=(s=t.a,Object(p.d)(c,s),c.prototype.requestPendingObserver=function(e){this.showPreloader(e)},c.prototype._doFetch=function(u){return Object(p.b)(this,void 0,void 0,function(){var r,t,s,i,n,o,c,a=this;return Object(p.e)(this,function(e){switch(e.label){case 0:return this._requestPending=!0,r=this.folder||"",[4,(t=this).getAssetStorageFolder()];case 1:if(t.apiResponse=e.sent(),!(this.apiResponse.entities&&0<this.apiResponse.entities.length))return[3,5];if(!this.entriesFilter)return[3,5];e.label=2;case 2:return e.trys.push([2,4,,5]),s=this.apiResponse,[4,this.filterAsync(this.apiResponse.entities,this.entriesFilter)];case 3:return s.entities=e.sent(),[3,5];case 4:return n=e.sent(),console.error(n),[3,5];case 5:if(!(this.apiResponse.folders&&0<this.apiResponse.folders.length))return[3,9];if(!this.folderFilter)return[3,9];e.label=6;case 6:return e.trys.push([6,8,,9]),i=this.apiResponse,[4,this.filterAsync(this.apiResponse.folders,this.folderFilter)];case 7:return i.folders=e.sent(),[3,9];case 8:return n=e.sent(),console.error(n),[3,9];case 9:return(this.response=this.apiResponse.entities.map(function(e){var t=r&&""!==r&&"/"!==r?r+"/"+e.name:e.name;return{id:e.id,name:e.name,path:t.replace(/([^:]\/)\/+/g,"$1"),previewUrl:"",customFields:e.customFields||{},metadata:e.metadata||{}}}),o=this.previewOptions)?(c=function(s,i){return Object(p.b)(a,void 0,void 0,function(){var t,r;return Object(p.e)(this,function(e){switch(e.label){case 0:return s&&s.previews&&0<Object.keys(s.previews).length?(t=Object.keys(s.previews).find(function(e){return s.previews[e].namespace===o.namespace&&s.previews[e].name===o.name}))?(this.response[i].previewUrl=s.previews[t].url,[3,4]):[3,1]:[3,5];case 1:return o.height&&0!==o.height&&o.width&&0!==o.width?[4,this.addPreview(o,s.id)]:[3,3];case 2:return r=e.sent(),this.response[i].previewUrl=""===r?s.previews[Object.keys(s.previews)[0]].url:r,[3,4];case 3:this.response[i].previewUrl=s.previews[Object.keys(s.previews)[0]].url,e.label=4;case 4:return[3,7];case 5:return[4,this.addPreview(o,s.id)];case 6:r=e.sent(),this.response[i].previewUrl=""===r?s.previews[Object.keys(s.previews)[0]].url:r,e.label=7;case 7:return[2]}})})},c=this.apiResponse.entities.map(c),[4,Promise.all(c)]):[3,11];case 10:e.sent(),e.label=11;case 11:return this.emitChange({apiResponse:this.apiResponse,response:this.response},!1),this._fetchTimer=null,u(this.response),this._requestPending=!1,[2]}})})},c.prototype.updateParams=function(e){var t;this.assetType=null!=(t=e.assetType)?t:null,this.folder=null!=(t=e.folder)?t:null,this.previewOptions=Object.assign({name:"uif",namespace:"storefront",width:200,height:200},null!=(t=e.previewOptions)?t:{}),this.folderFilter=e.folderFilter?o.a.functionWrapperConstructor(e.folderFilter):null,this.entriesFilter=e.entriesFilter?o.a.functionWrapperConstructor(e.entriesFilter):null},c.prototype.updateParamsAsync=function(t){return Object(p.b)(this,void 0,void 0,function(){return Object(p.e)(this,function(e){switch(e.label){case 0:return[4,s.prototype.updateParamsAsync.call(this,t)];case 1:return e.sent(),this._lockList=t.lock?t.lock instanceof Array?t.lock:[t.lock]:[],this._isLoaded||(this.getInitialParamsResolved(),this._isLoaded=!0),[2,this._doFetchDebounce()]}})})},c.prototype.exportWidgetData=function(e){return Object(p.b)(this,void 0,void 0,function(){return Object(p.e)(this,function(e){return[2,{apiResponse:this.apiResponse,response:this.response}]})})},c.prototype.restoreWidgetFromData=function(t,e){return Object(p.b)(this,void 0,void 0,function(){return Object(p.e)(this,function(e){return t&&(this.apiResponse=t.apiResponse,this.response=t.response,this.emitChange({apiResponse:this.apiResponse,response:this.response},!1)),[2]})})},c.prototype.showPreloader=function(t){var r=this;(this._lockList||[]).forEach(function(e){e="main"===e?r.auWizard:r.auWizard.scope.$[e]||r.jsonParamsFetcher.scope[e]||r.jsonParamsFetcher.scope.$[e];e&&e.showPreloader(t)})},c.prototype._doFetchDebounce=function(){var e=this,t=null,r=(this.requestPromise=new Promise(function(e){t=e}),new Promise(function(t){null!==e._fetchTimer&&(window.clearTimeout(e._fetchTimer),e._currentAbortController)&&e._currentAbortController.abort(),e._fetchTimer=window.setTimeout(function(){return Object(p.b)(e,void 0,void 0,function(){return Object(p.e)(this,function(e){switch(e.label){case 0:return[4,this._doFetch(t)];case 1:return e.sent(),[2]}})})},e._fetchDelay)}));return r.then(function(){setTimeout(function(){setTimeout(function(){setTimeout(function(){setTimeout(function(){setTimeout(function(){t()},100)},100)},100)},100)},100)}),r},c.prototype.addPreview=function(i,n){return Object(p.b)(this,void 0,void 0,function(){var t,r,s;return Object(p.e)(this,function(e){switch(e.label){case 0:return t=this.assetType.replace("private","private-"),s=o.a.ensureEndsWith(this.auWizard.driver.backOffice.assetProcessorUrl,"/"),r=this.auWizard.driver.backOffice.tenantId,s="".concat(s,"api/processor/v1/").concat(t,"/").concat(n)+"/preview/".concat(i.namespace,"/").concat(i.name,"/").concat(i.width,"x").concat(i.height,"?tenantId=").concat(r),[4,this.generatePreview(s)];case 1:return[2,e.sent()]}})})},c.prototype.generatePreview=function(r){return Object(p.b)(this,void 0,void 0,function(){var t;return Object(p.e)(this,function(e){switch(e.label){case 0:return[4,fetch(r,{method:"GET",headers:{authorization:"Bearer "+this.auWizard.driver.backOffice.token}})];case 1:return 200!==(t=e.sent()).status?[3,3]:[4,t.blob()];case 2:return t=e.sent(),[2,URL.createObjectURL(t)];case 3:return[2,""]}})})},c.prototype.getAssetStorageFolder=function(){return Object(p.b)(this,void 0,void 0,function(){var t,r,s,i,n;return Object(p.e)(this,function(e){switch(e.label){case 0:return t=this.assetType.replace("private","private-"),r=this.folder,i=o.a.ensureEndsWith(this.auWizard.driver.backOffice.assetStorageUrl,"/"),s=this.auWizard.driver.backOffice.tenantId,i=i+"api/storage/v1/".concat(t,"/folders?"),null!=r&&(i+="fullPath="+r),t.includes("private")&&(i+="&userId="+this.auWizard.driver.backOffice.userId),i+="&tenantId="+s,[4,fetch(i,{method:"GET",headers:{authorization:"Bearer "+this.auWizard.driver.backOffice.token,accept:"text/plain"}})];case 1:return 200<=(n=e.sent()).status&&n.status<=300?[4,n.json()]:[3,3];case 2:return[2,e.sent()];case 3:return console.error("Failed to execute ajax: status ".concat(n.status,": ").concat(n.statusText)),[2,{folders:[],entities:[]}]}})})},c.prototype.mapAsync=function(e,t){return Promise.all(e.map(t))},c.prototype.filterAsync=function(t,s){return Object(p.b)(this,void 0,void 0,function(){var r;return Object(p.e)(this,function(e){switch(e.label){case 0:return[4,this.mapAsync(t,s)];case 1:return r=e.sent(),[2,t.filter(function(e,t){return r[t]})]}})})},Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Object)],c.prototype,"apiResponse",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Array)],c.prototype,"response",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",String)],c.prototype,"assetType",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",String)],c.prototype,"folder",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Function)],c.prototype,"folderFilter",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Function)],c.prototype,"entriesFilter",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Object)],c.prototype,"previewOptions",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Promise)],c.prototype,"requestPromise",void 0),Object(p.c)([Object(i.c)(),Object(p.g)("design:type",Boolean)],c.prototype,"_requestPending",void 0),Object(p.c)([Object(i.b)("_requestPending"),Object(p.g)("design:type",Function),Object(p.g)("design:paramtypes",[Object]),Object(p.g)("design:returntype",void 0)],c.prototype,"requestPendingObserver",null),Object(p.c)([Object(i.a)("au-widget-asset-storage-ajax")],c));function c(){var e=null!==s&&s.apply(this,arguments)||this;return e._isRestoring=!1,e._isLoaded=!1,e.response=[],e.requestPromise=Promise.resolve(),e._requestPending=!1,e._lockList=[],e._fetchTimer=null,e._fetchDelay=50,e._currentAbortController=null,e}}}]);