restangular-shlatchz
Version:
Restful Resources service for AngularJS apps
7 lines • 21.3 kB
JavaScript
/**
* Restful Resources service for AngularJS apps
* @version v1.6.4 - 2020-11-03 * @link https://github.com/ronyf/restangular
* @author Martin Gontovnikas <martin@gon.to>
* @license MIT License, http://www.opensource.org/licenses/MIT
*/
!function(e,t){"function"==typeof define&&define.amd?define(["lodash","angular"],t):"object"==typeof module&&module.exports?module.exports=t(require("lodash"),require("angular")):t(e._,e.angular)}(this,function(G,M){var e=M.module("restangular",[]);return e.provider("Restangular",function(){var B={};B.init=function(i,g){i.configuration=g;var t=["get","head","options","trace","getlist"];g.isSafe=function(e){return G.includes(t,e.toLowerCase())};var r=/^https?:\/\//i;g.isAbsoluteUrl=function(e){return G.isUndefined(g.absoluteUrl)||G.isNull(g.absoluteUrl)?e&&r.test(e):g.absoluteUrl},g.isPrimitive=function(e){return"object"==typeof e?null===e:"function"!=typeof e},g.absoluteUrl=!!G.isUndefined(g.absoluteUrl)||g.absoluteUrl,i.setSelfLinkAbsoluteUrl=function(e){g.absoluteUrl=e},g.baseUrl=G.isUndefined(g.baseUrl)?"":g.baseUrl,i.setBaseUrl=function(e){return g.baseUrl=/\/$/.test(e)?e.substring(0,e.length-1):e,this},g.extraFields=g.extraFields||[],i.setExtraFields=function(e){return g.extraFields=e,this},g.defaultHttpFields=g.defaultHttpFields||{},i.setDefaultHttpFields=function(e){return g.defaultHttpFields=e,this},g.plainByDefault=g.plainByDefault||!1,i.setPlainByDefault=function(e){return g.plainByDefault=!0===e,this},g.withHttpValues=function(e,t){return G.defaults(t,e,g.defaultHttpFields)},g.encodeIds=!!G.isUndefined(g.encodeIds)||g.encodeIds,i.setEncodeIds=function(e){g.encodeIds=e},g.defaultRequestParams=g.defaultRequestParams||{get:{},post:{},put:{},remove:{},common:{}},i.setDefaultRequestParams=function(e,t){var r=[],n=t||e;return G.isUndefined(t)?r.push("common"):G.isArray(e)?r=e:r.push(e),G.each(r,function(e){g.defaultRequestParams[e]=n}),this},i.requestParams=g.defaultRequestParams,g.defaultHeaders=g.defaultHeaders||{},i.setDefaultHeaders=function(e){return g.defaultHeaders=e,i.defaultHeaders=g.defaultHeaders,this},i.defaultHeaders=g.defaultHeaders,g.methodOverriders=g.methodOverriders||[],i.setMethodOverriders=function(e){e=G.extend([],e);return g.isOverridenMethod("delete",e)&&e.push("remove"),g.methodOverriders=e,this},g.jsonp=!G.isUndefined(g.jsonp)&&g.jsonp,i.setJsonp=function(e){g.jsonp=e},g.isOverridenMethod=function(t,e){e=e||g.methodOverriders;return!G.isUndefined(G.find(e,function(e){return e.toLowerCase()===t.toLowerCase()}))},g.urlCreator=g.urlCreator||"path",i.setUrlCreator=function(e){if(!G.has(g.urlCreatorFactory,e))throw new Error("URL Path selected isn't valid");return g.urlCreator=e,this},g.restangularFields=g.restangularFields||{id:"id",route:"route",parentResource:"parentResource",restangularCollection:"restangularCollection",cannonicalId:"__cannonicalId",etag:"restangularEtag",selfLink:"href",get:"get",getList:"getList",put:"put",post:"post",remove:"remove",head:"head",trace:"trace",options:"options",patch:"patch",getRestangularUrl:"getRestangularUrl",getRequestedUrl:"getRequestedUrl",putElement:"putElement",addRestangularMethod:"addRestangularMethod",getParentList:"getParentList",clone:"clone",ids:"ids",httpConfig:"_$httpConfig",reqParams:"reqParams",one:"one",all:"all",several:"several",oneUrl:"oneUrl",allUrl:"allUrl",customPUT:"customPUT",customPATCH:"customPATCH",customPOST:"customPOST",customDELETE:"customDELETE",customGET:"customGET",customGETLIST:"customGETLIST",customOperation:"customOperation",doPUT:"doPUT",doPATCH:"doPATCH",doPOST:"doPOST",doDELETE:"doDELETE",doGET:"doGET",doGETLIST:"doGETLIST",fromServer:"fromServer",withConfig:"withConfig",withHttpConfig:"withHttpConfig",singleOne:"singleOne",plain:"plain",save:"save",restangularized:"restangularized"},i.setRestangularFields=function(e){return g.restangularFields=G.extend(g.restangularFields,e),this},g.isRestangularized=function(e){return!!e[g.restangularFields.restangularized]},g.setFieldToElem=function(e,t,r){var e=e.split("."),n=t;return G.each(G.initial(e),function(e){n[e]={},n=n[e]}),n[G.last(e)]=r,this},g.getFieldFromElem=function(e,t){var e=e.split("."),r=t;return G.each(e,function(e){r=r&&r[e]}),M.copy(r)},g.setIdToElem=function(e,t){return g.setFieldToElem(g.restangularFields.id,e,t),this},g.getIdFromElem=function(e){return g.getFieldFromElem(g.restangularFields.id,e)},g.isValidId=function(e){return""!==e&&!G.isUndefined(e)&&!G.isNull(e)},g.setUrlToElem=function(e,t){return g.setFieldToElem(g.restangularFields.selfLink,e,t),this},g.getUrlFromElem=function(e){return g.getFieldFromElem(g.restangularFields.selfLink,e)},g.useCannonicalId=!G.isUndefined(g.useCannonicalId)&&g.useCannonicalId,i.setUseCannonicalId=function(e){return g.useCannonicalId=e,this},g.getCannonicalIdFromElem=function(e){var t=e[g.restangularFields.cannonicalId];return g.isValidId(t)?t:g.getIdFromElem(e)},g.responseInterceptors=g.responseInterceptors||[],g.defaultResponseInterceptor=function(e){return e},g.responseExtractor=function(e,t,r,n,s,a){var i=M.copy(g.responseInterceptors);i.push(g.defaultResponseInterceptor);var o=e;return G.each(i,function(e){o=e(o,t,r,n,s,a)}),o},i.addResponseInterceptor=function(e){return g.responseInterceptors.push(e),this},g.errorInterceptors=g.errorInterceptors||[],i.addErrorInterceptor=function(e){return g.errorInterceptors.push(e),this},i.setResponseInterceptor=i.addResponseInterceptor,i.setResponseExtractor=i.addResponseInterceptor,i.setErrorInterceptor=i.addErrorInterceptor,g.requestInterceptors=g.requestInterceptors||[],g.defaultInterceptor=function(e,t,r,n,s,a,i){return{element:e,headers:s,params:a,httpConfig:i}},g.fullRequestInterceptor=function(e,r,n,s,t,a,i){var o=M.copy(g.requestInterceptors),i=g.defaultInterceptor(e,r,n,s,t,a,i);return G.reduce(o,function(e,t){return G.extend(e,t(e.element,r,n,s,e.headers,e.params,e.httpConfig))},i)},i.addRequestInterceptor=function(o){return g.requestInterceptors.push(function(e,t,r,n,s,a,i){return{headers:s,params:a,element:o(e,t,r,n),httpConfig:i}}),this},i.setRequestInterceptor=i.addRequestInterceptor,i.addFullRequestInterceptor=function(e){return g.requestInterceptors.push(e),this},i.setFullRequestInterceptor=i.addFullRequestInterceptor,g.onBeforeElemRestangularized=g.onBeforeElemRestangularized||function(e){return e},i.setOnBeforeElemRestangularized=function(e){return g.onBeforeElemRestangularized=e,this},i.setRestangularizePromiseInterceptor=function(e){return g.restangularizePromiseInterceptor=e,this},g.onElemRestangularized=g.onElemRestangularized||function(e){return e},i.setOnElemRestangularized=function(e){return g.onElemRestangularized=e,this},g.shouldSaveParent=g.shouldSaveParent||function(){return!0},i.setParentless=function(t){return G.isArray(t)?g.shouldSaveParent=function(e){return!G.includes(t,e)}:G.isBoolean(t)&&(g.shouldSaveParent=function(){return!t}),this},g.suffix=G.isUndefined(g.suffix)?null:g.suffix,i.setRequestSuffix=function(e){return g.suffix=e,this},g.transformers=g.transformers||{},g.matchTransformers=g.matchTransformers||[],i.addElementTransformer=function(e,t,r){var n=null,s=null;2===arguments.length?s=t:(s=r,n=t);function a(e,t){return G.isNull(n)||e===n?s(t):t}return G.isRegExp(e)?g.matchTransformers.push({regexp:e,transformer:a}):(g.transformers[e]||(g.transformers[e]=[]),g.transformers[e].push(a)),i},i.extendCollection=function(e,t){return i.addElementTransformer(e,!0,t)},i.extendModel=function(e,t){return i.addElementTransformer(e,!1,t)},g.transformElem=function(e,t,r,n,s){if(!s&&!g.transformLocalElements&&!e[g.restangularFields.fromServer])return e;var a=e,e=g.matchTransformers;e&&G.each(e,function(e){e.regexp.test(r)&&(a=e.transformer(t,a))});e=g.transformers[r];return e&&G.each(e,function(e){a=e(t,a)}),g.onElemRestangularized(a,t,r,n)},g.transformLocalElements=!G.isUndefined(g.transformLocalElements)&&g.transformLocalElements,i.setTransformOnlyServerElements=function(e){g.transformLocalElements=!e},g.fullResponse=!G.isUndefined(g.fullResponse)&&g.fullResponse,i.setFullResponse=function(e){return g.fullResponse=e,this},g.urlCreatorFactory={};function e(){}e.prototype.setConfig=function(e){return this.config=e,this},e.prototype.parentsArray=function(e){for(var t=[];e;)t.push(e),e=e[this.config.restangularFields.parentResource];return t.reverse()},e.prototype.resource=function(e,t,r,n,s,a,i,o){s=G.defaults(s||{},this.config.defaultRequestParams.common),n=G.defaults(n||{},this.config.defaultHeaders);i&&(g.isSafe(o)?n["If-None-Match"]=i:n["If-Match"]=i);var l,u,d,c,f,o=this.base(e);return!a&&0!==a||(i="",/\/$/.test(o)||(i+="/"),o+=i+=a),this.config.suffix&&-1===o.indexOf(this.config.suffix,o.length-this.config.suffix.length)&&!this.config.getUrlFromElem(e)&&(o+=this.config.suffix),e[this.config.restangularFields.httpConfig]=void 0,l=this.config,u=t,d=o,c={getList:this.config.withHttpValues(r,{method:"GET",params:s,headers:n}),get:this.config.withHttpValues(r,{method:"GET",params:s,headers:n}),jsonp:this.config.withHttpValues(r,{method:"jsonp",params:s,headers:n}),put:this.config.withHttpValues(r,{method:"PUT",params:s,headers:n}),post:this.config.withHttpValues(r,{method:"POST",params:s,headers:n}),remove:this.config.withHttpValues(r,{method:"DELETE",params:s,headers:n}),head:this.config.withHttpValues(r,{method:"HEAD",params:s,headers:n}),trace:this.config.withHttpValues(r,{method:"TRACE",params:s,headers:n}),options:this.config.withHttpValues(r,{method:"OPTIONS",params:s,headers:n}),patch:this.config.withHttpValues(r,{method:"PATCH",params:s,headers:n})},f={},G.each(G.keys(c),function(e){var t=c[e];t.params=G.extend({},t.params,l.defaultRequestParams[t.method.toLowerCase()]),G.isEmpty(t.params)&&delete t.params,l.isSafe(t.method)?f[e]=function(){return u(G.extend(t,{url:d}))}:f[e]=function(e){return u(G.extend(t,{url:d,data:e}))}}),f};function n(){}(n.prototype=new e).normalizeUrl=function(e){e=/((?:http[s]?:)?\/\/)?(.*)?/.exec(e);return e[2]=e[2].replace(/[\\\/]+/g,"/"),void 0!==e[1]?e[1]+e[2]:e[2]},n.prototype.base=function(e){var a=this;return G.reduce(this.parentsArray(e),function(e,t){var r=a.config.getUrlFromElem(t);if(r){if(a.config.isAbsoluteUrl(r))return r;s=r}else{var n,s=t[a.config.restangularFields.route];t[a.config.restangularFields.restangularCollection]?(n=t[a.config.restangularFields.ids])&&(s+="/"+n.join(",")):(n=a.config.useCannonicalId?a.config.getCannonicalIdFromElem(t):a.config.getIdFromElem(t),g.isValidId(n)&&!t.singleOne&&(s+="/"+(a.config.encodeIds?encodeURIComponent(n):n)))}return e=e.replace(/\/$/,"")+"/"+s,a.normalizeUrl(e)},this.config.baseUrl)},n.prototype.fetchUrl=function(e,t){e=this.base(e);return t&&(e+="/"+t),e},n.prototype.fetchRequestedUrl=function(e,t){t=this.fetchUrl(e,t),e=e[g.restangularFields.reqParams];function r(e,t){return encodeURIComponent(e).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,t?"%20":"+")}if(!e)return t+(this.config.suffix||"");var n=[];return function(e,t,r){for(var n=function(e){var t,r=[];for(t in e)e.hasOwnProperty(t)&&r.push(t);return r.sort()}(e),s=0;s<n.length;s++)t.call(r,e[n[s]],n[s])}(e,function(e,t){null!=e&&(M.isArray(e)||(e=[e]),M.forEach(e,function(e){M.isObject(e)&&(e=M.toJson(e)),n.push(r(t)+"="+r(e))}))}),t+(this.config.suffix||"")+(-1===t.indexOf("?")?"?":"&")+n.join("&")},g.urlCreatorFactory.path=n};var e={};B.init(this,e),this.$get=["$http","$q",function(D,V){return function r(p){var h={},m=new p.urlCreatorFactory[p.urlCreator];function i(e,t,r,n,s){return p.isPrimitive(t)||(t[p.restangularFields.route]=r,t[p.restangularFields.getRestangularUrl]=G.bind(m.fetchUrl,m,t),t[p.restangularFields.getRequestedUrl]=G.bind(m.fetchRequestedUrl,m,t),t[p.restangularFields.addRestangularMethod]=G.bind(A,t),t[p.restangularFields.clone]=G.bind(g,t,t),t[p.restangularFields.reqParams]=G.isEmpty(n)?null:n,t[p.restangularFields.withHttpConfig]=G.bind(T,t),t[p.restangularFields.plain]=G.bind(E,t,t),t[p.restangularFields.restangularized]=!0,t[p.restangularFields.one]=G.bind(o,t,t),t[p.restangularFields.all]=G.bind(l,t,t),t[p.restangularFields.several]=G.bind(u,t,t),t[p.restangularFields.oneUrl]=G.bind(d,t,t),t[p.restangularFields.allUrl]=G.bind(c,t,t),t[p.restangularFields.fromServer]=!!s,e&&p.shouldSaveParent(r)?(a=p.getIdFromElem(e),n=p.getUrlFromElem(e),s=G.union(G.values(G.pick(p.restangularFields,["route","singleOne","parentResource"])),p.extraFields),s=G.pick(e,s),p.isValidId(a)&&p.setIdToElem(s,a,r),p.isValidId(n)&&p.setUrlToElem(s,n,r),t[p.restangularFields.parentResource]=s):t[p.restangularFields.parentResource]=null),t;var a}function o(e,t,r,n){if(G.isNumber(t)||G.isNumber(e))throw s="You're creating a Restangular entity with the number ",s+="instead of the route or the parent. For example, you can't call .one(12).",new Error(s);if(G.isUndefined(t))throw s="You're creating a Restangular entity either without the path. ",s+="For example you can't call .one(). Please check if your arguments are valid.",new Error(s);var s={};return p.setIdToElem(s,r,t),p.setFieldToElem(p.restangularFields.singleOne,s,n),b(e,s,t,!1)}function l(e,t){return R(e,[],t,!1)}function u(e,t){var r=[];return r[p.restangularFields.ids]=Array.prototype.splice.call(arguments,2),R(e,r,t,!1)}function d(e,t,r){if(!t)throw new Error("Route is mandatory when creating new Restangular objects.");var n={};return p.setUrlToElem(n,r,t),b(e,n,t,!1)}function c(e,t,r){if(!t)throw new Error("Route is mandatory when creating new Restangular objects.");var n={};return p.setUrlToElem(n,r,t),R(e,n,t,!1)}function F(e,t,r){return e.call=G.bind(n,e),e.get=G.bind(s,e),(e[p.restangularFields.restangularCollection]=t)&&(e.push=G.bind(n,e,"push")),e.$object=r,p.restangularizePromiseInterceptor&&p.restangularizePromiseInterceptor(e),e}function n(r){var n=V.defer(),s=arguments,a={};return this.then(function(e){var t=Array.prototype.slice.call(s,1);e[r].apply(e,t),a=e,n.resolve(e)}),F(n.promise,this[p.restangularFields.restangularCollection],a)}function s(t){var r=V.defer(),n={};return this.then(function(e){n=e[t],r.resolve(n)}),F(r.promise,this[p.restangularFields.restangularCollection],n)}function v(e,t,r,n){if(G.extend(n,r),p.fullResponse)return e.resolve(G.extend(t,{data:r}));e.resolve(r)}function E(e){if(G.isArray(e)){var t=[];return G.each(e,function(e){t.push(p.isRestangularized(e)?E(e):e)}),t}return G.omit(e,G.values(G.omit(p.restangularFields,"id")))}function f(s){s[p.restangularFields.customOperation]=G.bind(j,s);var t={get:j,delete:j};G.each(["put","patch","post"],function(e){t[e]=function(e,t,r,n,s){return G.bind(j,this)(e,r,n,s,t)}}),G.each(t,function(t,r){var n="delete"===r?"remove":r;G.each(["do","custom"],function(e){s[p.restangularFields[e+r.toUpperCase()]]=G.bind(t,s,n)})}),s[p.restangularFields.customGETLIST]=G.bind(C,s),s[p.restangularFields.doGETLIST]=s[p.restangularFields.customGETLIST]}function g(e){var t=M.copy(e);return G.isArray(e)?R(e[p.restangularFields.parentResource],t,e[p.restangularFields.route],e[p.restangularFields.fromServer],e[p.restangularFields.reqParams]):b(e[p.restangularFields.parentResource],t,e[p.restangularFields.route],e[p.restangularFields.fromServer],e[p.restangularFields.restangularCollection],e[p.restangularFields.reqParams])}function b(e,t,r,n,s,a){return n=i(e,p.onBeforeElemRestangularized(t,!1,r),r,a,n),p.isPrimitive(n)||(p.useCannonicalId&&(n[p.restangularFields.cannonicalId]=p.getIdFromElem(n)),s&&(n[p.restangularFields.getParentList]=function(){return s}),n[p.restangularFields.restangularCollection]=!1,n[p.restangularFields.get]=G.bind(w,n),n[p.restangularFields.getList]=G.bind(C,n),n[p.restangularFields.put]=G.bind(L,n),n[p.restangularFields.post]=G.bind(H,n),n[p.restangularFields.remove]=G.bind(x,n),n[p.restangularFields.head]=G.bind(q,n),n[p.restangularFields.trace]=G.bind(O,n),n[p.restangularFields.options]=G.bind(S,n),n[p.restangularFields.patch]=G.bind(z,n),n[p.restangularFields.save]=G.bind(y,n),f(n)),p.transformElem(n,!1,r,h,!0)}function R(e,t,r,n,s){return(n=i(e,p.onBeforeElemRestangularized(t,!0,r),r,s,n))[p.restangularFields.restangularCollection]=!0,n[p.restangularFields.post]=G.bind(H,n,null),n[p.restangularFields.remove]=G.bind(x,n),n[p.restangularFields.head]=G.bind(q,n),n[p.restangularFields.trace]=G.bind(O,n),n[p.restangularFields.putElement]=G.bind(I,n),n[p.restangularFields.options]=G.bind(S,n),n[p.restangularFields.patch]=G.bind(z,n),n[p.restangularFields.get]=G.bind(a,n),n[p.restangularFields.getList]=G.bind(C,n,null),f(n),p.transformElem(n,!0,r,h,!0)}function a(e,t,r){return this.customGET(e.toString(),t,r)}function I(r,e,t){var n=this,s=this[r],a=V.defer(),i=[],i=p.transformElem(i,!0,s[p.restangularFields.route],h);return s.put(e,t).then(function(e){var t=g(n);t[r]=e,i=t,a.resolve(t)},function(e){a.reject(e)}),F(a.promise,!0,i)}function U(e,t,r,n,s,a){return a=p.responseExtractor(e,t,r,n,s,a),s=s.headers("ETag"),a&&s&&!p.isPrimitive(a)&&(a[p.restangularFields.etag]=s),a}function C(s,e,t){var a=this,i=V.defer(),o="getList",l=m.fetchUrl(this,s),u=s||a[p.restangularFields.route],t=p.fullRequestInterceptor(null,o,u,l,t||{},e||{},this[p.restangularFields.httpConfig]||{}),d=[],d=p.transformElem(d,!0,u,h),e="getList";function r(e){var t=e.data,r=e.config.params,n=U(t,o,u,l,e,i);if(!G.isUndefined(n)&&""!==n||(n=[]),!G.isArray(n))throw new Error("Response for getList SHOULD be an array and not an object or something else");if(!0===p.plainByDefault)return v(i,e,n,d);t=G.map(n,function(e){return a[p.restangularFields.restangularCollection]?b(a[p.restangularFields.parentResource],e,a[p.restangularFields.route],!0,n):b(a,e,s,!0,n)}),t=G.extend(n,t),a[p.restangularFields.restangularCollection]?v(i,e,R(a[p.restangularFields.parentResource],t,a[p.restangularFields.route],!0,r),d):v(i,e,R(a,t,s,!0,r),d)}return p.jsonp&&(e="jsonp"),m.resource(this,D,t.httpConfig,t.headers,t.params,s,this[p.restangularFields.etag],o)[e]().then(r,function(t){304===t.status&&a[p.restangularFields.restangularCollection]?v(i,t,a,d):G.every(p.errorInterceptors,function(e){return!1!==e(t,i,r)})&&i.reject(t)}),F(i.promise,!0,d)}function T(e){return this[p.restangularFields.httpConfig]=e,this}function y(e,t){return this[p.restangularFields.fromServer]?this[p.restangularFields.put](e,t):G.bind(P,this)("post",void 0,e,void 0,t)}function P(s,e,t,r,n){var a=this,i=V.defer(),o=t||{},l=e||this[p.restangularFields.route],u=m.fetchUrl(this,e),d=r||this,c=d[p.restangularFields.etag]||("post"!==s?this[p.restangularFields.etag]:null);function f(e){var t,r=e.data,n=e.config.params;if(null!=(r=U(r,s,l,u,e,i))&&""!==r){if(!0===p.plainByDefault)return v(i,e,r,g);"post"!==s||a[p.restangularFields.restangularCollection]?(t=b(a[p.restangularFields.parentResource],r,a[p.restangularFields.route],!0,null,n),p.isPrimitive(r)||(t[p.restangularFields.singleOne]=a[p.restangularFields.singleOne])):t=b(a[p.restangularFields.parentResource],r,l,!0,null,n),v(i,e,t,g)}else v(i,e,void 0,g)}G.isObject(d)&&p.isRestangularized(d)&&(d=E(d));var t=p.fullRequestInterceptor(d,s,l,u,n||{},o||{},this[p.restangularFields.httpConfig]||{}),g={},g=p.transformElem(g,!1,l,h),r=function(t){304===t.status&&p.isSafe(s)?v(i,t,a,g):G.every(p.errorInterceptors,function(e){return!1!==e(t,i,f)})&&i.reject(t)},d=s,n=G.extend({},t.headers),o=p.isOverridenMethod(s);return o?(d="post",n=G.extend(n,{"X-HTTP-Method-Override":"remove"===s?"DELETE":s.toUpperCase()})):p.jsonp&&"get"===d&&(d="jsonp"),(p.isSafe(s)?o?m.resource(this,D,t.httpConfig,n,t.params,e,c,d)[d]({}):m.resource(this,D,t.httpConfig,n,t.params,e,c,d)[d]():m.resource(this,D,t.httpConfig,n,t.params,e,c,d)[d](t.element)).then(f,r),F(i.promise,!1,g)}function w(e,t){return G.bind(P,this)("get",void 0,e,void 0,t)}function x(e,t){return G.bind(P,this)("remove",void 0,e,void 0,t)}function L(e,t){return G.bind(P,this)("put",void 0,e,void 0,t)}function H(e,t,r,n){return G.bind(P,this)("post",e,r,t,n)}function q(e,t){return G.bind(P,this)("head",void 0,e,void 0,t)}function O(e,t){return G.bind(P,this)("trace",void 0,e,void 0,t)}function S(e,t){return G.bind(P,this)("options",void 0,e,void 0,t)}function z(e,t,r){return G.bind(P,this)("patch",void 0,t,e,r)}function j(e,t,r,n,s){return G.bind(P,this)(e,t,r,s,n)}function A(e,t,r,n,s,a){function i(e,t,r){return r=G.defaults({params:e,headers:t,elem:r},{params:n,headers:s,elem:a}),o(r.params,r.headers,r.elem)}var o="getList"===t?G.bind(C,this,r):G.bind(j,this,t,r);p.isSafe(t)?this[e]=i:this[e]=function(e,t,r){return i(t,r,e)}}return m.setConfig(p),B.init(h,p),h.copy=G.bind(g,h),h.service=G.bind(function(e,t){var r,n=G.values(p.restangularFields),s={},a=(t||h).all(e);for(r in s.one=G.bind(o,t||h,t,e),s.post=G.bind(a.post,a),s.getList=G.bind(a.getList,a),s.withHttpConfig=G.bind(a.withHttpConfig,a),s.get=G.bind(a.get,a),a)a.hasOwnProperty(r)&&G.isFunction(a[r])&&!G.includes(n,r)&&(s[r]=G.bind(a[r],a));return s},h),h.withConfig=G.bind(function(e){var t=M.copy(G.omit(p,"configuration"));return B.init(t,t),e(t),r(t)},h),h.one=G.bind(o,h,null),h.all=G.bind(l,h,null),h.several=G.bind(u,h,null),h.oneUrl=G.bind(d,h,null),h.allUrl=G.bind(c,h,null),h.stripRestangular=G.bind(E,h),h.restangularizeElement=G.bind(b,h),h.restangularizeCollection=G.bind(function(t,e,r,n){return e=R(t,e,r,n),G.each(e,function(e){e&&b(t,e,r,n)}),e},h),h}(e)}]}),e.name});