{"version":3,"names":[],"mappings":"","sources":["sprestlib.bundle.js"],"sourcesContent":["/* SpRestLib 1.9.0-20181212 */\n!function(e){function i(){}function a(e){if(\"object\"!=typeof this)throw new TypeError(\"Promises must be constructed via new\");if(\"function\"!=typeof e)throw new TypeError(\"not a function\");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],u(e,this)}function n(r,i){for(;3===r._state;)r=r._value;return 0===r._state?void r._deferreds.push(i):(r._handled=!0,void a._immediateFn(function(){var e=1===r._state?i.onFulfilled:i.onRejected;if(null!==e){var t;try{t=e(r._value)}catch(e){return void s(i.promise,e)}o(i.promise,t)}else(1===r._state?o:s)(i.promise,r._value)}))}function o(t,e){try{if(e===t)throw new TypeError(\"A promise cannot be resolved with itself.\");if(e&&(\"object\"==typeof e||\"function\"==typeof e)){var r=e.then;if(e instanceof a)return t._state=3,t._value=e,void l(t);if(\"function\"==typeof r)return void u((i=r,n=e,function(){i.apply(n,arguments)}),t)}t._state=1,t._value=e,l(t)}catch(e){s(t,e)}var i,n}function s(e,t){e._state=2,e._value=t,l(e)}function l(e){2===e._state&&0===e._deferreds.length&&a._immediateFn(function(){e._handled||a._unhandledRejectionFn(e._value)});for(var t=0,r=e._deferreds.length;t
',cache:!1,cleanColHtml:!0,currencyChar:\"$\",language:\"en\",maxRetries:2,maxRows:5e3,metadata:!1,nodeEnabled:!1,nodeCookie:\"\",nodeServer:\"\",overwriteUploads:!1,queryLimit:null,retryAfter:1e3},l=null,t=/^[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}$/i,r=0;function f(e){var t=\"(\"+(e=e||{}).status+\") \"+e.responseText;try{JSON.parse(e.responseText).error.code.split(\",\")[0],t=\"(\"+e.status+\") \"+JSON.parse(e.responseText).error.message.value}catch(e){0}return t}this.sprLib={},sprLib.version=\"1.9.0-20181212\",sprLib.options=function(e){if(!(e&&\"object\"==typeof e&&(e.hasOwnProperty(\"baseUrl\")||e.hasOwnProperty(\"queryLimit\")||e.hasOwnProperty(\"nodeEnabled\")||e.hasOwnProperty(\"nodeCookie\")||e.hasOwnProperty(\"nodeServer\"))))return{baseUrl:c.baseUrl,nodeCookie:c.nodeCookie,nodeEnabled:c.nodeEnabled,nodeServer:c.nodeServer,queryLimit:c.queryLimit};if(e.baseUrl&&\"string\"!=typeof e.baseUrl)console.warn(\"Warning: `baseUrl` should be a string\");else if(e.nodeCookie&&\"string\"!=typeof e.nodeCookie)console.warn(\"Warning: `nodeCookie` should be a string\");else if(e.nodeEnabled&&\"boolean\"!=typeof e.nodeEnabled)console.warn(\"Warning: `nodeEnabled` should be a boolean\");else if(e.nodeServer&&\"string\"!=typeof e.nodeServer)console.warn(\"Warning: `nodeServer` should be a string\");else{if(!e.queryLimit||\"number\"==typeof e.queryLimit)return e.baseUrl&&(c.baseUrl=e.baseUrl.replace(/\\/+$/,\"\")),e.nodeCookie&&(c.nodeCookie=e.nodeCookie),e.nodeServer&&(c.nodeServer=e.nodeServer),\"boolean\"==typeof e.nodeEnabled&&(c.nodeEnabled=e.nodeEnabled),void 0!==e.queryLimit&&(c.queryLimit=e.queryLimit),{baseUrl:c.baseUrl,nodeCookie:c.nodeCookie,nodeEnabled:c.nodeEnabled,nodeServer:c.nodeServer,queryLimit:c.queryLimit};console.warn(\"Warning: `queryLimit` should be a number\")}},sprLib.baseUrl=function(e){if(\"string\"!=typeof e||\"\"==e||!e)return c.baseUrl;c.baseUrl=e.replace(/\\/+$/,\"\")},sprLib.nodeConfig=function(e){e=e&&\"object\"==typeof e?e:{},c.nodeEnabled=void 0===e.nodeEnabled||e.nodeEnabled,c.nodeCookie=e.cookie||\"\",c.nodeServer=e.server||\"\"},sprLib.renewSecurityToken=function(){return new Promise(function(r,t){sprLib.rest({url:\"_api/contextinfo\",type:\"POST\"}).then(function(e){var t=e&&e[0]&&e[0].GetContextWebInformation&&e[0].GetContextWebInformation.FormDigestValue?e[0].GetContextWebInformation.FormDigestValue:null;\"undefined\"!=typeof document&&document.getElementById(\"__REQUESTDIGEST\")&&(document.getElementById(\"__REQUESTDIGEST\").value=t),r(t)}).catch(function(e){t(e)})})},sprLib.file=function(e){var t={},n=\"\";(e=e||{}).requestDigest||\"undefined\"!=typeof document&&document.getElementById(\"__REQUESTDIGEST\")&&document.getElementById(\"__REQUESTDIGEST\").value;if(e&&\"string\"==typeof e)n=encodeURI(e);else{if(!e||\"object\"!=typeof e||!e.hasOwnProperty(\"name\"))return console.error(\"ERROR: A 'fileName' is required! EX: `sprLib.file('Documents/Sample.docx')` or `sprLib.file({ 'name':'Documents/Sample.docx' })`\"),console.error(\"ARGS:\"),console.error(e),null;n=encodeURI(e.name)}return n=n.replace(/\\/$/gi,\"\"),_fileName=n.substring(n.lastIndexOf(\"/\")+1),0!=n.indexOf(\"/\")&&_spPageContextInfo&&_spPageContextInfo.webServerRelativeUrl&&(n=_spPageContextInfo.webServerRelativeUrl+n),t.checkin=function(e){return new Promise(function(t,r){(e=e||{}).comment=e.comment||\"\",e.type&&-1==[\"major\",\"minor\",\"overwrite\"].indexOf(e.type.toLowerCase())?(console.warn(\"Check your options! Available checkin() `type` options are: `major`,`minor`,`overwrite`\"),e.type=\"1\"):e.type=(e.type||\"major\").toLowerCase().replace(\"major\",1).replace(\"minor\",0).replace(\"overwrite\",2),sprLib.rest({type:\"POST\",url:\"_api/web/GetFileByServerRelativeUrl('\"+n+\"')/CheckIn(comment='\"+e.comment+\"',checkintype=\"+e.type+\")\"}).then(function(e){t(!0)}).catch(function(e){r(e)})})},t.checkout=function(){return new Promise(function(t,r){sprLib.rest({type:\"POST\",url:\"_api/web/GetFileByServerRelativeUrl('\"+n+\"')/CheckOut\"}).then(function(e){t(!0)}).catch(function(e){r(e)})})},t.delete=function(){return new Promise(function(t,r){sprLib.rest({type:\"POST\",headers:{\"X-HTTP-Method\":\"DELETE\"},url:\"_api/web/GetFileByServerRelativeUrl('\"+n+\"')\",metadata:!1}).then(function(e){t(!0)}).catch(function(e){r(e)})})},t.get=function(){return new Promise(function(t,r){sprLib.rest({url:\"_api/web/GetFileByServerRelativeUrl('\"+n+\"')/$value\",headers:{binaryStringResponseBody:!0}}).then(function(e){\"undefined\"!=typeof Blob?t(new Blob([e],{type:\"application/octet-stream\"})):t(Buffer.from(e,\"binary\"))}).catch(function(e){r(e)})})},t.info=function(i){return new Promise(function(e,t){var r={};if(i&&i.hasOwnProperty(\"version\")&&isNaN(Number(i.version)))return console.error(\"ERROR: 'version' should be a number! EX: `sprLib.file('Sample.docx').info({ version:12 })`\"),console.error(\"ARGS:\"),console.error(i),null;sprLib.rest({url:\"_api/web/GetFileByServerRelativeUrl('\"+n+\"')\",queryCols:[\"Author/Id\",\"CheckedOutByUser/Id\",\"LockedByUser/Id\",\"ModifiedBy/Id\",\"CheckInComment\",\"CheckOutType\",\"ETag\",\"Exists\",\"Length\",\"MajorVersion\",\"MinorVersion\",\"Name\",\"ServerRelativeUrl\",\"TimeCreated\",\"TimeLastModified\",\"UniqueId\",\"UIVersionLabel\"],metadata:!1}).then(function(e){return r=e&&0/gi,\"\").replace(/<\\/div>/gi,\"\"):i,t.getVersions&&(a[e]=[])}),o.spArrData.push(a),t&&(o.spObjData[t]=a)}),e()}).catch(function(e){t(e)})})}).then(function(){var r=[],i=[];Object.keys(o.listCols).forEach(function(e){var t=o.listCols[e];t.getVersions&&(t.keyName=e,r.push(t),i.push(t.dataName))}),s&&r.length?sprLib.rest({url:(a.baseUrl?a.baseUrl+\"/\":\"\")+\"_vti_bin/owssvr.dll?Cmd=Display&List=%7B\"+s+\"%7D&XMLDATA=TRUE&IncludeVersions=TRUE&Query=ID%20\"+i.toString().replace(/\\,/g,\"%20\")+\"%20Modified%20Editor%20&SortField=Modified&SortDir=ASC\"}).then(function(e){e&&e[0]&&e[0].documentElement&&e[0].documentElement.querySelectorAll(\"row\").forEach(function(a){r.forEach(function(e,t){var r=a.getAttribute(\"ows_ID\"),i=\"\";if(o.spObjData[r]&&a.getAttribute(\"ows_\"+e.dataName)){var n=a.getAttribute(\"ows_\"+e.dataName)||\"\";n&&(n!=i?(o.spObjData[r][e.keyName].push({verDate:new Date(a.getAttribute(\"ows_Modified\").replace(\" \",\"T\")).toISOString(),verName:a.getAttribute(\"ows_Editor\").substring(a.getAttribute(\"ows_Editor\").indexOf(\"#\")+1),verText:n}),i=n):(o.spObjData[r][e.keyName].pop(),o.spObjData[r][e.keyName].push({verDate:new Date(a.getAttribute(\"ows_Modified\").replace(\" \",\"T\")).toISOString(),verName:a.getAttribute(\"ows_Editor\").substring(a.getAttribute(\"ows_Editor\").indexOf(\"#\")+1),verText:n})))}})}),t(o.spArrData)}).catch(function(e){n(e)}):t(o.spArrData)}).catch(function(e){n(e)})})},e.getItems=e.items,e.create=function(i){return new Promise(function(t,r){i&&!Array.isArray(i)&&\"object\"==typeof i&&0!=Object.keys(i).length||r(\"Object type expected! Ex: `{Title:'New Emp'}`\");try{JSON.stringify(i)}catch(e){r(\"`JSON.stringify(jsonData)` failed! Send valid JSON Please. Ex: `{'Name':'Brent'}`\")}i.__metadata=i.__metadata||{},delete i.__metadata.etag,delete i.__next,Promise.resolve().then(function(){return i.__metadata.type?null:o()}).then(function(e){e&&e.type&&(i.__metadata=e),sprLib.rest({type:\"POST\",url:l+\"/items\",data:JSON.stringify(i),metadata:!0,headers:{Accept:\"application/json;odata=verbose\",\"X-RequestDigest\":d}}).then(function(e){e&&e[0]?(i.Id=e[0].Id,i.ID=e[0].ID,i.__metadata=i.__metadata||e[0].__metadata||{},i.__metadata.etag=i.__metadata.etag||(e[0].__metadata?e[0].__metadata.etag:null)):i=null,t(i)}).catch(function(e){r(e)})}).catch(function(e){r(e)})})},e.update=function(n){return new Promise(function(t,r){n&&!Array.isArray(n)&&\"object\"==typeof n&&0!=Object.keys(n).length||r(\"Object type expected! Ex: `{Title:'Brent'}`\"),n.ID||n.Id||n.iD||n.id||r(\"Object must have an `Id` property! Ex: `{Id:99}`\");try{JSON.stringify(n)}catch(e){r(\"`JSON.stringify(jsonData)` failed! Send valid object. Ex: `{'Title':'Brent'}`\")}var i=n.ID||n.Id||n.iD||n.id;delete n.ID,delete n.Id,delete n.iD,delete n.id,n.__metadata=n.__metadata||{},\"\"!=n.__metadata.etag&&null!=n.__metadata.etag||delete n.__metadata.etag,delete n.__next,Promise.resolve().then(function(){return n.__metadata.type?null:o()}).then(function(e){e&&e.type&&(n.__metadata.type=e.type),sprLib.rest({type:\"POST\",url:l+\"/items(\"+i+\")\",data:JSON.stringify(n),metadata:!0,headers:{\"X-HTTP-Method\":\"MERGE\",Accept:\"application/json;odata=verbose\",\"X-RequestDigest\":d,\"IF-MATCH\":n.__metadata.etag?n.__metadata.etag:\"*\"}}).then(function(e){n.Id=i,n.ID=i,n.__metadata.etag&&(n.__metadata.etag='\"'+(Number(n.__metadata.etag.replace(/[\\'\\\"]+/gi,\"\"))+1)+'\"'),t(n)}).catch(function(e){r(e)})})})},e.delete=function(n){return new Promise(function(t,r){n&&!Array.isArray(n)&&\"object\"==typeof n&&0!=Object.keys(n).length||r(\"Object type expected! Ex: `{'ID':123}`\"),n.ID||n.Id||n.iD||n.id||r(\"Object data must have an `Id` property! Ex: `{'ID':123}`\");try{JSON.stringify(n)}catch(e){r(\"`JSON.stringify(jsonData)` failed! Please pass a valid object. Ex: `{'ID':123}`\")}var i=n.ID||n.Id||n.iD||n.id;delete n.ID,delete n.Id,delete n.iD,delete n.id,n.__metadata=n.__metadata||{},\"\"!=n.__metadata.etag&&null!=n.__metadata.etag||delete n.__metadata.etag,delete n.__next,Promise.resolve().then(function(){return n.__metadata.type?null:o()}).then(function(e){e&&e.type&&(n.__metadata.type=e.type),sprLib.rest({type:\"DELETE\",url:l+\"/items(\"+i+\")\",metadata:!0,headers:{Accept:\"application/json;odata=verbose\",\"X-RequestDigest\":d,\"X-HTTP-Method\":\"MERGE\",\"IF-MATCH\":n.__metadata.etag?n.__metadata.etag:\"*\"}}).then(function(){t(i)}).catch(function(e){r(e)})})})},e.recycle=function(i){return new Promise(function(e,t){i&&!Array.isArray(i)&&\"object\"==typeof i&&0!=Object.keys(i).length||t(\"Object type expected! Ex: `{'ID':123}`\"),i.ID||i.Id||i.iD||i.id||t(\"Object data must have an `Id` property! Ex: `{'ID':123}`\");try{JSON.stringify(i)}catch(e){t(\"`JSON.stringify(jsonData)` failed! Please pass a valid object. Ex: `{'ID':123}`\")}var r=i.ID||i.Id||i.iD||i.id;delete i.ID,delete i.Id,delete i.iD,delete i.id,i.__metadata=i.__metadata||{},\"\"!=i.__metadata.etag&&null!=i.__metadata.etag||delete i.__metadata.etag,delete i.__next,sprLib.rest({type:\"POST\",url:l+\"/items(\"+r+\")/recycle()\",metadata:!0,headers:{Accept:\"application/json;odata=verbose\",\"X-RequestDigest\":d}}).then(function(){e(Number(r))}).catch(function(e){t(e)})})},e},sprLib.rest=function(d){return new Promise(function(n,t){(d=d||{}).spArrData=[],d.cache=\"boolean\"==typeof d.cache?d.cache:c.cache,d.digest=d.requestDigest||(\"undefined\"!=typeof document&&document.getElementById(\"__REQUESTDIGEST\")?document.getElementById(\"__REQUESTDIGEST\").value:null),d.metadata=\"boolean\"==typeof d.metadata?d.metadata:c.metadata,d.queryLimit=d.queryLimit||c.queryLimit||null,d.type=d.restType||d.type||\"GET\",d.url=(d.restUrl||d.url||c.baseUrl).replace(/\\\"/g,\"'\");var i=[],a=\"\",o={url:d.url,type:d.type,cache:d.cache,headers:d.headers||{Accept:\"application/json;odata=verbose\",\"X-RequestDigest\":d.digest}};if(d.data&&(o.data=d.data),\"POST\"==o.type&&(o.headers.contentType||(o.headers[\"content-type\"]=\"application/json;odata=verbose\"),o.headers[\"X-RequestDigest\"]||(o.headers[\"X-RequestDigest\"]=d.digest)),o.url=0==d.url.toLowerCase().indexOf(\"http\")||0==d.url.indexOf(\"/\")?\"\":c.baseUrl,o.url+=(0!=d.url.toLowerCase().indexOf(\"http\")&&0!=d.url.indexOf(\"/\")?\"/\":\"\")+d.url,d.queryCols){if(-1==o.url.toLowerCase().indexOf(\"$select\")&&(o.url+=\"?$select=\"),\"string\"==typeof d.queryCols&&(d.queryCols=[d.queryCols]),Array.isArray(d.queryCols)){var s={};d.queryCols.forEach(function(e,t){var r=-1/gi,\"\").replace(/<\\/div>/gi,\"\"):colVal}):Object.keys(d.queryCols).forEach(function(a){var o=d.queryCols[a],e=[],s=\"\";if(o.dataName&&-1/gi,\"\").replace(/<\\/div>/gi,\"\"):s}):Object.keys(l).forEach(function(e){var t=l[e];r[e]=t}),r.__metadata&&!d.metadata&&delete r.__metadata,e.d.__next){var i={prevId:\"\",maxItems:\"\"};e.d.__next.split(\"&\").forEach(function(e,t){-1