UNPKG

gumga-controller-ng

Version:

Gumga Controller

1 lines 10.9 kB
!function(e){function t(a){if(r[a])return r[a].exports;var o=r[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,a){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:a})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=1)}([function(e,t,r){"use strict";function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(t,r,a){return r&&e(t.prototype,r),a&&e(t,a),t}}();t.QueryObject=function(){function e(t,r){a(this,e),this.service=t,this.controller=r,this.queryObject={start:this.service.start,pageSize:this.service.pageSize}}return o(e,[{key:"page",value:function(e){return e||(e=1),this._page=e,this.queryObject.start=(e-1)*this.queryObject.pageSize,this.controller.handlingStorage(this._page,this.queryObject.pageSize),this.controller.setPageInContainer(this._page),this.controller.page=e,this}},{key:"pageSize",value:function(e){return e||(e=10),this.queryObject.pageSize=e,this._page&&this.page(this._page),this.controller.handlingStorage(this._page,this.queryObject.pageSize),this}},{key:"aq",value:function(e){return e||console.error("Ao chamar o método um aq é obrigatório informar seu hql."),this.queryObject.aq=e,this}},{key:"q",value:function(e,t){return e||console.error("Ao chamar o método um q é obrigatório informar os atributos que serão utilizados na busca."),this.queryObject.searchFields=e,this.queryObject.q=t,this}},{key:"sort",value:function(e,t){return e||(e=this.controller.storage.get("field"),t=this.controller.storage.get("way")),t||(t="asc"),this.queryObject.sortField=(this.queryObject.sortField||"").concat(",").concat(e),","==this.queryObject.sortField.substring(0,1)&&(this.queryObject.sortField=this.queryObject.sortField.substring(1,this.queryObject.sortField.length)),this.queryObject.sortDir=(this.queryObject.sortDir||"").concat(",").concat(t),","==this.queryObject.sortDir.substring(0,1)&&(this.queryObject.sortDir=this.queryObject.sortDir.substring(1,this.queryObject.sortDir.length)),this}},{key:"gQuery",value:function(e){return this.queryObject.gQuery=e,this}},{key:"send",value:function(){var e=this;return this.service.sendQueryObject||console.error("Precisamos que você atualize a versão do componente gumga-rest-ng, acesse: https://github.com/GUMGA/gumga-rest-ng/releases"),this.service.sendQueryObject(this.queryObject).then(function(t){return e.controller.data=t.data.values,e.controller.pageSize=t.data.pageSize,e.controller.count=t.data.count,t})}}]),e}()},function(e,t,r){"use strict";var a=r(0);!function(){function e(e,t,r,o){var n=this;this.and=this,this.data=[],this.page=1,this.pageSize=10,this.count=0,this.records=[],this.pageModel=o,this.container=r,this.identifierOrConfiguration=t,this.storage={set:function(e,r){sessionStorage.setItem(t+"-"+e,r)},get:function(e){return sessionStorage.getItem(t+"-"+e)}},this.setPageInContainer=function(){if(!n.container[o]){var e=parseInt(n.storage.get("page")||n.page);n.container[o]=e}},this.handlingStorage=function(e,t,r,a,o){return e||(e=parseInt(n.storage.get("page")||n.page)),t||(t=parseInt(n.storage.get("pageSize")||n.pageSize)),r||(r=n.storage.get("field")),a||(a=n.storage.get("way")),o||(o=""),n.storage.set("page",e||n.page),n.storage.set("pageSize",t||n.pageSize),n.storage.set("field",r),n.storage.set("way",a),n.storage.set("param",o),{page:e,pageSize:t,field:r,way:a,param:o}},this.methods={getLatestOperation:function(){n.setPageInContainer();var e=n.storage.get("last-operation");switch(e||n.methods.get(n.storage.get("page"),n.storage.get("pageSize")),e){case"get":n.methods.get(n.storage.get("page"),n.storage.get("pageSize"));break;case"sort":n.methods.sort(n.storage.get("field"),n.storage.get("way"),n.storage.get("pageSize"));break;case"search":n.methods.search(n.storage.get("field"),n.storage.get("param"),n.storage.get("pageSize"),n.storage.get("page"));break;case"asyncSearch":n.methods.asyncSearch(n.storage.get("field"),n.storage.get("param"));break;case"advancedSearch":n.methods.advancedSearch(JSON.parse(n.storage.get("param")),n.storage.get("pageSize"),n.storage.get("page"));break;default:n.methods.get(n.storage.get("page"),n.storage.get("pageSize"))}},getRecords:function(){return n.records},asyncSearch:function(t,r){n.handlingStorage(void 0,void 0,t,void 0,r);return n.storage.set("last-operation","asyncSearch"),e.getSearch(t,r).then(function(e){return n.storage.set("pageSize",e.data.pageSize),e.data.values})},asyncPost:function(t,r){return n.emit("asyncPostStart"),e.save(t)},get:function(t,r){r||(r=n.pageSize),t||(t=n.page);n.handlingStorage(t,r);return n.storage.set("last-operation","get"),n.emit("getStart"),e.get(t,r).then(function(e){n.emit("getSuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count,n.storage.set("pageSize",e.data.pageSize),n.data.map(function(e){return n.records.push(e.id)})},function(e){n.emit("getError",e)}),n},getId:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return n.emit("getIdStart"),e.getById(t).then(function(e){n.emit("getIdSuccess",e.data),n.data=e.data,n.pageSize&&delete n.pageSize,n.count&&delete n.count},function(e){n.emit("getIdError",e)}),n},getNew:function(){return n.emit("getNewStart"),e.getNew().then(function(e){n.emit("getNewSuccess",e.data),n.data=e.data,n.pageSize&&delete n.pageSize,n.count&&delete n.count},function(e){n.emit("getNewError",e)}),n},put:function(t){return n.emit("putStart"),e.update(t).then(function(e){n.emit("putSuccess",e)},function(e){n.emit("putError",e)}),n},post:function(t){return n.emit("postStart"),e.save(t).then(function(e){n.emit("postSuccess",e)},function(e){n.emit("postError",e)}),n},delete:function(t){return n.emit("deleteStart"),e.deleteCollection(t).then(function(e){n.emit("deleteSuccess",e)},function(e){n.emit("deleteError",e)}),n},sort:function(t,r,a){a||(a=n.pageSize);var o=n.handlingStorage(void 0,a,t,r),i=o.page;return n.storage.set("last-operation","sort"),n.emit("sortStart"),e.sort(t,r,a,i).then(function(e){n.emit("sortSuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count,n.storage.set("pageSize",e.data.pageSize)},function(e){n.emit("sortError",e)}),n},search:function(t,r,a,o){a||(a=n.pageSize),o||(o=n.page);n.handlingStorage(o,a,t,void 0,r);return n.storage.set("last-operation","search"),n.emit("searchStart"),e.getSearch(t,r,a,o).then(function(e){n.emit("searchSuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count,n.storage.set("pageSize",e.data.pageSize)},function(e){n.emit("searchError",e)}),n},advancedSearch:function(t,r,a){r||(r=n.pageSize),a||(a=n.page);n.handlingStorage(a,r,void 0,void 0,JSON.stringify(t));return n.storage.set("last-operation","advancedSearch"),n.emit("advancedSearchStart"),e.getAdvancedSearch(t,r,a).then(function(e){n.emit("advancedSearchSuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count,n.storage.set("pageSize",e.data.pageSize)},function(e){n.emit("advancedSearchError",e)}),n},searchWithGQuery:function(t,r,a){return a||(a=n.pageSize),r||(r=n.page),n.lastGQuery=t,n.emit("searchWithGQueryStart"),e.searchWithGQuery(t,r,a).then(function(e){n.emit("searchWithGQuerySuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count},function(e){n.emit("searchWithGQueryError",e)}),n},redoSearch:function(){return n.emit("redoSearchStart"),e.redoSearch().then(function(e){n.emit("redoSearchSuccess",e.data),n.data=e.data.values,n.pageSize=e.data.pageSize,n.count=e.data.count},function(e){n.emit("redoSearchError",e)}),n},postQuery:function(t,r){return n.emit("postQueryStart"),e.saveQuery({query:t,name:r}).then(function(e){n.emit("postQuerySuccess")},function(e){n.emit("postQueryError",e)}),n},getQuery:function(t){return t||(t=n.page),n.emit("getQueryStart"),e.getQuery(t).then(function(e){return n.emit("getQuerySuccess",e.data),e.data.values},function(e){n.emit("getQueryError",e)})},postImage:function(t,r){return n.emit("postImageStart"),e.saveImage(t,r).then(function(e){return n.emit("postImageSuccess"),e},function(e){n.emit("postImageError",e)})},deleteImage:function(t,r){return n.emit("deleteImageStart"),e.deleteImage(t,r).then(function(e){n.emit("deleteImageSuccess")},function(e){n.emit("deleteImageError",e)}),n},reset:function(){return n.emit("resetStart"),e.resetDefaultState(),n},getAvailableTags:function(){return n.emit("getAvailableTagsStart"),e.getAvailableTags()},getSelectedTags:function(t){return n.emit("getSelectedTagsStart"),e.getSelectedTags(t)},postTags:function(t,r){n.emit("postTagStart",r),e.postTags(t,r).then(function(e){n.emit("postTagSuccess",r)},function(e){n.emit("postTagError",r)})},getDocumentationURL:function(){return n.emit("getDocumentationURLStart"),e.getDocumentationURL()},createQuery:function(){return new a.QueryObject(e,n)}}}function t(){function t(t,r,a){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"page",n=a.constructor;if(!t)throw"É necessário passar um objeto no primeiro parâmetro";if(!r)throw"É necessário passar um objeto no segundo parâmetro";if(n!==Object&&n!==String)throw"É necessário passar um objeto ou uma string no terceiro parâmetro";var i=this._createOptions(a);if(i.noScope)return new e(r,a,t,o);t[i.identifier]=new e(r,a,t,o)}function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(e.constructor===String)return{identifier:e,noScope:!1};var t=angular.extend({},e);if(t.noScope=!!t.noScope,!t.identifier)throw"Você precisa passar um identificador para o objeto de configuração do createRestMethods!";return t}return{createRestMethods:t,_createOptions:r}}e.prototype.callbacks={},e.prototype.and=this,e.prototype.emit=function(e,t){return this.callbacks[e]&&this.callbacks[e].forEach(function(e){e(t)}),this},e.prototype.on=function(e,t){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t),this},e.prototype.execute=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(e.constructor!==String)throw"O primeiro parâmetro deve ser uma string!";if(this.methods[e]){for(var t,r=arguments.length,a=Array(r>1?r-1:0),o=1;o<r;o++)a[o-1]=arguments[o];return(t=this.methods)[e].apply(t,a),this}throw"O nome do método está errado! Por favor coloque um método que está no GumgaController"},t.$inject=[],angular.module("gumga.controller",[]).factory("gumgaController",t)}()}]);