@esri/hub-common 9.7.3 → 9.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es2017/content.js +17 -6
- package/dist/es2017/content.js.map +1 -1
- package/dist/es2017/sites/upgrade-site-schema.js +3 -0
- package/dist/es2017/sites/upgrade-site-schema.js.map +1 -1
- package/dist/esm/content.js +17 -6
- package/dist/esm/content.js.map +1 -1
- package/dist/esm/sites/upgrade-site-schema.js +3 -0
- package/dist/esm/sites/upgrade-site-schema.js.map +1 -1
- package/dist/node/content.js +18 -7
- package/dist/node/content.js.map +1 -1
- package/dist/node/sites/upgrade-site-schema.js +3 -0
- package/dist/node/sites/upgrade-site-schema.js.map +1 -1
- package/dist/types/content.d.ts +11 -0
- package/dist/umd/common.umd.js +22 -7
- package/dist/umd/common.umd.js.map +1 -1
- package/dist/umd/common.umd.min.js +1 -1
- package/dist/umd/common.umd.min.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisHub=e.arcgisHub||{})}(this,function(n){"use strict";function o(r,n){return Object.keys(r).reduce(function(e,t){return e[t]=n(r[t],t,r),e},{})}function i(e,r,n){return n=n||"",Array.isArray(e)?e.map(t):!e||!c(e)||s(e)||l(e)||u(e)?r(e,n):Object.assign({},e,o(e,t));function t(e,t){return i(e,r,""+(n?n+"."+t:t))}}function a(e){return"string"==typeof e||e instanceof String}function s(e){return e instanceof Date}function u(e){return"function"==typeof e}function c(e){return"object"==typeof e}function l(e){return e instanceof RegExp}function d(e,t){return t.split(".").reduce(function(e,t){return e?e[t]:void 0},e)}function p(e){var t,r={};if(Array.isArray(e))r=e.map(p);else if("object"==typeof e)for(var n in e)e.hasOwnProperty(n)&&(null!=(t=e[n])&&"object"==typeof t?t instanceof Date?r[n]=new Date(t.getTime()):r[n]=p(t):r[n]=t);else r=e;return r}function f(e,r,n){return e?e.reduce(function(e,t){return e=d(t,r)===n?t:e},null):null}function r(e){return""+(e=void 0===e?"i":e)+Math.random().toString(36).substr(2,8)}function m(e,t){return null!=e&&(t=p(t)).push(e),t}function t(e){return(e=(e=e.toLowerCase()).replace(/[`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/gi," ")).replace(/(\-|\_|\.|\s)+(.)?/g,function(e,t,r){return r?r.toUpperCase():""}).replace(/(^|\/)([A-Z])/g,function(e,t,r){return e.toLowerCase()})}function h(e,t,r){return r.indexOf(e)===t}function g(e){return(e=Array.from(e))[0]=e[0].toUpperCase(),e.join("")}function y(e){return e.reduce(function(e,t){return e.concat(t)},[])}function v(e,t,r){void 0===r&&(r={});var t=t.split("."),n=e,o=t.length-1;t.forEach(function(e,t){n.hasOwnProperty(e)&&null!==n[e]?t===o&&("object"!=typeof n[e]||Array.isArray(n[e])?n[e]=r:n[e]=Object.assign(n[e],p(r))):n[e]=t===o?r:{},n=n[e]})}function b(e,t,r){t=d(e,t);return void 0!==t?t:r}function w(e,r,n){return i(e,function(e){if(!a(e))return e;var t=l(r)?r:new RegExp(r,"g");return e.replace(t,n)})}function C(t,r,e){return Array.isArray(e)&&e.length?(e.forEach(function(e){void 0!==d(t,e)&&v(r,e,d(t,e))}),r):t}function k(e,t,r){v(r,e=Array.isArray(e)?e.join("."):e,t)}function A(r,n){return Array.isArray(r)?r.reduce(function(e,t){return n(t)?e=t:!S(t)||(t=A(t,n))&&(e=t),e},void 0):S(r)?n(r)?r:Object.keys(r).reduce(function(e,t){return!S(r[t])||(t=A(r[t],n))&&(e=t),e},void 0):void 0}function S(e){var t=!1;return t=e&&c(e)&&!s(e)&&!l(e)&&!u(e)?!0:t}function T(e,n,o){void 0===o&&(o=5);return e.reduce(function(e,t){var r=e[e.length-1];return r&&r.length!==o||e.push(r=[]),r.push(t),e},[]).reduce(function(e,r){return e.then(function(t){var e=r.map(function(e){return n(e)});return Promise.all(e).then(function(e){return t.concat(e)})})},Promise.resolve([]))}function E(e,t){return-1!==e.indexOf(t)}var I=function(e,t){return(I=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function e(e,t){function r(){this.constructor=e}I(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var x=function(){return(x=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function O(e,a,s,u){return new(s=s||Promise)(function(r,t){function n(e){try{i(u.next(e))}catch(e){t(e)}}function o(e){try{i(u.throw(e))}catch(e){t(e)}}function i(e){var t;e.done?r(e.value):((t=e.value)instanceof s?t:new s(function(e){e(t)})).then(n,o)}i((u=u.apply(e,a||[])).next())})}function D(r,n){var o,i,a,s={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},e={next:t(0),throw:t(1),return:t(2)};return"function"==typeof Symbol&&(e[Symbol.iterator]=function(){return this}),e;function t(t){return function(e){return function(t){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,i&&(a=2&t[0]?i.return:t[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,t[1])).done)return a;switch(i=0,(t=a?[2&t[0],a.value]:t)[0]){case 0:case 1:a=t;break;case 4:return s.label++,{value:t[1],done:!1};case 5:s.label++,i=t[1],t=[0];continue;case 7:t=s.ops.pop(),s.trys.pop();continue;default:if(!(a=0<(a=s.trys).length&&a[a.length-1])&&(6===t[0]||2===t[0])){s=0;continue}if(3===t[0]&&(!a||t[1]>a[0]&&t[1]<a[3])){s.label=t[1];break}if(6===t[0]&&s.label<a[1]){s.label=a[1],a=t;break}if(a&&s.label<a[2]){s.label=a[2],s.ops.push(t);break}a[2]&&s.ops.pop(),s.trys.pop();continue}t=n.call(r,s)}catch(e){t=[6,e],i=0}finally{o=a=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,e])}}}function P(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),o=0,t=0;t<r;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n}var N,R=(e(_,N=Error),_);function _(e,t,r){var n=this;return t=t||"UNKNOWN_ERROR",r=b(r,"rootCause",r),(n=N.call(this,t)||this).operation=e,n.name="OperationError",n.rootCause=r,Object.setPrototypeOf(n,_.prototype),n.stack=b(r,"stack",(new Error).stack),n}function U(r,n){return void 0===n&&(n={}),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.apply(void 0,e).catch(function(e){return n})}}function j(e){var r=(new Date).getTime();return Array(e).fill(0).reduce(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),e=""+e+t.toString(16)},"")}function M(e){"{"===e[0]&&(e=e.substring(1,e.length-1));return/^(\{){0,1}[0-9a-fA-F]{8}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{12}(\}){0,1}$/gi.test(e)}n.Level=void 0,(ct=n.Level||(n.Level={}))[ct.all=0]="all",ct[ct.debug=1]="debug",ct[ct.info=2]="info",ct[ct.warn=3]="warn",ct[ct.error=4]="error",ct[ct.off=5]="off";var F=(L.setLogLevel=function(e){this.logLevel=e},L.log=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.debug)&&console.log.apply(console,P([e],t))},L.debug=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.debug)&&console.debug.apply(console,P([e],t))},L.info=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.info)&&console.info.apply(console,P([e],t))},L.warn=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.warn)&&console.warn.apply(console,P([e],t))},L.error=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.error)&&console.error.apply(console,P([e],t))},L.isLevelPermitted=function(e){return this.logLevel<=e},L.logLevel=n.Level.off,L);function L(){}function G(e){return e.capabilities.includes("updateitemcontrol")}function q(e){e=e.privileges;return E(void 0===e?[]:e,"portal:user:createItem")}function B(e,t){var r,n=!1,o=e.itemControl,i=e.owner,a=e.orgId,s=t.roleId,u=t.role,c=t.username,l=t.groups,p=t.orgId,u=E(["admin","update"],o)||!!i&&i===c||!!(!!a&&a===p)&&!s&&"org_admin"===u,t=q(t);return t&&u?n=!0:t&&(r=P(d(e,"groupIds")||[],[d(e,"properties.collaborationGroupId")]),n=l.some(function(e){return G(e)&&E(r,e.id)})),n}var Y=["portal:user:createGroup","portal:user:createItem","portal:user:shareToGroup","portal:user:viewOrgGroups","portal:user:viewOrgItems"];function W(e){var t=e.host,r=e.path,e=e.query,t=t.endsWith("/")?t:t+"/",t=new URL(r,t);return t.search=function(r){void 0===r&&(r={});var e=Object.keys(r).filter(function(e){return void 0!==r[e]}).reduce(function(e,t){return e[t]=r[t],e},{});return new URLSearchParams(e).toString()}(e),t.toString()}function H(t){return Object.keys(t).some(function(e){e=t[e];if(!e)return!1;switch((e=e&&e.toParam?e.toParam():e).constructor.name){case"Array":case"Object":case"Date":case"Function":case"Boolean":case"String":case"Number":return!1;default:return!0}})}function V(o){var i={};return Object.keys(o).forEach(function(e){var t=o[e];if((t=t&&t.toParam?t.toParam():t)||0===t||"boolean"==typeof t||"string"==typeof t){switch(t.constructor.name){case"Array":var r=null===(r=null===(r=t[0])||void 0===r?void 0:r.constructor)||void 0===r?void 0:r.name,n="Array"===r?t:"Object"===r?JSON.stringify(t):t.join(",");break;case"Object":n=JSON.stringify(t);break;case"Date":n=t.valueOf();break;case"Function":n=null;break;case"Boolean":n=t+"";break;default:n=t}(n||0===n||"string"==typeof n||Array.isArray(n))&&(i[e]=n)}}),i}function z(e){var t=V(e);return Object.keys(t).map(function(e){return function t(r,e){return Array.isArray(e)&&e[0]&&Array.isArray(e[0])?e.map(function(e){return t(r,e)}).join("&"):encodeURIComponent(r)+"="+encodeURIComponent(e)}(e,t[e])}).join("&")}var J=function(e,t,r,n,o){e=e||"UNKNOWN_ERROR",t=t||"UNKNOWN_ERROR_CODE",this.name="ArcGISRequestError",this.message="UNKNOWN_ERROR_CODE"===t?e:t+": "+e,this.originalMessage=e,this.code=t,this.response=r,this.url=n,this.options=o};function K(e){console&&console.warn&&console.warn.apply(console,[e])}J.prototype=Object.create(Error.prototype),J.prototype.constructor=J;var $,Q="@esri/arcgis-rest-js",X={httpMethod:"POST",params:{f:"json"}},Z=(e(ee,$=J),ee.prototype.retry=function(e,n){var o=this;void 0===n&&(n=3);var i=0,a=function(t,r){e(o.url,o.options).then(function(e){e=x(x({},o.options),{authentication:e});return i+=1,te(o.url,e)}).then(function(e){t(e)}).catch(function(e){"ArcGISAuthError"===e.name&&i<n?a(t,r):"ArcGISAuthError"===e.name&&n<=i?r(o):r(e)})};return new Promise(function(e,t){a(e,t)})},ee);function ee(e,t,r,n,o){o=$.call(this,e=void 0===e?"AUTHENTICATION_ERROR":e,t=void 0===t?"AUTHENTICATION_ERROR_CODE":t,r,n,o)||this;return o.name="ArcGISAuthError",o.message="AUTHENTICATION_ERROR_CODE"===t?e:t+": "+e,o}function te(n,e){void 0===e&&(e={params:{f:"json"}});var o=x(x(x({httpMethod:"POST"},X),e),{params:x(x({},X.params),e.params),headers:x(x({},X.headers),e.headers)}),t=[],e=[];if(o.fetch||"undefined"==typeof fetch?(t.push("`fetch`"),e.push("`node-fetch`")):o.fetch=fetch.bind(Function("return this")()),"undefined"==typeof Promise&&(t.push("`Promise`"),e.push("`es6-promise`")),"undefined"==typeof FormData&&(t.push("`FormData`"),e.push("`isomorphic-form-data`")),!o.fetch||"undefined"==typeof Promise||"undefined"==typeof FormData)throw new Error("`arcgis-rest-request` requires a `fetch` implementation and global variables for `Promise` and `FormData` to be present in the global scope. You are missing "+t.join(", ")+". We recommend installing the "+e.join(", ")+" modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");var e=o.httpMethod,i=o.authentication,a=o.rawResponse,s=x({f:"json"},o.params),r=null,u={method:e,credentials:o.credentials||"same-origin"};return o.headers&&o.headers["X-Esri-Auth-Client-Id"]&&-1<n.indexOf("/oauth2/platformSelf")&&(u.credentials="include"),(i?i.getToken(n,{fetch:o.fetch}).catch(function(e){return e.url=n,e.options=o,r=e,Promise.resolve("")}):Promise.resolve("")).then(function(e){e.length&&(s.token=e),i&&i.getDomainCredentials&&(u.credentials=i.getDomainCredentials(n));var t={};"GET"===u.method&&(s.token&&o.hideToken&&"undefined"==typeof window&&(t["X-Esri-Authorization"]="Bearer "+s.token,delete s.token),r=""===z(s)?n:n+"?"+z(s),o.maxUrlLength&&r.length>o.maxUrlLength||s.token&&o.hideToken?(u.method="POST",e.length&&o.hideToken&&(s.token=e,delete t["X-Esri-Authorization"])):n=r);var r=new RegExp("/items/.+/updateResources").test(n);return"POST"===u.method&&(u.body=function(e,t){var t=H(e)||t,r=V(e);if(t){var n=new FormData;return Object.keys(r).forEach(function(e){var t;"undefined"!=typeof Blob&&r[e]instanceof Blob?(t=r.fileName||r[e].name||e,n.append(e,r[e],t)):n.append(e,r[e])}),n}return z(e)}(s,r)),u.headers=x(x({},t),o.headers),"undefined"!=typeof window||u.headers.referer||(u.headers.referer=Q),H(s)||r||(u.headers["Content-Type"]="application/x-www-form-urlencoded"),o.fetch(n,u)}).then(function(e){if(!e.ok){var t=e.status,r=e.statusText;throw new J(r,"HTTP "+t,e,n,o)}if(a)return e;switch(s.f){case"json":case"geojson":return e.json();case"html":case"text":return e.text();default:return e.blob()}}).then(function(e){if("json"!==s.f&&"geojson"!==s.f||a)return e;var t=function(t,e,r,n){if(400<=t.code){var o=t.message,i=t.code;throw new J(o,i,t,e,r)}if(t.error){var a=t.error,o=a.message,i=a.code,s=a.messageCode,a=s||i||"UNKNOWN_ERROR_CODE";if(498===i||499===i||"GWM_0003"===s||400===i&&"Unable to generate token."===o)throw n||new Z(o,a,t,e,r);throw new J(o,a,t,e,r)}if("failed"!==t.status&&"failure"!==t.status)return t;o=void 0,i="UNKNOWN_ERROR_CODE";try{o=JSON.parse(t.statusMessage).message,i=JSON.parse(t.statusMessage).code}catch(e){o=t.statusMessage||t.message}throw new J(o,i,t,e,r)}(e,n,o,r);return r&&(e=n.toLowerCase().split(/\/rest(\/admin)?\/services\//)[0],o.authentication.federatedServers[e]={token:[],expires:new Date(Date.now()+864e5)},r=null),t})}function re(e){return"string"==typeof e&&"/"===(e=e.trim())[e.length-1]?e.slice(0,-1):e}function ne(e){return e.replace(/^#/,"").split("&").reduce(function(e,t){var r,t=(r=t,r=(t=t.split("="))[0],t=t[1],{key:decodeURIComponent(r),value:decodeURIComponent(t)});return e[t.key]=t.value,e},{})}function oe(e){return(e=void 0===e?{}:e).portal?re(e.portal):e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function ie(e){return e.owner?Promise.resolve(e.owner):e.item&&e.item.owner?Promise.resolve(e.item.owner):e.authentication&&e.authentication.getUsername?e.authentication.getUsername():Promise.reject(new Error("Could not determine the owner of this item. Pass the `owner`, `item.owner`, or `authentication` option."))}function ae(n){return ie(n).then(function(e){var t,r=n.folderId?oe(n)+"/content/users/"+e+"/"+n.folderId+"/items/"+n.item.id+"/update":oe(n)+"/content/users/"+e+"/items/"+n.item.id+"/update";return n.params=x(x({},n.params),(t=n.item,(e=JSON.parse(JSON.stringify(t))).data&&("undefined"!=typeof Blob&&t.data instanceof Blob||"ReadStream"===t.data.constructor.name?e.file=t.data:e.text=t.data,delete e.data),e)),te(r,n)})}function se(e,t){return te(ue(e,t),x({httpMethod:"GET"},t))}var ue=function(e,t){return("string"==typeof t?t:oe(t))+"/content/items/"+e};function ce(e){var t=ue(e.id,e)+"/relatedItems",r=x({httpMethod:"GET",params:{direction:e.direction}},e);return"string"==typeof e.relationshipType?r.params.relationshipType=e.relationshipType:r.params.relationshipTypes=e.relationshipType,delete r.direction,delete r.relationshipType,te(t,r)}function le(t){return ie(t).then(function(e){return te(oe(t)+"/content/users/"+e+"/items/"+t.id+"/unprotect",t)})}function pe(e){return t=e.groupId,te(oe(e=e)+"/community/groups/"+t,x({httpMethod:"GET"},e)).then(function(e){return e.userMembership.memberType}).catch(function(){return"none"});var t}function de(t){return ie(t).then(function(e){return te(oe(t)+"/content/users/"+e+"/items/"+t.id+"/delete",t)})}var fe=(me.prototype.match=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.termStack=this.termStack.concat(e),this},me.prototype.in=function(e){return this.hasRange||this.hasTerms?(e&&"*"!==e&&(this.q+=e+":"),this.commit()):(K("`in("+(e?'"'+e+'"':"")+")`"+" was called with no call to `match(...)` or `from(...)`/`to(...)`. Your query was not modified."),this)},me.prototype.startGroup=function(){return this.commit(),0<this.openGroups&&(this.q+=" "),this.openGroups++,this.q+="(",this},me.prototype.endGroup=function(){return this.openGroups<=0?K("`endGroup(...)` was called without calling `startGroup(...)` first. Your query was not modified."):(this.commit(),this.openGroups--,this.q+=")"),this},me.prototype.and=function(){return this.addModifier("and")},me.prototype.or=function(){return this.addModifier("or")},me.prototype.not=function(){return this.addModifier("not")},me.prototype.from=function(e){return this.hasTerms?K('`from(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Optionally, you may see this because dates are incorrectly formatted. Dates should be a primative Date value, aka a number in milliseconds or Date object, ie new Date("2020-01-01"). Your query was not modified.'):this.rangeStack[0]=e,this},me.prototype.to=function(e){return this.hasTerms?K('`to(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Optionally, you may see this because dates are incorrectly formatted. Dates should be a primative Date value, aka a number in milliseconds or Date object, ie new Date("2020-01-01"). Your query was not modified.'):this.rangeStack[1]=e,this},me.prototype.boost=function(e){return this.commit(),this.q+="^"+e,this},me.prototype.toParam=function(){return this.commit(),this.cleanup(),this.q},me.prototype.clone=function(){return this.commit(),this.cleanup(),new me(this.q+"")},me.prototype.addModifier=function(e){return this.currentModifer?(K("You have called `"+this.currentModifer+"()` after `"+e+"()`. Your current query was not modified."),this):(this.commit(),""===this.q&&"not"!==e?K("You have called `"+e+"()` without calling another method to modify your query first. Try calling `match()` first."):(this.currentModifer=e,this.q+=""===this.q?"":" ",this.q+=e.toUpperCase()+" "),this)},me.prototype.needsQuotes=function(e){return/\s|:/g.test(e)},me.prototype.formatTerm=function(e){return e instanceof Date?e.getTime():"string"==typeof e&&this.needsQuotes(e)?'"'+e+'"':e},me.prototype.commit=function(){var t=this;return this.currentModifer=void 0,this.hasRange&&(this.q+="["+this.formatTerm(this.rangeStack[0])+" TO "+this.formatTerm(this.rangeStack[1])+"]",this.rangeStack=[void 0,void 0]),this.hasTerms&&(this.q+=this.termStack.map(function(e){return t.formatTerm(e)}).join(" "),this.termStack=[]),this},Object.defineProperty(me.prototype,"hasTerms",{get:function(){return 0<this.termStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(me.prototype,"hasRange",{get:function(){return this.rangeStack.length&&this.rangeStack[0]&&this.rangeStack[1]},enumerable:!1,configurable:!0}),me.prototype.cleanup=function(){if(0<this.openGroups)for(K("Automatically closing "+this.openGroups+" group(s). You can use `endGroup(...)` to remove this warning.");0<this.openGroups;)this.q+=")",this.openGroups--;var e=this.q;this.q=e.replace(/( AND ?| NOT ?| OR ?)*$/,""),e!==this.q&&K("`startGroup(...)` was called without calling `endGroup(...)` first. Your query was not modified."),this.q=this.q.replace(/(\(\))*/,"")},me);function me(e){void 0===e&&(e=""),this.termStack=[],this.rangeStack=[],this.openGroups=0,this.q=e}function he(r,n){var o,i,e,t="string"==typeof r||r instanceof fe?{httpMethod:"GET",params:{q:r}}:(o=r,t=["q","num","start","sortField","sortOrder","searchUserAccess","searchUserName","filter","countFields","countSize","categories","categoryFilters"],(i=x(x({params:{}},{httpMethod:"GET"}),o)).params=t.reduce(function(e,t){return!o[t]&&"boolean"!=typeof o[t]||(e[t]=o[t]),e},i.params),["params","httpMethod","rawResponse","authentication","portal","fetch","maxUrlLength","headers"].reduce(function(e,t){return i[t]&&(e[t]=i[t]),e},{}));switch(n){case"item":e="/search";break;case"group":e="/community/groups";break;case"groupContent":if("string"==typeof r||r instanceof fe||!r.groupId)return Promise.reject(new Error("you must pass a `groupId` option to `searchGroupContent`"));e="/content/groups/"+r.groupId+"/search";break;default:e="/portals/self/users/search"}return te(oe(t)+e,t).then(function(t){return t.nextStart&&-1!==t.nextStart&&(t.nextPage=function(){var e;return"string"==typeof r||r instanceof fe?e={q:r,start:t.nextStart}:(e=r).start=t.nextStart,he(e,n)}),t})}function ge(e){return he(e,"item")}function ye(e,t){if(0===e.length)return[];for(var r=[],n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function ve(e){var t=e.id,r=oe(e)+"/community/groups/"+t+"/addUsers",t=Object.assign({},e,{admins:void 0,users:void 0}),t=P(be("users",e.users,t),be("admins",e.admins,t)).map(function(e){return te(r,e).catch(function(e){return{errors:[e]}})});return Promise.all(t).then(we)}function be(o,e,i){return!e||e.length<1?[]:ye(e,25).map(function(e){return t=o,r=e,n=i,Object.assign({},n,((e={})[t]=r,e.params=x(x({},n.params),((n={})[t]=r,n)),e));var t,r,n})}function we(e){var t=e.filter(function(e){return e.notAdded}).reduce(function(e,t){return e.concat(t.notAdded)},[]),e=e.filter(function(e){return e.errors}).reduce(function(e,t){return e.concat(t.errors)},[]),t={notAdded:t};return 0<e.length&&(t.errors=e),t}function Ce(t){var e=t.id,r=t.users,n=oe(t)+"/community/groups/"+e+"/removeUsers",r=ye(r,25).map(function(e){e=x(x({},t),{users:e,params:{users:e}});return te(n,e).catch(function(e){return{errors:[e]}})});return Promise.all(r).then(function(e){var t=function(r){return e.filter(function(e){return e[r]}).reduce(function(e,t){return e.concat(t[r])},[])},r=t("errors"),t={notRemoved:t("notRemoved")};return r.length?x(x({},t),{errors:r}):t})}function ke(e){var t,r=e.id,n=oe(e)+"/community/groups/"+r+"/invite",e=ye((t=e).users,25).map(function(e){return function(e,t){t=Object.assign({},t);return t.params=x(x({},t.params),{users:e,role:t.role,expiration:t.expiration}),t}(e,t)}).map(function(e){return te(n,e).catch(function(e){return{errors:[e]}})});return Promise.all(e).then(Ae)}function Ae(e){var t=e.every(function(e){return e.success}),e=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),t={success:t};return 0<e.length&&(t.errors=e),t}function Se(e){return te(oe(e)+"/community/groups/"+e.id+"/unprotect",e)}function Te(e){return te(oe(e)+"/community/groups/"+e.id+"/delete",x({},e))}function Ee(e){var t=oe(e)+"/community/groups/"+e.id+"/updateUsers",r={authentication:e.authentication,params:{}};return"admin"===e.newMemberType?r.params.admins=e.users:r.params.users=e.users,te(t,r)}function Ie(e){var n,t=oe(e)+"/portals/self/createNotification",e=ye((n=e).users,n.batchSize||25).map(function(e){return t=e,r=n,(e=Object.assign({},r)).params=x(x({},e.params),{users:t,subject:r.subject,message:r.message,notificationChannelType:e.notificationChannelType}),e;var t,r}).map(function(e){return te(t,e).catch(function(e){return{errors:[e]}})});return Promise.all(e).then(xe)}function xe(e){var t=e.every(function(e){return e.success}),e=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),t={success:t};return 0<e.length&&(t.errors=e),t}function Oe(e){var t,r,n={httpMethod:"GET"};return"string"==typeof e?r="https://www.arcgis.com/sharing/rest/community/users/"+e:(t=e.username||e.authentication.username,r=oe(e)+"/community/users/"+encodeURIComponent(t),n=x(x({},e),n)),te(r,n)}function De(t){return ge({q:"id: "+t.id+" AND group: "+t.groupId,start:1,num:10,sortField:"title",authentication:t.authentication,httpMethod:"POST"}).then(function(e){if(0<e.total)return e.results.some(function(e){return e.id===t.id})})}function Pe(a){return De(a).then(function(e){if(e)return{itemId:a.id,shortcut:!0,notSharedWith:[]};var t=a.authentication.username,e=a.owner,n=a.confirmItemControl,e=e||t;if(e===t)return Ne(a);var o=!1,i=!1;return Promise.all([Oe({username:t,authentication:a.authentication}),Oe({username:e,authentication:a.authentication}),pe(a)]).then(function(e){var t=e[0],r=e[1],e=e[2];return o="org_admin"===t.role&&!t.roleId,i=t.orgId!==r.orgId,function(e,t,r,n,o,i){var a=[];if(i.groupId!==e.favGroupId)if(t){if(!n)throw Error("This item can not be shared to shared editing group "+i.groupId+" by "+e.username+" as they not the item owner or org admin.");a.push(Re(e,e,!1,"Error adding "+e.username+" as member to edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i),Re(e,o,!0,"none"===r?"Error adding user "+o.username+" to edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.":"Error promoting user "+o.username+" to admin in edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i))}else if(n)a.push(Re(e,e,!1,"Error adding "+e.username+" as member to view group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i));else if("none"===r)throw new Error("This item can not be shared by "+e.username+" as they are not a member of the specified group "+i.groupId+".");return a}(t,!!n,e,o,r,a)}).then(function(e){var t=e[0],r=(void 0===t?{promise:Promise.resolve({notAdded:[]}),revert:function(e){return Promise.resolve(e)}}:t).revert;return Promise.all(e.map(function(e){return e.promise})).then(function(){return Ne(a,o,i)}).then(function(e){return r(e)})})}).then(function(e){if(e.notSharedWith.length)throw Error("Item "+a.id+" could not be shared to group "+a.groupId+".");return e})}function Ne(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.authentication.username,o=e.owner||n,i=oe(e)+"/content/items/"+e.id+"/share";return(o===n||t&&!r)&&(i=oe(e)+"/content/users/"+o+"/items/"+e.id+"/share"),e.params={groups:e.groupId,confirmItemControl:e.confirmItemControl},te(i,e)}function Re(e,t,r,n,o){var i,a,s=t.groups||[],u=s.find(function(e){return e.id===o.groupId});if(e.orgId!==t.orgId)throw Error("User "+t.username+" is not a member of the same org as "+e.username+". Consequently they can not be added added to group "+o.groupId+" nor can item "+o.id+" be shared to the group.");if(!u&&511<s.length)throw Error("User "+t.username+" already has 512 groups, and can not be added to group "+o.groupId+". Consequently item "+o.id+" can not be shared to the group.");return a=u?r&&"member"===u.userMembership.memberType?(i=Ee({id:o.groupId,users:[t.username],newMemberType:"admin",authentication:o.authentication}).then(function(e){e=e.results.reduce(function(e,t){return t.success||e.push(t.username),e},[]);return Promise.resolve({notAdded:e})}).catch(function(){return{notAdded:[t.username]}}),function(e){return Ee({id:o.groupId,users:[t.username],newMemberType:"member",authentication:o.authentication}).then(function(){return e}).catch(function(){return e})}):(i=Promise.resolve({notAdded:[]}),function(e){return Promise.resolve(e)}):(i=ve(((a={id:o.groupId})[r?"admins":"users"]=[t.username],a.authentication=o.authentication,a)).then(function(e){if(e.errors&&e.errors.length)throw e.errors[0];return e}).catch(function(){return{notAdded:[t.username]}}),function(e){return Ce({id:o.groupId,users:[t.username],authentication:o.authentication}).then(function(){return e})}),{promise:i.then(function(e){if(e.notAdded.length)throw new Error(n);return e}),revert:a}}function _e(o){return De(o).then(function(e){if(!e)return Promise.resolve({itemId:o.id,shortcut:!0,notUnsharedFrom:[]});var r=o.authentication.username,n=o.owner;return Promise.all([pe(o),Oe({username:r,authentication:o.authentication})]).then(function(e){var t=e[0],e=e[1],e="org_admin"===e.role&&!e.roleId;if(!((n||r)===r)&&!e&&["admin","owner"].indexOf(t)<0)throw Error("This item can not be unshared from group "+o.groupId+" by "+r+" as they not the item owner, an org admin, group admin or group owner.");return function(e){var t=e.authentication.username,r=e.owner||t,n=oe(e)+"/content/items/"+e.id+"/unshare";r===t&&(n=oe(e)+"/content/users/"+r+"/items/"+e.id+"/unshare");return e.params={groups:e.groupId},te(n,e)}(o)}).then(function(e){if(e.notUnsharedFrom.length)throw Error("Item "+o.id+" could not be unshared to group "+o.groupId);return e})})}function Ue(e){if("string"==typeof e)return e.replace(/\/sharing\/rest\/?$/,"");if("object"==typeof e){var t=e.portalSelf||e,r=t.portalHostname,n=t.urlKey,o=t.customBaseUrl;if(r||n&&o)return t.isPortal?"https://"+t.portalHostname:"https://"+t.urlKey+"."+t.customBaseUrl}return Ue(oe(e))}var je={devext:"https://d1011m9qpnz5mw.cloudfront.net",qaext:"https://dyq9ux9ryu4qj.cloudfront.net",www:"https://d1iq7pbacwn5rb.cloudfront.net"};function Me(e){if(e.isPortal)return Ue(e)+"/apps/sites";e=e.portalHostname.split(".")[0];return(je[e]||je.www)+"/opendata-ui/assets"}function Fe(e){return Ue(e)+"/sharing/rest"}function Le(e){return e=(e=e.toLowerCase()).includes("//")?e.split("//")[1]:e}function Ge(e){var t;return e.match(/(qaext|\.mapsqa)\.arcgis.com/)?t="https://hubqa.arcgis.com":e.match(/(devext|\.mapsdevext)\.arcgis.com/)?t="https://hubdev.arcgis.com":e.match(/(www|\.maps)\.arcgis.com/)&&(t="https://hub.arcgis.com"),t}function qe(e){if(e.isPortal)throw new Error("Hub Url is not available in ArcGIS Enterprise");return Ge(e.portalHostname)}var Be=function(e,t,r){var n=e.id,e=e.access,t=Fe(t)+"/content/items/"+n,n=new URLSearchParams({f:"json"});return"public"!==e&&r&&n.append("token",r),t+"?"+n.toString()},Ye=/\/(map|feature)server/i,We=function(e){e=e.match(Ye),e=e&&e[1];return e&&g(e)+" Service"};function He(e){var t=e&&e.hubApiUrl;return t||Ge(Fe(e))}function Ve(e,t){return t.rawResponse=!1,te(e,t).then(function(e){var t={token:e.access_token,username:e.username,expires:new Date(Date.now()+(1e3*e.expires_in-1e3)),ssl:!0===e.ssl};return e.refresh_token&&(t.refreshToken=e.refresh_token),t})}function ze(e,t){return"undefined"!=typeof window&&window.location&&window.location.host?t.params.referer=window.location.host:t.params.referer=Q,te(e,t)}var Je=/^https?:\/\/(\S+)\.arcgis\.com.+/;function Ke(e){return Je.test(e)}function $e(e){if(!Je.test(e))return null;e=e.match(Je)[1].split(".").pop();return e.includes("dev")?"dev":e.includes("qa")?"qa":"production"}function Qe(e,t){t=re(function(e){if(!Je.test(e))return e;switch($e(e)){case"dev":return"https://devext.arcgis.com/sharing/rest";case"qa":return"https://qaext.arcgis.com/sharing/rest";default:return"https://www.arcgis.com/sharing/rest"}}(t)).replace(/https?:\/\//,""),e=re(e).replace(/https?:\/\//,"");return new RegExp(e,"i").test(t)}var Xe=(Object.defineProperty(Ze.prototype,"token",{get:function(){return this._token},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"tokenExpires",{get:function(){return this._tokenExpires},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"refreshToken",{get:function(){return this._refreshToken},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"refreshTokenExpires",{get:function(){return this._refreshTokenExpires},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"trustedServers",{get:function(){return console.log("DEPRECATED: use federatedServers instead"),this.federatedServers},enumerable:!1,configurable:!0}),Ze.beginOAuth2=function(e,t){void 0===t&&(t=window),e.duration&&console.log("DEPRECATED: 'duration' is deprecated - use 'expiration' instead");var r=x({portal:"https://www.arcgis.com/sharing/rest",provider:"arcgis",expiration:20160,popup:!0,popupWindowFeatures:"height=400,width=600,menubar=no,location=yes,resizable=yes,scrollbars=yes,status=yes",state:e.clientId,locale:""},e),n=r.portal,o=r.provider,i=r.clientId,a=r.expiration,s=r.redirectUri,u=r.popup,c=r.popupWindowFeatures,l=r.state,p=r.locale,r=r.params,p="arcgis"===o?n+"/oauth2/authorize?client_id="+i+"&response_type=token&expiration="+(e.duration||a)+"&redirect_uri="+encodeURIComponent(s)+"&state="+l+"&locale="+p:n+"/oauth2/social/authorize?client_id="+i+"&socialLoginProviderName="+o+"&autoAccountCreateForSocial=true&response_type=token&expiration="+(e.duration||a)+"&redirect_uri="+encodeURIComponent(s)+"&state="+l+"&locale="+p;if(r&&(p=p+"&"+z(r)),u){var d,f=((d={promise:null,resolve:null,reject:null}).promise=new Promise(function(e,t){d.resolve=e,d.reject=t}),d);return t["__ESRI_REST_AUTH_HANDLER_"+i]=function(e,t){e?(e=JSON.parse(e),f.reject(new Z(e.errorMessage,e.error))):t&&(t=JSON.parse(t),f.resolve(new Ze({clientId:i,portal:n,ssl:t.ssl,token:t.token,tokenExpires:new Date(t.expires),username:t.username})))},t.open(p,"oauth-window",c),f.promise}t.location.href=p},Ze.completeOAuth2=function(e,o){void 0===o&&(o=window);var t=x({portal:"https://www.arcgis.com/sharing/rest",popup:!0},e),i=t.portal,a=t.clientId,s=t.popup;function r(e,t){try{var r=void 0,n="__ESRI_REST_AUTH_HANDLER_"+a;if(s&&(o.opener?o.opener.parent&&o.opener.parent[n]?r=o.opener.parent[n]:o.opener&&o.opener[n]&&(r=o.opener[n]):o!==o.parent&&o.parent&&o.parent[n]&&(r=o.parent[n]),r))return r(e?JSON.stringify(e):void 0,JSON.stringify(t)),void o.close()}catch(e){throw new Z('Unable to complete authentication. It\'s possible you specified popup based oAuth2 but no handler from "beginOAuth2()" present. This generally happens because the "popup" option differs between "beginOAuth2()" and "completeOAuth2()".')}if(e)throw new Z(e.errorMessage,e.error);return new Ze({clientId:a,portal:i,ssl:t.ssl,token:t.token,tokenExpires:t.expires,username:t.username})}e=ne(o.location.hash);if(!e.access_token){var n=void 0,u="Unknown error";return e.error&&(n=e.error,u=e.error_description),r({error:n,errorMessage:u})}t=e.access_token,n=new Date(Date.now()+1e3*parseInt(e.expires_in,10)-6e4),u=e.username;return r(void 0,{token:t,expires:n,ssl:"true"===e.ssl,username:u})},Ze.fromParent=function(e,n){var o;return!n&&window&&(n=window),new Promise(function(t,r){o=function(e){if(e.source===n.parent&&e.data)try{return t(Ze.parentMessageHandler(e))}catch(e){return r(e)}},n.addEventListener("message",o,!1),n.parent.postMessage({type:"arcgis:auth:requestCredential"},e)}).then(function(e){return n.removeEventListener("message",o,!1),e})},Ze.authorize=function(e,t){e.duration&&console.log("DEPRECATED: 'duration' is deprecated - use 'expiration' instead");var r=x({portal:"https://arcgis.com/sharing/rest",expiration:20160},e),n=r.portal,o=r.clientId,i=r.expiration,r=r.redirectUri;t.writeHead(301,{Location:n+"/oauth2/authorize?client_id="+o+"&expiration="+(e.duration||i)+"&response_type=code&redirect_uri="+encodeURIComponent(r)}),t.end()},Ze.exchangeAuthorizationCode=function(e,t){var e=x({portal:"https://www.arcgis.com/sharing/rest",refreshTokenTTL:20160},e),r=e.portal,n=e.clientId,o=e.redirectUri,i=e.refreshTokenTTL;return Ve(r+"/oauth2/token",{params:{grant_type:"authorization_code",client_id:n,redirect_uri:o,code:t}}).then(function(e){return new Ze({clientId:n,portal:r,ssl:e.ssl,redirectUri:o,refreshToken:e.refreshToken,refreshTokenTTL:i,refreshTokenExpires:new Date(Date.now()+60*(i-1)*1e3),token:e.token,tokenExpires:e.expires,username:e.username})})},Ze.deserialize=function(e){e=JSON.parse(e);return new Ze({clientId:e.clientId,refreshToken:e.refreshToken,refreshTokenExpires:new Date(e.refreshTokenExpires),username:e.username,password:e.password,token:e.token,tokenExpires:new Date(e.tokenExpires),portal:e.portal,ssl:e.ssl,tokenDuration:e.tokenDuration,redirectUri:e.redirectUri,refreshTokenTTL:e.refreshTokenTTL})},Ze.fromCredential=function(e){var t=void 0===e.ssl||e.ssl,r=e.expires||Date.now()+72e5;return new Ze({portal:e.server.includes("sharing/rest")?e.server:e.server+"/sharing/rest",ssl:t,token:e.token,username:e.userId,tokenExpires:new Date(r)})},Ze.parentMessageHandler=function(e){if("arcgis:auth:credential"===e.data.type)return Ze.fromCredential(e.data.credential);if("arcgis:auth:error"!==e.data.type)throw new Error("Unknown message type.");var t=new Error(e.data.error.message);throw t.name=e.data.error.name,t},Ze.prototype.toCredential=function(){return{expires:this.tokenExpires.getTime(),server:this.portal,ssl:this.ssl,token:this.token,userId:this.username}},Ze.prototype.getUser=function(e){var t=this;if(this._pendingUserRequest)return this._pendingUserRequest;if(this._user)return Promise.resolve(this._user);var r=this.portal+"/community/self",e=x(x({httpMethod:"GET",authentication:this},e),{rawResponse:!1});return this._pendingUserRequest=te(r,e).then(function(e){return t._user=e,t._pendingUserRequest=null,e}),this._pendingUserRequest},Ze.prototype.getPortal=function(e){var t=this;if(this._pendingPortalRequest)return this._pendingPortalRequest;if(this._portalInfo)return Promise.resolve(this._portalInfo);var r=this.portal+"/portals/self",e=x(x({httpMethod:"GET",authentication:this},e),{rawResponse:!1});return this._pendingPortalRequest=te(r,e).then(function(e){return t._portalInfo=e,t._pendingPortalRequest=null,e}),this._pendingPortalRequest},Ze.prototype.getUsername=function(){return this.username?Promise.resolve(this.username):this._user?Promise.resolve(this._user.username):this.getUser().then(function(e){return e.username})},Ze.prototype.getToken=function(e,t){return r=this.portal,n=e,o=Ke(r),i=Ke(n),r=$e(r),n=$e(n),o&&i&&r===n||new RegExp(this.portal,"i").test(e)?this.getFreshToken(t):this.getTokenForServer(e,t);var r,n,o,i},Ze.prototype.validateAppAccess=function(r){return this.getToken(this.portal).then(function(e){return te((t=void 0===t?"https://www.arcgis.com/sharing/rest":t)+"/oauth2/validateAppAccess",{method:"POST",params:{f:"json",client_id:r,token:e}});var t})},Ze.prototype.toJSON=function(){return{clientId:this.clientId,refreshToken:this.refreshToken,refreshTokenExpires:this.refreshTokenExpires,username:this.username,password:this.password,token:this.token,tokenExpires:this.tokenExpires,portal:this.portal,ssl:this.ssl,tokenDuration:this.tokenDuration,redirectUri:this.redirectUri,refreshTokenTTL:this.refreshTokenTTL}},Ze.prototype.serialize=function(){return JSON.stringify(this)},Ze.prototype.enablePostMessageAuth=function(e,t){!t&&window&&(t=window),this._hostHandler=this.createPostMessageHandler(e),t.addEventListener("message",this._hostHandler,!1)},Ze.prototype.disablePostMessageAuth=function(e){(e=!e&&window?window:e).removeEventListener("message",this._hostHandler,!1)},Ze.prototype.refreshSession=function(e){return this._user=null,this.username&&this.password?this.refreshWithUsernameAndPassword(e):this.clientId&&this.refreshToken?this.refreshWithRefreshToken():Promise.reject(new Z("Unable to refresh token."))},Ze.prototype.getServerRootUrl=function(e){var t=re(e).split(/\/rest(\/admin)?\/services(?:\/|#|\?|$)/)[0].match(/(https?:\/\/)(.+)/);t[0];var r=t[1],e=t[2].split("/"),t=e[0],e=e.slice(1);return""+r+t.toLowerCase()+"/"+e.join("/")},Ze.prototype.getDomainCredentials=function(t){return this.trustedDomains&&this.trustedDomains.length&&this.trustedDomains.some(function(e){return t.startsWith(e)})?"include":"same-origin"},Ze.prototype.createPostMessageHandler=function(o){var i=this;return function(e){var t=-1<o.indexOf(e.origin),r="arcgis:auth:requestCredential"===e.data.type,n=i.tokenExpires.getTime()>Date.now();t&&r&&(r={},r=n?((n=i.toCredential()).server=n.server.replace("/sharing/rest",""),{type:"arcgis:auth:credential",credential:n}):{type:"arcgis:auth:error",error:{name:"tokenExpiredError",message:"Session token was expired, and not returned to the child application"}},e.source.postMessage(r,e.origin))}},Ze.prototype.getTokenForServer=function(t,r){var n=this,o=this.getServerRootUrl(t),e=this.federatedServers[o];return e&&e.expires&&e.expires.getTime()>Date.now()?Promise.resolve(e.token):this._pendingTokenRequests[o]||(this._pendingTokenRequests[o]=this.fetchAuthorizedDomains().then(function(){return te(o+"/rest/info",{credentials:n.getDomainCredentials(t)}).then(function(e){if(e.owningSystemUrl){if(Qe(e.owningSystemUrl,n.portal))return te(e.owningSystemUrl+"/sharing/rest/info",r);throw new Z(t+" is not federated with "+n.portal+".","NOT_FEDERATED")}if(e.authInfo&&void 0!==n.federatedServers[o])return Promise.resolve({authInfo:e.authInfo});throw new Z(t+" is not federated with any portal and is not explicitly trusted.","NOT_FEDERATED")}).then(function(e){return e.authInfo.tokenServicesUrl}).then(function(e){return n.token&&n.tokenExpires.getTime()>Date.now()?ze(e,{params:{token:n.token,serverUrl:t,expiration:n.tokenDuration,client:"referer"}}):ze(e,{params:{username:n.username,password:n.password,expiration:n.tokenDuration,client:"referer"}}).then(function(e){return n._token=e.token,n._tokenExpires=new Date(e.expires),e})}).then(function(e){return n.federatedServers[o]={expires:new Date(e.expires),token:e.token},delete n._pendingTokenRequests[o],e.token})}),this._pendingTokenRequests[o])},Ze.prototype.getFreshToken=function(e){var t=this;return this.token&&!this.tokenExpires||this.token&&this.tokenExpires&&this.tokenExpires.getTime()>Date.now()?Promise.resolve(this.token):(this._pendingTokenRequests[this.portal]||(this._pendingTokenRequests[this.portal]=this.refreshSession(e).then(function(e){return t._pendingTokenRequests[t.portal]=null,e.token})),this._pendingTokenRequests[this.portal])},Ze.prototype.refreshWithUsernameAndPassword=function(e){var t=this,e=x({params:{username:this.username,password:this.password,expiration:this.tokenDuration}},e);return ze(this.portal+"/generateToken",e).then(function(e){return t._token=e.token,t._tokenExpires=new Date(e.expires),t})},Ze.prototype.refreshWithRefreshToken=function(e){var t=this;if(this.refreshToken&&this.refreshTokenExpires&&this.refreshTokenExpires.getTime()<Date.now())return this.refreshRefreshToken(e);e=x({params:{client_id:this.clientId,refresh_token:this.refreshToken,grant_type:"refresh_token"}},e);return Ve(this.portal+"/oauth2/token",e).then(function(e){return t._token=e.token,t._tokenExpires=e.expires,t})},Ze.prototype.refreshRefreshToken=function(e){var t=this,e=x({params:{client_id:this.clientId,refresh_token:this.refreshToken,redirect_uri:this.redirectUri,grant_type:"exchange_refresh_token"}},e);return Ve(this.portal+"/oauth2/token",e).then(function(e){return t._token=e.token,t._tokenExpires=e.expires,t._refreshToken=e.refreshToken,t._refreshTokenExpires=new Date(Date.now()+60*(t.refreshTokenTTL-1)*1e3),t})},Ze.prototype.fetchAuthorizedDomains=function(){var t=this;return this.server||!this.portal?Promise.resolve(this):this.getPortal().then(function(e){return e.authorizedCrossOriginDomains&&e.authorizedCrossOriginDomains.length&&(t.trustedDomains=e.authorizedCrossOriginDomains.filter(function(e){return!e.startsWith("http://")}).map(function(e){return e.startsWith("https://")?e:"https://"+e})),t})},Ze);function Ze(e){var t;this.clientId=e.clientId,this._refreshToken=e.refreshToken,this._refreshTokenExpires=e.refreshTokenExpires,this.username=e.username,this.password=e.password,this._token=e.token,this._tokenExpires=e.tokenExpires,this.portal=e.portal?re(e.portal):"https://www.arcgis.com/sharing/rest",this.ssl=e.ssl,this.provider=e.provider||"arcgis",this.tokenDuration=e.tokenDuration||20160,this.redirectUri=e.redirectUri,this.refreshTokenTTL=e.refreshTokenTTL||20160,this.server=e.server,this.federatedServers={},this.trustedDomains=[],e.server&&(t=this.getServerRootUrl(e.server),this.federatedServers[t]={token:e.token,expires:e.tokenExpires}),this._pendingTokenRequests={}}var et={app:["Application","City Engine Web Scene","CityEngine Web Scene","Dashboard","Insights Page","Insights Workbook","Operation View","Web Mapping Application","StoryMap","Web Experience","Urban Model"],dataset:["CSV Collection","CSV","Feature Collection Template","Feature Collection","Feature Layer","Feature Service","File Geodatabase","GeoJSON","GeoJson","KML Collection","KML","Microsoft Excel","Raster Layer","Shapefile","Stream Service","Table"],document:["CAD Drawing","Document Link","Hub Page","Site Page","Image","iWork Keynote","iWork Numbers","iWork Pages","Microsoft Powerpoint","Microsoft Visio","Microsoft Word","Notebook","PDF","Pro Map","Report Template"],event:["Hub Event"],feedback:["Form","Quick Capture Project"],initiative:["Hub Initiative"],template:["Hub Initiative Template"],solution:["Solution"],map:["Image Collection","Image Service","Map Service Layer","Map Service","Scene Service","Scene Layer","Vector Tile Service","Web Map Service","Web Map Tile Service","Web Map","Web Scene","WFS","WMS","WMTS"],other:["360 VR Experience","AppBuilder Widget Package","Application Configuration","ArcPad Package","Code Attachment","Code Sample","Desktop Add In","Desktop Application Template","Desktop Application","Desktop Style","Explorer Add In","Explorer Layer","Geocoding Service","Geometry Service","Geoprocessing Package","Geoprocessing Sample","Geoprocessing Service","Layer File","Layer Package","Layer Template","Layer","Layout","Locator Package","Map Area","Map Document","Map Package","Map Service Definition","Map Template","Mobile Application","Mobile Map Package","Native Application","Network Analysis Service","Operations Dashboard Add In","Project Package","Project Template","Raster Function Template","Rule Package","Scene Package","Service Definition","SQLite Geodatabase","Style","Tile Package","Vector Tile Package","Workflow Manager Package"],site:["Hub Site Application","Site Application"]},tt=et.app,rt=et.dataset,nt=et.document,ot=et.event,it=et.feedback,at=et.initiative,st=et.map,ut=et.other,ct=et.site,lt=["360 VR Experience","Application","CityEngine Web Scene","Code Sample","CSV Collection","CSV","CAD Drawing","Desktop Application","Desktop Application Template","Desktop Style","File Geodatabase","GeoJson","Geoprocessing Package","Geoprocessing Sample","Image","iWork Keynote","iWork Numbers","KML Collection","KML","Layer","Layer File","Layer Package","Layout","Locator Package","Map Package","Map Service Definition","Map Template","Microsoft Excel","Microsoft Powerpoint","Microsoft Visio","Microsoft Word","Notebook","Operations Dashboard Add In","PDF","Pro Map","Project Package","Project Template","Raster function template","Rule Package","Service Definition","Shapefile","Vector Tile Package","Workflow Manager Package"],pt=["Data"],dt={app:tt.concat(it),dataset:rt,document:nt,event:ot,initiative:at,map:st,other:ut,site:ct,downloadableTypes:lt,downloadableTypeKeywords:pt,apiTypes:["Feature Service","Map Service","Image Service"]};function ft(e){return-1!==lt.indexOf(e.type)||e.typeKeywords&&pt.some(function(t){return e.typeKeywords.some(function(e){return e===t})})}function mt(e,t,r,n,o){return{xmin:e,ymin:t,xmax:r,ymax:n,spatialReference:{wkid:o=void 0===o?4326:o}}}function ht(e){return[[e.xmin,e.ymin],[e.xmax,e.ymax]]}var gt={xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:{wkid:4326}};function yt(e){var t=e.portalSelf,r=t.defaultExtent,t=d(t,"helperServices.geometry.url");if(!t)return Promise.resolve(gt);if(!r)return Promise.resolve(gt);t+="/project",r={httpMethod:"POST",params:{geometries:JSON.stringify({geometryType:"esriGeometryEnvelope",geometries:[r]}),transformForward:!1,transformation:"",inSR:r.spatialReference.wkid,outSR:4326,f:"json"}};return e.authentication&&(r.authentication=e.authentication),te(t,r).then(function(e){e=e.geometries[0];return{xmin:e.xmin,ymin:e.ymin,xmax:e.xmax,ymax:e.ymax,spatialReference:{wkid:4326}}}).catch(function(e){return gt})}function vt(e){return Array.isArray(e)&&Array.isArray(e[0])&&Array.isArray(e[1])}var bt=[{type:"CC0-1.0",abbr:"CC0",name:"Public Domain Dedication",url:"http://creativecommons.org/publicdomain/zero/1.0"},{type:"CC-BY-4.0",abbr:"CC BY",name:"Attribution 4.0 International",url:"http://creativecommons.org/licenses/by/4.0"},{type:"CC-BY-3.0",abbr:"CC BY 3.0",name:"Attribution 3.0 Unported",url:"http://creativecommons.org/licenses/by/3.0"},{type:"CC-BY-2.5",abbr:"CC BY 2.5",name:"Attribution 2.5 Generic",url:"http://creativecommons.org/licenses/by/2.5"},{type:"CC-BY-2.0",abbr:"CC BY 2.0",name:"Attribution 2.0 Generic",url:"http://creativecommons.org/licenses/by/2.0"},{type:"CC-BY-1.0",abbr:"CC BY 1.0",name:"Attribution 1.0 Generic",url:"http://creativecommons.org/licenses/by/1.0"},{type:"CC-BY-SA-4.0",abbr:"CC BY-SA",name:"Attribution-ShareAlike 4.0 International",url:"http://creativecommons.org/licenses/by-sa/4.0"},{type:"CC-BY-SA-3.0",abbr:"CC BY-SA 3.0",name:"Attribution-ShareAlike 3.0 Unported",url:"http://creativecommons.org/licenses/by-sa/3.0"},{type:"CC-BY-SA-2.5",abbr:"CC BY-SA 2.5",name:"Attribution-ShareAlike 2.5 Generic",url:"http://creativecommons.org/licenses/by-sa/2.5"},{type:"CC-BY-SA-2.0",abbr:"CC BY-SA 2.0",name:"Attribution-ShareAlike 2.0 Generic",url:"http://creativecommons.org/licenses/by-sa/2.0"},{type:"CC-BY-SA-1.0",abbr:"CC BY-SA 1.0",name:"Attribution-ShareAlike 1.0 Generic",url:"http://creativecommons.org/licenses/by-sa/1.0"},{type:"CC-BY-ND-4.0",abbr:"CC BY-ND",name:"Attribution-NoDerivatives 4.0 International",url:"http://creativecommons.org/licenses/by-nd/4.0"},{type:"CC-BY-ND-3.0",abbr:"CC BY-ND 3.0",name:"Attribution-NoDerivs 3.0 Unported",url:"http://creativecommons.org/licenses/by-nd/3.0"},{type:"CC-BY-ND-2.5",abbr:"CC BY-ND 2.5",name:"Attribution-NoDerivs 2.5 Generic",url:"http://creativecommons.org/licenses/by-nd/2.5"},{type:"CC-BY-ND-2.0",abbr:"CC BY-ND 2.0",name:"Attribution-NoDerivs 2.0 Generic",url:"http://creativecommons.org/licenses/by-nd/2.0"},{type:"CC-BY-ND-1.0",abbr:"CC BY-ND 1.0",name:"Attribution-NoDerivs 1.0 Generic",url:"http://creativecommons.org/licenses/by-nd/1.0"},{type:"CC-BY-NC-4.0",abbr:"CC BY-NC",name:"Attribution-NonCommercial 4.0 International",url:"https://creativecommons.org/licenses/by-nc/4.0"},{type:"CC-BY-NC-3.0",abbr:"CC BY-NC 3.0",name:"Attribution-NonCommercial 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc/3.0"},{type:"CC-BY-NC-2.5",abbr:"CC BY-NC 2.5",name:"Attribution-NonCommercial 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc/2.5"},{type:"CC-BY-NC-2.0",abbr:"CC BY-NC 2.0",name:"Attribution-NonCommercial 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc/2.0"},{type:"CC-BY-NC-1.0",abbr:"CC BY-NC 1.0",name:"Attribution-NonCommercial 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc/1.0"},{type:"CC-BY-NC-SA-4.0",abbr:"CC BY-NC-SA",name:"Attribution-NonCommercial-ShareAlike 4.0 International",url:"https://creativecommons.org/licenses/by-nc-sa/4.0"},{type:"CC-BY-NC-SA-3.0",abbr:"CC BY-NC-SA 3.0",name:"Attribution-NonCommercial-ShareAlike 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc-sa/3.0"},{type:"CC-BY-NC-SA-2.5",abbr:"CC BY-NC-SA 2.5",name:"Attribution-NonCommercial-ShareAlike 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/2.5"},{type:"CC-BY-NC-SA-2.0",abbr:"CC BY-NC-SA 2.0",name:"Attribution-NonCommercial-ShareAlike 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/2.0"},{type:"CC-BY-NC-SA-1.0",abbr:"CC BY-NC-SA 1.0",name:"Attribution-NonCommercial-ShareAlike 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/1.0"},{type:"CC-BY-NC-ND-4.0",abbr:"CC BY-NC-ND",name:"Attribution-NonCommercial-NoDerivatives 4.0 International",url:"https://creativecommons.org/licenses/by-nc-nd/4.0"},{type:"CC-BY-NC-ND-3.0",abbr:"CC BY-NC-ND 3.0",name:"Attribution-NonCommercial-NoDerivs 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc-nd/3.0"},{type:"CC-BY-NC-ND-2.5",abbr:"CC BY-NC-ND 2.5",name:"Attribution-NonCommercial-NoDerivs 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/2.5"},{type:"CC-BY-NC-ND-2.0",abbr:"CC BY-NC-ND 2.0",name:"Attribution-NonCommercial-NoDerivs 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/2.0"},{type:"CC-BY-NC-ND-1.0",abbr:"CC BY-NC-ND 1.0",name:"Attribution-NonCommercial-NoDerivs 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/1.0"},{type:"PDDL-1.0",abbr:"PDDL",name:"ODC Public Domain Dedication and License",url:"http://opendatacommons.org/licenses/pddl/summary"},{type:"ODbL-1.0",abbr:"ODbL",name:"ODC Open Database License",url:"http://opendatacommons.org/licenses/odbl/summary"},{type:"ODC-BY-1.0",abbr:"ODC BY",name:"ODC Attribution License",url:"http://opendatacommons.org/licenses/by/summary"}];function wt(r){var e={type:(r=r||"")?"custom":"none",text:r},t=!1,n=bt.filter(function(e){return t=e,(e=(e=r).toLowerCase()).includes(t.name.toLowerCase())||e.includes(t.url.toLowerCase())||e.includes(t.abbr.toLowerCase());var t});return n.length&&(t=!0,e=n.pop()),t||(n=void 0,!function(e){try{return!!new URL(e).protocol}catch(e){return!1}}(r)?(t=r,new RegExp(/^<a[\s]+(href\s?=\s?["'].*?["'])+([^>]?)>((?:.(?!\<\/a\>))*.)?<\/a>$|^<a[\s]+(href\s?=\s?["'].*?["'])+([^>]?)\/>/).test(t)&&(t=new RegExp(/href\s?=\s?["'](.*?)["']/),n=r.match(t)[1])):n=r,n&&(e.url=n,e.text="")),e.text||delete e.text,e}var Ct={};function kt(e){void 0===e&&(e=""),console.warn("DEPRECATED: Use getCollection() instead. getCategory will be removed at v10.0.0");e=St(e);return"feedback"===e?"app":e}function At(e){var t=(e=void 0===e?{}:e).type,r=e.typeKeywords||[];return("Site Application"===e.type||"Web Mapping Application"===e.type&&E(r,"hubSite"))&&(t="Hub Site Application"),("Site Page"===e.type||"Web Mapping Application"===e.type&&E(r,"hubPage"))&&(t="Hub Page"),"Hub Initiative"===e.type&&E(r,"hubInitiativeTemplate")&&(t="Hub Initiative Template"),t="Web Mapping Application"===e.type&&E(r,"hubSolutionTemplate")?"Solution":t}function St(e){if(Ct[e=void 0===e?"":e])return Ct[e];for(var t=0,r=Object.keys(et);t<r.length;t++)for(var n=r[t],o=0,i=et[n];o<i.length;o++){var a=i[o];if(e.toLowerCase()===a.toLowerCase())return Ct[e]=n}}function Tt(e){return e&&"feature service"===e.toLowerCase()}function Et(e){return(e=e&&e.match(/\/\d+$/))&&e[0].slice(1)}function It(e){return Et(e.url)||Tt(e.type)&&E(e.typeKeywords,"Singlelayer")&&"0"}function xt(t,e){if(E(["template","feedback"],t.family))return t.id;if(Bt(t)){var r=(d(e,"data.values.pages")||[]).find(function(e){return e.id===t.id});return r?r.slug:t.id}if(t.slug){r=d(e,"domainInfo.orgKey");return d(e,"data.values.isUmbrella")?t.slug:Dt(t.slug,r)}return t.hubId||t.id}function Ot(e){e=e?e.split("_"):[];return{itemId:e[0],layerId:e[1]}}function Dt(e,t){return t&&e.match(t+"::")?e.split(t+"::")[1]:e}function Pt(e){if(!e)return e;var t=["categories",""];return e.map(function(e){return e.split("/")}).reduce(function(e,t,r){return P(e,t)},[]).filter(function(e){return!E(t,e.toLowerCase())})}function Nt(e){var t,r;switch((e||"").toLowerCase()){case"image service":t="dataset";break;case"feature service":case"raster layer":t="map";break;case"microsoft excel":t="document";break;case"cad drawing":case"feature collection template":case"report template":t="content";break;default:t={other:"content",solution:"template"}[r=St(e)]||r}return t}function Rt(e){return console.warn("DEPRECATED: Use getFamily() instead. getItemHubType() will be removed at v10.0.0"),St(At(e="string"==typeof e?{type:e}:e))}function _t(e){var t=new Date(e.created),r="item.created",n=e.properties,r=Object.assign({},e,{identifier:e.id,errors:[],item:e,name:e.title,hubType:Rt(e),categories:Pt(e.categories),itemCategories:e.categories,summary:e.snippet||e.description,publisher:{name:e.owner,username:e.owner},permissions:{visibility:e.access,control:e.itemControl||"view"},actionLinks:n&&n.links,hubActions:n&&n.actions,metrics:n&&n.metrics,isDownloadable:ft(e),boundary:(n=e.extent)&&n.length&&{geometry:mt(n[0][0],n[0][1],n[1][0],n[1][1])},license:{name:"Custom License",description:e.accessInformation},createdDate:t,createdDateSource:r,publishedDate:t,publishedDateSource:r,updatedDate:new Date(e.modified),updatedDateSource:"item.modified",structuredLicense:wt(e.licenseInfo)});return Mt(r,e.type)}function Ut(e){if(e){var t=e.id,r=e.attributes;if(r){var n=Ot(t).itemId,o=r.owner,i=r.orgId,a=r.created,s=r.modified,u=r.name,c=r.title,l=r.type,p=r.typeKeywords,d=r.description,f=r.snippet,m=r.tags,h=r.thumbnail,g=r.categories,y=r.contentStatus,v=r.spatialReference,b=r.accessInformation,w=r.licenseInfo,C=r.culture,k=r.url,A=r.access,S=r.proxyFilter,T=r.properties,E=r.appCategories,I=r.industries,x=r.languages,O=r.largeThumbnail,D=r.banner,P=r.screenshots,N=r.listed,R=r.ownerFolder,_=r.size,U=r.protected,j=r.commentsEnabled,M=r.numComments,F=r.numRatings,L=r.avgRating,G=r.numViews,q=r.itemControl,B=r.scoreCompleteness,Y=r.itemExtent,e=r.itemModified,t=r.modifiedProvenance,r=r.serviceSpatialReference;return{id:n,owner:o,orgId:i,created:a,modified:e||"item.modified"===t&&s,title:c||u,type:k&&We(k)||l,typeKeywords:p,description:d,tags:m,snippet:f,thumbnail:h,extent:Y||[],categories:g,contentStatus:y,spatialReference:v||r,accessInformation:b,licenseInfo:w,culture:C,url:k,access:A,size:_,protected:U,proxyFilter:S,properties:T,appCategories:E,industries:I,languages:x,largeThumbnail:O,banner:D,screenshots:P,listed:N,ownerFolder:R,commentsEnabled:j,numComments:M,numRatings:F,avgRating:L,numViews:G,itemControl:q,scoreCompleteness:B}}}}function jt(e,t){var r=e.id,r=e.slug||t||r,r=x(x({},e),{hubId:t,identifier:r});return Lt(r,{relative:Gt(r)})}var Mt=function(e,t){var r=Nt(t),n=At(x(x({},e.item),{type:t})),n=x(x({},e),{type:t,family:r,normalizedType:n});return Lt(n,{relative:Gt(n)})},Ft=function(e,t){var r=xt(e,t),r=Gt(e,r),t=d(t,"item.url").replace(/\/$/,"");return Lt(e,{relative:r,site:""+t+r})},Lt=function(e,t){t=x(x({},e.urls),t);return x(x({},e),{urls:t})},Gt=function(e,t){var r=e.family,n=t||e.identifier,o=qt(e);return o||(t="/content","feedback"===e.family?t="/feedback/surveys":Bt(e)?t="/pages":-1<["app","dataset","document","map","template"].indexOf(r)&&(t="/"+r+"s"),o=t+"/"+n),o},qt=function(e){var t,r=e.normalizedType,n=e.identifier;return"Solution"===r&&(0<(null===(e=e.typeKeywords)||void 0===e?void 0:e.indexOf("Deployed"))&&(t="/content/"+n),t="/templates/"+n+"/about"),t},Bt=function(e){return E(["Hub Page","Site Page"],e.type)};const Yt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";const Wt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var Ht={atob:function(t){if((t=(t=(t=`${t}`).replace(/[ \t\n\f\r]/g,"")).length%4==0?t.replace(/==?$/,""):t).length%4==1||/[^+/0-9A-Za-z]/.test(t))return null;let r="",n=0,o=0;for(let e=0;e<t.length;e++)n<<=6,n|=function(e){e=Yt.indexOf(e);return e<0?void 0:e}(t[e]),o+=6,24===o&&(r+=String.fromCharCode((16711680&n)>>16),r+=String.fromCharCode((65280&n)>>8),r+=String.fromCharCode(255&n),n=o=0);return 12===o?(n>>=4,r+=String.fromCharCode(n)):18===o&&(n>>=2,r+=String.fromCharCode((65280&n)>>8),r+=String.fromCharCode(255&n)),r},btoa:function(e){let t;for(e=`${e}`,t=0;t<e.length;t++)if(255<e.charCodeAt(t))return null;let r="";for(t=0;t<e.length;t+=3){const n=[void 0,void 0,void 0,void 0];n[0]=e.charCodeAt(t)>>2,n[1]=(3&e.charCodeAt(t))<<4,e.length>t+1&&(n[1]|=e.charCodeAt(t+1)>>4,n[2]=(15&e.charCodeAt(t+1))<<2),e.length>t+2&&(n[2]|=e.charCodeAt(t+2)>>6,n[3]=63&e.charCodeAt(t+2));for(let e=0;e<n.length;e++)void 0===n[e]?r+="=":r+=function(e){if(0<=e&&e<64)return Wt[e];return}(n[e])}return r}},Vt="4326",zt={csv:{name:"CSV",itemTypes:["CSV","CSV Collection"],supportsProjection:!0},kml:{name:"KML",itemTypes:["KML","KML Collection"],supportsProjection:!1},shapefile:{name:"Shapefile",itemTypes:["Shapefile"],supportsProjection:!0},fileGeodatabase:{name:"File Geodatabase",itemTypes:["File Geodatabase"],supportsProjection:!0},geojson:{name:"GeoJson",itemTypes:["GeoJson"],supportsProjection:!1},excel:{name:"Excel",itemTypes:["Microsoft Excel"],supportsProjection:!0},featureCollection:{name:"Feature Collection",itemTypes:["Feature Collection"],supportsProjection:!0}};function Jt(e){if("object"!=typeof e)return e;var t=e.wkid,e=e.wkt;return t?t+"":Ht.btoa(e)}function Kt(e){return"spatialRefId:"+Jt(function(t){var r;try{r=JSON.parse(t)}catch(e){r=t}return r}(e))}function $t(e){return"exportItem:"+e}function Qt(e){return e?"exportLayer:0"+e:"exportLayer:null"}function Xt(e){var t,r=e.autoAddResult,n=e.inviteResult,o=e.primaryEmailResult,e=e.secondaryEmailResult;return(o||e)&&(t={success:(e=[o,e].filter(function(e){return e})).every(function(e){return e.success})},(e=e.reduce(function(e,t){return e.concat(b(t,"errors",[]))},[])).length&&(t.errors=e)),{success:[r,n,t].filter(function(e){return e}).every(function(e){return e.success}),autoAdd:r,invite:n,email:t}}function Zt(t,e){var r;return t&&(r=!d(t,"notAdded.length")&&!t.errors,e.autoAddResult={success:r},r||(r=t.errors||[],d(t,"notAdded.length")&&r.push(new J("Users not auto-added: "+t.notAdded.join(", "))),e.autoAddResult.errors=r,r=e.usersToAutoAdd.filter(function(e){return E(t.notAdded,e.username)}),e.usersToInvite=e.usersToInvite.concat(r))),e}function er(e,t){return e.orgId===t.orgId}function tr(e){return"org_admin"===e.role&&!e.roleId}function rr(e,t,r,n){var o=Promise.resolve(null);return e.length&&(e={authentication:r,message:t.body,subject:t.subject,notificationChannelType:"email",users:e.map(function(e){return e.username})},n||(e.batchSize=1),o=Ie(e)),o}function nr(t){var r,e=Promise.resolve(t);return t.email&&t.secondaryRO&&d(t,"inviteResult.success")&&(r=b(t,"secondaryRO.portalSelf.user",{}),e=rr(t.usersToInvite.filter(function(e){return er(e,r)}),t.email,t.secondaryRO.authentication,tr(r)).then(function(e){return t.secondaryEmailResult=e,t})),e}function or(e,t,r){var n=Promise.resolve(null);return n=t.length?ve({id:e,users:t.map(function(e){return e.username}),authentication:r}):n}function ir(t){return or(d(t,"groupId"),d(t,"usersToAutoAdd"),d(t,"primaryRO.authentication")).then(function(e){return Zt(e,t)})}function ar(e,t,r,n,o){void 0===n&&(n=20160),void 0===o&&(o="group_member");var i=Promise.resolve(null);return i=t.length?ke({id:e,users:t.map(function(e){return e.username}),authentication:r,role:o,expiration:n}):i}function sr(t){return ar(d(t,"groupId"),d(t,"usersToInvite"),d(t,"primaryRO.authentication")).then(function(e){return t.inviteResult=e,t})}function ur(t){var e=Promise.resolve(t);return e=t.email&&d(t,"inviteResult.success")?rr(t.usersToEmail,t.email,t.primaryRO.authentication,tr(t.requestingUser)).then(function(e){return t.primaryEmailResult=e,t}):e}function cr(e,t){var r,n=[];return-1!==t.privileges.indexOf("portal:admin:assignToGroups")&&(r=[t.orgId,t.cOrgId].filter(function(e){return e}),n=e.filter(function(e){return-1!==r.indexOf(e.orgId)})),n}function lr(e,t){var r=cr(e,t);return e.filter(function(t){return!r.some(function(e){return e.username===t.username})})}function pr(e,t,r){void 0===r&&(r=!1);e=lr(e,t).filter(function(e){return er(e,t)});return r&&e.push(t),e}function dr(e,t){if("object"==typeof e&&null!==e&&"string"==typeof t){for(var r=t.split("."),n=0;n<r.length-1;n++){if(!e.hasOwnProperty(r[n]))return;e=e[r[n]]}delete e[r[r.length-1]]}}function fr(e){var t=p(e.item);return t.text=JSON.stringify(e.data),t}function mr(e,t){return Promise.all([se(e,t),(r=e,r=ue(e,t=t)+"/data",(t=x({httpMethod:"GET",params:{}},t)).file&&(t.params.f=null),te(r,t).catch(function(e){var t=RegExp(/The string did not match the expected pattern|(Unexpected end of (JSON input|data at line 1 column 1))/i);if(!t.test(e.message))throw e}))]).then(function(e){return{item:e[0],data:e[1]}});var r}var hr=function(e,t,r){return void 0===r&&(r=void 0),t.split(".").reduce(function(e,t){return e?e[t]:r},e)};function gr(r,n){return Object.keys(r).reduce(function(e,t){return e[t]=n(r[t],t,r),e},{})}var yr=function(e){return e instanceof Date},vr=function(e){return"function"==typeof e},br=function(e){return"object"==typeof e},wr=function(e){return e instanceof RegExp};var Cr=function(e){return"object"==typeof e};function kr(e){return Array.isArray(e)?function(e){var t=e,e=e.reduce(function(e,t){return Tr(t)&&Sr(t)&&(e<(t=Ar(t))&&(e=t)),e},-1);-1<e&&(t=0===e?[]:"{{delete:"+(e-1)+"}}");return t}(e.map(t).filter(function(e){return null!=e})):e&&Cr(e)?function(o){var e=Object.keys(o).reduce(function(e,t){var r,n=o[t];return Tr(n)&&Sr(n)?(r=Ar(n))>e.maxLevel&&(e.maxLevel=r):e.obj[t]=n,e},{obj:{},maxLevel:-1});e=0<e.maxLevel?1===e.maxLevel?void 0:"{{delete:"+(e.maxLevel-1)+"}}":e.obj;return e}(gr(e,t)):function(e){var t=e;"string"==typeof e&&Sr(e)&&(t=function(e){var t=e,e=Ar(e);t=0===e?void 0:"{{delete:"+e+"}}";return t}(e));return t}(e);function t(e,t){return kr(e)}}var Ar=function(e){return parseInt(e.replace(/{|}/g,"").split(":")[1])};function Sr(e){return e&&"string"==typeof e&&-1<e.indexOf("{{delete")}var Tr=function(e){return"string"==typeof e};function Er(e,t,r,n){return void 0===n&&(n=0),t?t:"{{delete:"+n+"}}"}var Ir=function(e){var t={};if(Array.isArray(e))t=e.map(Ir);else if("object"==typeof e)for(var r in e)null!=e[r]&&"object"==typeof e[r]?t[r]=Ir(e[r]):t[r]=e[r];else t=e;return t},xr=/{{\s*?[\w].*?}}/g,Or=function(e){return"string"==typeof e};function Dr(e){return e||""===e||0===e}function Pr(e,a,s){if((s=Ir(s=void 0===s?null:s)||{}).optional)throw new Error("Please do not pass in an `optional` transform; adlib provides that internally.");return s.optional=Er,kr(function r(e,n,o){return o=o||"",Array.isArray(e)?e.map(t):!e||!br(e)||yr(e)||wr(e)||vr(e)?n(e,o):Object.assign({},e,gr(e,t));function t(e,t){return r(e,n,o?o+"."+t:t)}}(e,function(t,e){if(!Or(t))return t;var r,n=t.match(xr);return n&&n.length?(n.map(function(e){var o,i=!1,t=e.replace(/{|}/g,"").trim();-1<t.indexOf("||")&&(r=t.split("||").map(function(e){return e.trim()}),o=r.length,t=r.find(function(e,t){var r,n;return(n=a,r=(r=e).split(":")[0],null!=(r=hr(n,r,null)))?e:t+1===o&&(i=!0,isNaN(e)?e:parseInt(e))}));var r={key:e,value:t};return i||(t=function(e,t,r){var n,o=e.split(":");if(1<o.length){var i,a=o[0],s=o[1];if(o[2]&&(i=o[2]),!r||!r[s]||"function"!=typeof r[s])throw new Error("Attempted to apply non-existant transform "+s+" on "+a+" with params "+e);n=hr(t,a),n=r[s](a,n,t,i)}else n=hr(t,e);return n}(t,a,s),r.value=Dr(t)?t:e),r}).forEach(function(e){t===e.key?("string"==typeof e.value&&(isNaN(e.value)||""===e.value||(-1<e.value.indexOf(".")?e.value=parseFloat(e.value):e.value=parseInt(e.value))),r=e.value):t=t.replace(e.key,e.value)}),Dr(r)?r:t):t}))}function Nr(e,t,r){return Pr(e,t,r)}var Rr=["id","isOrgItem","proxyFilter","ownerFolder","protected","owner","created","modified","guid","name","access","size","listed","numComments","numRatings","avgRating","numViews","scoreCompleteness","groupDesignations","listed","screenshots","banner","appCategories","industries","languages","largeThumbnail"];function _r(e,t,r){return ge({q:'title:"'+e+'" AND '+Object.keys(t).map(function(e){return e+':"'+t[e]+'"'}).join(" AND "),authentication:r}).then(function(e){return 0<e.results.length}).catch(function(e){throw Error("Error in doesItemExistWithTitle "+e)})}function Ur(e,t){var r=e;return r=-1===e.indexOf("token")&&-1<e.indexOf(t.authentication.portal)?e+"?token="+t.authentication.token:r}function jr(e,t){return(t=void 0===t?{}:t).credentials||(t.credentials="same-origin"),fetch(e,t).then(function(e){return e.blob()})}function Mr(r){return jr(r.url).then(function(e){return ie(t={id:r.id,owner:r.owner,name:r.fileName,resource:e,authentication:r.authentication}).then(function(e){e=oe(t)+"/content/users/"+e+"/items/"+t.id+"/addResources";return t.params=x({file:t.resource,fileName:t.name,resourcesPrefix:t.prefix,text:t.content,access:t.private?"private":"inherit"},t.params),te(e,t)});var t})}function Fr(t){return jr(t.url).then(function(e){return ae({item:{id:t.id,owner:t.owner},params:{fileName:t.fileName,thumbnail:e},authentication:t.authentication}).catch(function(e){return Promise.resolve()})}).catch(function(e){return Promise.resolve()})}function Lr(e,t,r){if(!e||!e.thumbnail)return null;var n=r||{},o=n.token,n=n.width,r=Be(e,t,o=!o&&"string"==typeof r?r:o).split("?"),o=r[0],r=r[1],r=new URLSearchParams(r);r.delete("f"),n&&r.append("w",n+"");r=r.toString(),e=o+"/info/"+e.thumbnail;return r?e+"?"+r:e}var Gr={arcgis:{label:"ArcGIS Online",url:"https://www.arcgis.com",type:"arcgis"},arcgisQA:{label:"ArcGIS Online QAEXT",url:"https://qaext.arcgis.com",type:"arcgis"},arcgisDEV:{label:"ArcGIS Online DEVEXT",url:"https://devext.arcgis.com",type:"arcgis"},hub:{label:"ArcGIS Hub",url:"https://hub.arcgis.com/api",type:"arcgis-hub"},hubDEV:{label:"ArcGIS Hub DEV",url:"https://hubdev.arcgis.com/api",type:"arcgis-hub"},hubQA:{label:"ArcGIS Hub QA",url:"https://hubqa.arcgis.com/api",type:"arcgis-hub"}};function qr(e){return"string"==typeof e&&e in Gr?Gr[e]:e}function Br(e,t){var r=p(e);return t.from<e.from&&(r.from=t.from),t.to>e.to&&(r.to=t.to),r}function Yr(r,n){var o={};return["any","all","not","exact"].forEach(function(e){var t=e,e=P(Wr(r,t),Wr(n,t));e.length&&(o[t]=e.filter(h))}),o}function Wr(e,t){var r=[];return e[t]&&(t=e[t],r=Array.isArray(t)?t:[t]),r}function Hr(e){var t={};return Array.isArray(e)?t={any:e}:("string"==typeof e&&(t={any:[e]}),"object"==typeof e&&(t=e)),t}function Vr(e){var t=new Date,r={type:"date-range",from:t.getTime(),to:t.getTime()};switch(e.unit){case"hours":case"days":case"weeks":r.from=r.to-{min:6e4,hours:36e5,days:864e5,weeks:6048e5}[e.unit]*e.num;break;case"months":t.setMonth(t.getMonth()-e.num),r.from=t.getTime();break;case"years":t.setFullYear(t.getFullYear()-e.num),r.from=t.getTime()}return r}function zr(e,t,r){var n=p(e),e=t.q,t=t.filter;return e&&(n.q=(n.q?" ("+n.q+" "+r+" "+e+")":e).trim()),t&&(n.filter=(n.filter?"("+n.filter+" "+r+" "+t+")":t).trim()),n}function Jr(e,t){var r={q:"",filter:""};return t.exact&&(P(["username","firstname","lastname","fullname","email"],["title","tags","typekeywords","type","name","owner"],["title","typekeywords","owner"]).includes(e)?r.filter=$r("AND",e,t.exact):("string"==typeof t.exact&&(t.all||(t.all=[]),"string"==typeof t.all&&(t.all=[t.all]),t.all.push(t.exact)),Array.isArray(t.exact)&&(t.all||(t.all=[]),"string"==typeof t.all&&(t.all=[t.all]),t.all=t.all.concat(t.exact)))),t.any&&(r.q=$r("OR",e,t.any)),t.all&&(r.q=(r.q?r.q+" AND ":"")+$r("AND",e,t.all)),t.not&&(r.q=(r.q?r.q+" AND ":"")+$r("OR","-"+e,t.not)),r}function Kr(e,t){return{q:e+":["+t.from+" TO "+t.to+"]",filter:""}}function $r(e,t,r){return Array.isArray(r)?"("+t+':"'+r.join('" '+e+" "+t+':"')+'")':t+':"'+r+'"'}function Qr(e,t,r,n){var o=p(e);return e.authentication&&(o.authentication=Xe.deserialize(e.authentication.serialize())),o.start=-1<t?t:r+1,function(e){return e&&(o.authentication=e),n(o)}}function Xr(e,t,r){var n=null;return t.thumbnail&&(n=e+"/community/groups/"+t.id+"/info/"+t.thumbnail,r&&"public"!==t.access&&(n=n+"?token="+r)),n}function Zr(e,t,r){var n=null;return t.thumbnail&&(n=e+"/community/users/"+t.username+"/info/"+t.thumbnail,r&&"public"!==t.access&&(n=n+"?token="+r)),n}var en={$apps:[{type:{any:["Code Sample","Web Mapping Application","Mobile Application","Application","Desktop Application Template","Desktop Application","Operation View","Dashboard","Operations Dashboard Extension","Workforce Project","Insights Workbook","Insights Page","Insights Model","Hub Page","Hub Initiative","Hub Site Application","StoryMap","Web Experience","Web Experience Template","Form"],not:["Code Attachment","Featured Items","Symbol Set","Color Set","Windows Viewer Add In","Windows Viewer Configuration","Map Area","Indoors Map Configuration"]},typekeywords:{not:["MapAreaPackage","SMX"]}}],$storymap:[{type:"StoryMap"},{type:"Web Mapping Application",typekeywords:["Story Map"]}],$dashboard:[{type:"Dashboard",typekeywords:{any:["Dashboard"],not:["ArcGIS Operation View","Add In","Extension"]}}],$dataset:[],$experience:[{type:{any:["Web Experience"],not:["Web Experience Template"]}}],$site:[{type:["Hub Site Application","Site Application"]},{type:["Web Mapping Application"],typekeywords:["hubSite"]}],$initiative:[{type:{any:"Hub Initiative",not:"Hub Initiative Template"}}],$document:[{typekeywords:{any:"Document",not:["MapAreaPackage","SMX"]},type:{any:["Image","Layout","Desktop Style","Project Template","Report Template","Pro Report","Statistical Data Collection","360 VR Experience","netCDF","PDF","CSV","Administrative Report","Raster function template"],not:["Image Service","Explorer Document","Explorer Map","Globe Document","Scene Document","Code Attachment","Featured Items","Symbol Set","ColorSet","Windows Viewer Add In","Windows Viewer Configuration","Map Area","Indoors Map Configuration"]}}]};function tn(e){var t,o=[];return null!==(t=e.aggregations)&&void 0!==t&&t.counts&&e.aggregations.counts.forEach(function(r){var e={label:r.fieldName,attribute:r.fieldName,type:"multi-select"},n=[];r.fieldValues.forEach(function(e){var t={filterType:"content"};t[r.fieldName]=e.value;t={label:e.value,value:e.value,count:e.count,selected:!1,filter:t};n.push(t)}),e.options=n,o.push(e)}),o}function rn(e){var t=nn(e);return Array.isArray(e.subFilters)&&(t.subFilters=t.subFilters.reduce(function(e,t){return"string"==typeof t?en[t]&&(e=e.concat(en[t])):e.push(t),e},[])),sn(t)}function nn(e){var r=p(e);return r.subFilters=r.subFilters||[],r.type&&(Array.isArray(r.type)?r.type=r.type.reduce(function(e,t){return on(t)?r.subFilters=r.subFilters.concat(an(t)):e.push(t),e},[]):on(r.type)&&(e=r.type,r.subFilters=r.subFilters.concat(an(e)),delete r.type)),r}function on(e){var t=!1;return t="string"==typeof e?e in en:t}function an(e){return en[e]}function sn(t){var r={};t.term&&(r.term=t.term);var e,n=["created","modified"],o=P(["filterType","subFilters","term"],n);return Object.entries(t).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r[t]=Hr(e))}),t.subFilters&&Array.isArray(t.subFilters)&&(e=t.subFilters,r.subFilters=e.map(sn)),n.forEach(function(e){t[e]&&("relative-date"===t[e].type?r[e]=Vr(t[e]):r[e]=p(t[e]))}),r}function un(e){var t,r=cn(e);return e.subFilters&&(t=e.subFilters.reduce(function(e,t){return e="object"==typeof t?zr(e,cn(t),"OR"):e},{q:"",filter:""}),r=zr(r,t,"AND")),e.term&&(r.q=(e.term+" "+r.q).trim()),r}function cn(e){var r={q:"",filter:""},n=["created","modified"],o=P(["filterType","subFilters","term"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=zr(r,Jr(t,e),"AND")),n.includes(t)&&(r=zr(r,Kr(t,e),"AND"))}),r}function ln(r){var n={},o=["created","modified"],i=P(["term","searchUserAccess"],o);return Object.entries(r).forEach(function(e){var t=e[0],e=e[1];i.includes(t)||k(t,Hr(e),n),o.includes(t)&&(e=p(d(r,t)),"relative-date"===d(r,t+".type")?k(t,Vr(e),n):k(t,e,n))}),r.hasOwnProperty("searchUserAccess")&&(n.searchUserAccess=r.searchUserAccess),r.term&&(n.term=r.term),n}function pn(e){var r={q:"",filter:""},n=["created","modified"],o=P(["term","searchUserAccess","filterType"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=zr(r,Jr(t,e),"AND")),n.includes(t)&&(r=zr(r,Kr(t,e),"AND"))}),e.hasOwnProperty("searchUserAccess")&&(r.searchUserAccess=e.searchUserAccess),e.term&&(r.q=(e.term+" "+r.q).trim()),r}function dn(r){var n={},o=["created","modified","lastlogin"],i=P(["disabled","term"],o);return Object.entries(r).forEach(function(e){var t=e[0],e=e[1];i.includes(t)||k(t,Hr(e),n),o.includes(t)&&(e=p(d(r,t)),"relative-date"===d(r,t+".type")?k(t,Vr(e),n):k(t,e,n))}),r.hasOwnProperty("disabled")&&(n.disabled=r.disabled),r.term&&(n.term=r.term),n}function fn(e){var r={q:"",filter:""},n=["created","modified","lastlogin"],o=P(["term","filterType"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=zr(r,Jr(t,e),"AND")),n.includes(t)&&(r=zr(r,Kr(t,e),"AND"))}),e.hasOwnProperty("disabled")&&(r.disabled=e.disabled),e.term&&(r.q=("("+e.term+") "+r.q).trim()),r}function mn(o){return ge(o).then(function(e){var t=-1<e.nextStart,r=e.results.map(_t);o.site&&(r=r.map(function(e){return Ft(e,o.site)}));var n=tn(e);return{total:e.total,results:r,facets:n,hasNext:t,next:Qr(o,e.nextStart,e.total,mn)}})}function hn(o){function i(e){return e.siteTeamUrl=o.site.item.url+"/teams/"+e.id+"/about",e}var e,t,r=(null===(e=o.authentication)||void 0===e?void 0:e.portal)||"https://www.arcgis.com/sharing/rest";o.authentication&&(t=o.authentication.token);function a(e){return e.thumbnailUrl=Xr(r,e,t),e}return he(o,"group").then(function(e){var t,r=-1<e.nextStart,n=e.results.map(a);return null!==(t=null===(t=o.site)||void 0===t?void 0:t.item)&&void 0!==t&&t.url&&(n=e.results.map(i)),{hasNext:r,total:e.total,results:n,next:Qr(o,e.nextStart,e.total,hn)}})}function gn(o){function i(e){return e.profileUrl=o.site.item.url+"/people/"+e.username+"/profile",e}function a(e){return e.thumbnail&&(e.thumbnailUrl=Zr(t,e,r)),e}var t=o.authentication.portal,r=o.authentication.token;return he(o,"user").then(function(e){var t,r=-1<e.nextStart,n=e.results.map(a);return null!==(t=null===(t=o.site)||void 0===t?void 0:t.item)&&void 0!==t&&t.url&&(n=e.results.map(i)),{hasNext:r,total:e.total,results:n,next:Qr(o,e.nextStart,e.total,gn)}})}function yn(t){return O(this,void 0,void 0,function(){return D(this,function(e){return 200<=t.status&&t.status<300?[2,t.json()]:[2,t.json().then(function(e){if(e.error)throw new Error(e.error.title+" :: "+e.error.detail+" :: "+t.status);throw new Error("Got "+t.status+" "+t.statusText)})]})})}function vn(e){var t={},e=d(e,"authentication.token");return e&&(t.Authorization=e),t}function bn(e){return(e||"https://hub.arcgis.com")+"/api/v3/domains"}function wn(e,t){var r=e,n="hubsubdomain|"+(r=-1<e.indexOf("#/")?e.split("#/")[1]:r);return ge(Object.assign({q:"typekeywords: "+n},t)).then(function(e){return e.results.filter(function(e){return E(e.typeKeywords,n)})[0]}).then(function(e){if(!e)throw new Error("site not found");return{hostname:e.url,siteId:e.id}})}function Cn(e,t){if(t.isPortal)throw new Error("domainExists is not available in ArcGIS Enterprise.");e=Le(e);e=bn(t.hubApiUrl)+"/"+e,t=vn(t);return fetch(e,{method:"GET",headers:t,mode:"cors"}).then(function(e){return 404!==e.status})}function kn(e,t){return wn(e,t).then(function(e){return!0}).catch(function(e){return!1})}function An(t,r,n,o){var i=t;return Cn((i=(o=void 0===o?0:o)?t+"-"+o:t)+"-"+r,n).then(function(e){return e?An(t,r,n,o+1):i})}function Sn(t,r,n){var o=(n=void 0===n?0:n)?t+"-"+n:t;return kn(o,r).then(function(e){return e?Sn(t,r,n+1):o})}function Tn(e,t){if(t.isPortal)return wn(e,t);e=bn(t.hubApiUrl)+"/"+e,t=vn(t);return fetch(e,{method:"GET",headers:t,mode:"cors"}).then(yn)}function En(e,t){var r=p(e),e=63;return t&&(e-=t.length+1),r=r.length>e?r.slice(0,e-6)+"-"+j(5):r}function In(e,t){return mr(e,t).then(Nn)}function xn(e){if(1.4<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.values.gacode");return t.data.values.telemetry={consentNotice:{isTheme:!0,consentText:"",policyURL:""},customAnalytics:{ga:{customerTracker:{enabled:Boolean(e),id:e}}}},dr(t,"data.values.gacode"),k("item.properties.schemaVersion",1.4,t),t}var On=1.5;function Dn(e){if(1.5<=d(e,"item.properties.schemaVersion"))return e;var r,t=p(e),e=t.data.values.dcatConfig;return t.data.feeds={},e&&(t.data.feeds.dcatUS11=(r=JSON.stringify(e),Object.keys(Pn).forEach(function(e){var t=Pn[e];r=r.split(e).join(t)}),JSON.parse(r))),t.item.properties.schemaVersion=1.5,t}var Pn={"{{default.name}}":"{{name}}","{{default.description}}":"{{description}}","{{item.tags}}":"{{tags}}","{{item.created:toISO}}":"{{created:toISO}}","{{item.modified:toISO}}":"{{modified:toISO}}","{{default.source.source}}":"{{source}}","{{item.owner}}":"{{owner}}","{{org.portalProperties.links.contactUs.url}}":"{{orgContactEmail}}","{{org.name}}":"{{orgName}}","{{item.categories}}":"{{categories}}","{{item.licenseInfo}}":"{{licenseInfo}}","{{item.modified}}":"{{modified}}","{{enrichments.categories}}":"{{categories}}","{{default.id}}":"{{id}}","{{item.licenseInfo || No License}}":"{{licenseInfo || No License}}","{{org.portalProperties.links.contactUs.url || mailto:data@tempe.gov}}":"{{orgContactEmail || mailto:data@tempe.gov}}","{{default.description || No Description}}":"{{description || No Description}}","{{item.id}}":"{{id}}"};function Nn(e){return d(e,"item.properties.schemaVersion")===On?e:e=Dn(e=xn(e=function(e){if(1.3<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.catalog.groups")||[];return t.data.catalog.groups=e.filter(M),t.item.properties.schemaVersion=1.3,t}(e=function(e){if(1.2<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.catalog")||{};return d(t,"data.values.groups")&&(e.groups=p(t.data.values.groups),delete t.data.values.groups),t.data.catalog=e,t.item.properties.schemaVersion=1.2,t}(e=function(e){if(1.1<=d(e,"item.properties.schemaVersion"))return e;var t=p(e);return["subdomain","defaultHostname","internalUrl","customHostname","externalUrl"].forEach(function(e){t.data.values[e]&&"string"==typeof t.data.values[e]&&(t.data.values[e]=t.data.values[e].toLowerCase())}),t.item.properties.schemaVersion=1.1,t}(e=function(e){if(1<=d(e,"item.properties.schemaVersion"))return e;var t=p(e);return["groupId","title"].forEach(function(e){delete t.data.values[e]}),t.item.properties||(t.item.properties={}),t.item.properties.schemaVersion=1,t.data.values.groups&&Array.isArray(t.data.values.groups)&&(e=t.data.values.groups.map(function(e){return"object"==typeof e?e.id:e}).filter(function(e){return!!e}),t.data.values.groups=e),t}(e))))))}var Rn=["ar","bs","ca","cs","da","de","en","es","et","el","fi","fr","hr","he","hu","it","id","ja","ko","lt","lv","nb","nl","pl","pt","pt-br","pt-pt","ro","ru","sl","sr","sv","th","tr","uk","vi","zh","zh-cn","zh-tw","zh-hk"];var _n,Un=(e(jn,_n=Error),jn);function jn(e,t,r){e=_n.call(this,e)||this;return e.status=r,e.url=t,e}function Mn(e,t){var r,n,o=x({httpMethod:"GET"},t),i=o.fetch||fetch,t=x({"Content-Type":"application/json"},o.headers);"GET"===o.httpMethod?r=o.params:n=JSON.stringify(o.params);var a=W({host:He(o),path:("/api/v3/"+e).replace(/\/\//g,"/"),query:r});return i(a,{method:o.httpMethod,headers:t,body:n}).then(function(e){if(e.ok)return e.json();throw new Un(e.statusText,a,e.status)})}function Fn(e,t){return ce(x({id:e,relationshipType:"Survey2Service",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function Ln(e,t){return ce(x({id:e,relationshipType:"Service2Data",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function Gn(e,t){return ce(x({id:e,relationshipType:"Survey2Data",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function qn(t){function e(e){return-1<t.typeKeywords.indexOf(e)}var r=e("FieldworkerView");return r=r||["Survey123","Feature Service","View Service"].every(e)&&!e("StakeholderView")}Bn.prototype.startOperation=function(e){e=p(e);e.startedAt=(new Date).getTime(),e.state="working",this.operations.push(e)},Bn.prototype.start=function(e,t){t={type:e,id:b(t,"id",r(e+"_")),inputs:b(t,"inputs",{}),cleanup:b(t,"cleanup","n/a"),startedAt:(new Date).getTime(),state:"working"};return this.operations.push(t),t.id},Bn.prototype.getOperation=function(t){return this.operations.find(function(e){return e.id===t})},Bn.prototype.getOperations=function(){return this.operations},Bn.prototype.finish=function(e,t){var r=this.getOperation(e);if(!r)throw new Error("No operation with id "+e+" present in stack");r.duration=(new Date).getTime()-r.startedAt,r.state="completed",t&&(r.output=p(t))},Bn.prototype.merge=function(e){this.operations=P(this.operations,e.operations)},Bn.prototype.getCompleted=function(){return p(this.operations.filter(function(e){return"completed"===e.state}))},Bn.prototype.getWorking=function(){return p(this.operations.filter(function(e){return"working"===e.state}))},Bn.prototype.toString=function(){return this.operations.sort(function(e,t){return e.startedAt<t.startedAt?-1:t.startedAt<e.startedAt?1:0}).map(Yn).join("\n")},Bn.prototype.serialize=function(){return{operations:p(this.getOperations())}},ct=Bn;function Bn(){this.operations=[]}function Yn(e){var t=e.startedAt+" : Operation "+e.id+" started with inputs "+JSON.stringify(e.inputs)+" but was not completed";return t="completed"===e.state?e.startedAt+" : Operation "+e.id+" took "+e.duration+" ms with inputs "+JSON.stringify(e.inputs)+" and output "+(e.output?JSON.stringify(e.output):"n/a"):t}n.GLOBAL_EXTENT=gt,n.HUB_CDN_URLMAP=je,n.HUB_LOCALES=Rn,n.Logger=F,n.OperationError=R,n.OperationStack=ct,n.PORTAL_EXPORT_TYPES=zt,n.REQUIRED_PRIVS=Y,n.RemoteServerError=Un,n.SEARCH_APIS=Gr,n.SITE_SCHEMA_VERSION=On,n.STANDARD_LICENSES=bt,n.WGS84_WKID=Vt,n._addTokenToResourceUrl=Ur,n._canEmailUser=er,n._checkStatusAndParseJson=yn,n._consolidateResults=Xt,n._deepMapValues=i,n._ensureSafeDomainLength=En,n._ensureTelemetry=xn,n._formatAutoAddResponse=Zt,n._getAuthHeader=vn,n._getAutoAddUsers=cr,n._getDomainServiceUrl=bn,n._getEmailUsers=pr,n._getHttpAndHttpsUris=function(e){return e?["http://"+(e=e.replace(/^http(s?):\/\//,"")),"https://"+e]:[]},n._getInviteUsers=lr,n._getLocation=function(){if(window)return window.location},n._isDate=s,n._isFunction=u,n._isObject=c,n._isOrgAdmin=tr,n._isRegExp=l,n._isString=a,n._lookupPortal=wn,n._mapValues=o,n._processAutoAdd=ir,n._processInvite=sr,n._processPrimaryEmail=ur,n._processSecondaryEmail=nr,n._searchContent=function(n,o){var i;return O(this,void 0,void 0,function(){var t,r;return D(this,function(e){return r=rn(n),t=qr(o.api||"arcgis"),[2,"arcgis"===t.type?(r=un(r),o.authentication?r.authentication=o.authentication:r.portal=t.url+"/sharing/rest",null!==(i=o.aggregations)&&void 0!==i&&i.length&&(r.countFields=o.aggregations.join(","),r.countSize=200),o.num&&(r.num=o.num),o.sortField&&(r.sortField=o.sortField),o.sortOrder&&(r.sortOrder=o.sortOrder),o.site&&(r.site=p(o.site)),mn(r)):Promise.resolve({total:0,results:[],facets:[],hasNext:!1,next:function(){}})]})})},n._searchGroups=function(n,o){var i;return O(this,void 0,void 0,function(){var t,r;return D(this,function(e){if(r=ln(n),"arcgis"===(t=qr(o.api||"arcgis")).type)return r=pn(r),o.authentication?r.authentication=o.authentication:r.portal=t.url+"/sharing/rest",o.num&&(r.num=o.num),o.sortField&&(r.sortField=o.sortField),o.sortOrder&&(r.sortOrder=o.sortOrder),t.url,null!==(i=r.authentication)&&void 0!==i&&i.portal&&r.authentication.portal,o.site&&(r.site=p(o.site)),[2,hn(r)];throw new Error("_searchGroups is not implemented for non-arcgis apis")})})},n._searchUsers=function(r,n){return O(this,void 0,void 0,function(){var t;return D(this,function(e){if(!n.authentication)throw new Error("Authentication required to search for users.");if(t=dn(r),"arcgis"===qr(n.api||"arcgis").type)return(t=fn(t)).authentication=n.authentication,n.num&&(t.num=n.num),n.sortField&&(t.sortField=n.sortField),n.sortOrder&&(t.sortOrder=n.sortOrder),n.site&&(t.site=p(n.site)),[2,gn(t)];throw new Error("_searchUsers is not implemented for non-arcgis apis")})})},n._unprotectAndRemoveGroup=function(e){var t=U(Se,{success:!0}),r=U(Te,{success:!0});return t(e).then(function(){return r(e)})},n._unprotectAndRemoveItem=function(e){var t=U(le,{success:!0}),r=U(de,{success:!0});return t(e).then(function(){return r(e)})},n.addContextToSlug=function(e,t){return/.+::.+/.test(e)?e:t+"::"+e},n.addDays=function(e,t){try{var r=new Date(e);return new Date(r.setDate(r.getDate()+t)).toISOString().split("T")[0]}catch(e){throw new Error("Invalid Date")}},n.addDomain=function(e,t){if(t.isPortal)throw new Error("addDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=vn(t);r["Content-Type"]="application/json";var n=""+bn(t.hubApiUrl);return"number"==typeof(t=e.siteTitle)&&(e.siteTitle=t.toString()),fetch(n,{method:"POST",headers:r,mode:"cors",body:JSON.stringify(e)}).then(yn)},n.addSolutionResourceUrlToAssets=function(e,t){var r,n,o=e.assets||e.resources||[];return e.bundleItemId&&(r=Fe(t.portalSelf)+"/content/items/"+e.bundleItemId,n=e.itemId,o=o.map(function(e){return{name:e.name,type:e.type||"resource",url:r+"/resources/"+n+"-"+e.name}})),o},n.addUsersToGroup=function(e,t,r,n,o){var i=p(b(r,"portalSelf.user",{}));return i.cOrgId=d(r,"portalSelf.portalProperties.hub.settings.communityOrg.orgId"),ir({groupId:e,allUsers:t,primaryRO:r,email:n,secondaryRO:o,requestingUser:i,usersToAutoAdd:cr(t,i),usersToInvite:lr(t,i),usersToEmail:pr(t,i,d(n,"copyMe"))}).then(sr).then(ur).then(nr).then(Xt)},n.applyPropertiesToItems=function(e,t){return e.map(function(e){return e.properties||(e.properties={}),Object.assign(e.properties,t),e})},n.arrayToObject=function(e,r){return e.reduce(function(e,t){return e[d(t,r)]=t,e},{})},n.atob=Ht.atob,n.autoAddUsers=or,n.batch=T,n.btoa=Ht.btoa,n.buildDraft=function(e,t){return C(e,{},t)},n.buildExistingExportsPortalQuery=function(e,t){var r,n,o,i,a=(c=function(e){if(e)return{onlyTypes:e.onlyTypes,layerId:e.layerId,spatialRefId:e.spatialRefId};return{}}(t)).onlyTypes,s=c.layerId,u=c.spatialRefId,t=Object.keys(zt).map(function(e){return zt[e]}),c=new Set(y(t.filter(function(e){return!e.supportsProjection}).map(function(e){return e.itemTypes}))),t=a||y(t.map(function(e){return e.itemTypes})),s=(new fe).startGroup().match($t(e)).in("typekeywords").and().match(Qt(s)).in("typekeywords").endGroup().and().startGroup();function l(e,t){var r;t.startGroup().match(/\s/g.test(e)?e:'"'+e+'"').in("type").and().match(Kt((r=e,t=Vt,t=(e=i)&&!o.has(r)?e:t))).in("typekeywords").endGroup()}return r=s,n=(c={types:t,spatialRefId:u,noProjectionItemTypes:c}).types,o=c.noProjectionItemTypes,i=c.spatialRefId,n.forEach(function(e,t){l(e,r),t<n.length-1&&r.or()}),s.endGroup(),s.toParam()},n.buildUrl=W,n.camelize=t,n.canEditEvent=function(e,t){var r=!1;return q(t)&&(e=d(e,"initiative.item.properties.collaborationGroupId"),t=t.groups,r=!!e&&!!f(void 0===t?[]:t,"id",e)),r},n.canEditItem=B,n.canEditSite=function(e,t){var r=!1;return r=!d(e,"properties.isDefaultHubHome")&&q(t)?B(e,t):r},n.canEditSiteContent=function(e,t){var r,n=!1,o=d(e,"properties.isDefaultHubHome"),i=q(t);return!o&&i?n=B(e,t):i&&(i=t.orgId,e=e.orgId,i&&i===e&&(r=t.privileges||[],n=Y.every(function(e){return E(r,e)}))),n},n.capitalize=g,n.categories=dt,n.chunkArray=function(e,t){for(var r=[],n=0;n<e.length;)r.push(e.slice(n,n+t)),n+=t;return r},n.cloneObject=p,n.completeOAuth2=function(t,e){var r=(e=(e=void 0===e?window:e).location.href.match(/access_token=(.+)&expires_in=.+&username=([^&]+)/))[1],n="https://www.arcgis.com/sharing/rest/community/users/"+decodeURIComponent(e[2]);return te(n,{params:{token:r},httpMethod:"GET"}).then(function(e){return Date.now()-e.created<5e3?te(n+"/update",{params:{token:r,tags:["hubRole:participant","org:"+e.orgId],access:"public"}}).then(function(){return Xe.completeOAuth2(t)}):Xe.completeOAuth2(t)})},n.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.reduce(function(r,n){return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r(n.apply(void 0,e))}})},n.convertContentDefinitionToFilter=sn,n.convertContentFilterToSearchOptions=cn,n.convertPortalResponseToFacets=tn,n.convertSolutionTemplateResourcesToAssets=function(e,t){var r,n,o=[];return e.resources&&e.bundleItemId&&(r=Fe(t.portalSelf)+"/content/items/"+e.bundleItemId,n=e.itemId,o=e.resources.map(function(e){return{name:e,type:"resource",url:r+"/resources/"+n+"-"+e}})),o},n.convertToWellKnownLocale=function(e){var t="en";return e=(e=void 0===e?"en":e).toLowerCase(),-1<Rn.indexOf(e)?t=e:1<(e=e.split("-")).length&&-1<Rn.indexOf(e[0])&&(t=e[0]),t},n.createExtent=mt,n.createId=r,n.createOperationPipeline=function(e){return function(r){return e.reduce(function(e,t){return e.then(t).catch(function(e){if("OperationError"===e.name)return Promise.reject(e);e="IPipeableFn did not reject with an OperationError \n Operation Stack: \n "+r.stack.toString(),e=new R("pipeline execution error",e);return e.operationStack=r.stack.serialize(),Promise.reject(e)})},Promise.resolve(r))}},n.datasetToContent=function(e){var t=Ut(e),r=_t(t);delete r.itemCategories;var n=e.id,o=(C=e.attributes).errors,i=C.boundary,a=C.extent,s=C.metadata,u=C.modified,c=C.modifiedProvenance,l=C.slug,p=C.searchDescription,d=C.groupIds,f=C.server,m=C.layers,h=C.layer,g=C.recordCount,y=C.statistics,v=C.orgId,b=C.orgName,w=C.organization,e=C.orgExtent,C=C.type;return r.errors=o,r.boundary=i,!vt(t.extent)&&a&&vt(a.coordinates)&&(r.extent=a.coordinates),r.metadata=s||null,r.modified!==u&&(r.modified=u,r.updatedDate=new Date(u),r.updatedDateSource=c),r.slug=l,p&&(r.summary=p),r.groupIds=d,r.server=f,r.layers=m,r.layer=h,r.recordCount=g,r.statistics=y,v&&(r.org={id:v,name:b||w,extent:e}),Mt(jt(r,n),C)},n.datasetToItem=Ut,n.deepFind=A,n.deepFindById=function(e,t){return A(e,function(e){return e.id===t})},n.deepSet=v,n.deepStringReplace=w,n.deleteProp=dr,n.doesItemExistWithTitle=_r,n.domainExists=Cn,n.domainExistsPortal=kn,n.emailOrgUsers=rr,n.ensureProp=function(e,t){return v(e,t)},n.ensureUniqueDomainName=function(e,t){return(t.isPortal?Sn(e,t):An(e,t.portalSelf.urlKey+"."+Le(He(t)),t)).then(function(e){return En(e,t.portalSelf.urlKey)})},n.ensureUniqueString=function(e,t){for(var r=!1,n=0,o=t;!r;)E(e,o)?o=t+"-"+ ++n:r=!0;return o},n.expandApi=qr,n.expandApis=function(e){return e.map(qr)},n.expandContentFilter=rn,n.expandGroupFilter=ln,n.expandTypeField=nn,n.expandUserFilter=dn,n.extend=function n(e,o,i){void 0===i&&(i=!0);e=p(e);return Object.keys(o).reduce(function(e,t){var r;return null!==o[t]&&void 0!==o[t]&&(r=p(o[t]),Array.isArray(r)?e[t]=r:e[t]=i&&"object"==typeof r?n(e[t]||{},r,i):r),e},e)},n.extentToBBox=ht,n.failSafe=U,n.failSafeUpdate=function(e,t){return U(ae,{id:e.item.id,success:!0})(Object.assign({item:fr(e)},t))},n.fetchAllPages=function(n,o,r,i){var a=o.num||100,e=o.start||1;return(-1===(r=void 0===r?-1:r)?n(x(x({},o),{num:a,start:e})):Promise.resolve({nextStart:e,total:r,results:[],num:a})).then(function(t){if(-1===t.nextStart)return[t];for(var e=[],r=t.nextStart;r<=t.total;r+=a)e.push(r);return T(e,function(e){return n(x(x({},o),{start:e,num:a}))},i).then(function(e){return P([t],e)})}).then(function(e){var t=e.reduce(function(e,t){return P(e,t.results)},[]),e=-1===r?t.length:r;return t.slice(0,e)})},n.fetchAndUploadResource=Mr,n.fetchAndUploadThumbnail=Fr,n.fetchHubTranslation=function(t,e,r){void 0===r&&(r="cors");var n=(Me(e)+"/locales/"+t+".json").toLocaleLowerCase();return fetch(n,{method:"GET",credentials:"same-origin",mode:r}).then(function(e){return e.json()}).catch(function(e){throw Error("Attempt to fetch locale "+t+" from "+n+" failed: "+JSON.stringify(e))})},n.fetchImageAsBlob=jr,n.fetchSite=function(e,t){return M(e)?In(e,t):Tn(Le(e).split("/")[0],t).then(function(e){return In(e.siteId,t)})},n.filterBy=function(e,t,r){return e.filter(function(e){return d(e,t)===r})},n.findBy=f,n.flattenArray=y,n.generateRandomString=j,n.getCategory=kt,n.getCollection=St,n.getContentIdentifier=xt,n.getCulture=function(e){return d(e,"portalSelf.user.culture")||d(e,"portalSelf.culture")||"en-us"},n.getDomainsForSite=function(e,t){return t.isPortal?Promise.resolve([]):(e=bn(t.hubApiUrl)+"?siteId="+e,t=vn(t),fetch(e,{method:"GET",headers:t,mode:"cors"}).then(yn).catch(function(e){throw Error("Error in getDomainsForSite "+e)}))},n.getExportItemTypeKeyword=$t,n.getExportLayerTypeKeyword=Qt,n.getFamily=Nt,n.getGeographicOrgExtent=yt,n.getGroupThumbnailUrl=Xr,n.getHubApiUrl=He,n.getHubApiUrlFromPortal=function(e){return qe(e)+"/api/v3"},n.getHubLocaleAssetUrl=Me,n.getHubProduct=function(e){var t=d(e,"portalProperties.hub.enabled")||!1?"premium":"basic";return t=e.isPortal&&"singletenant"===e.portalMode?"portal":t},n.getHubUrlFromPortal=qe,n.getInputFeatureServiceModel=Fn,n.getItemApiUrl=Be,n.getItemAssets=function(e,t){var r=Fe(t.portalSelf)+"/content/items/"+e.id,n=Lr(e,t),o=[];return n&&o.push({name:e.thumbnail,url:n,type:"thumbnail"}),e=e.id,e=ue(e,t=t)+"/resources",(t=x({},t)).params=x({num:1e3},t.params),te(e,t).then(function(e){e=e.resources.map(function(e){return{name:e.resource,type:"resource",url:r+"/resources/"+e.resource}});return o.concat(e)})},n.getItemDataUrl=function(e,t,r){t=Be(e,t,r),r="\\/"+e.id+"\\?f=json",r=new RegExp(r);return t&&t.replace(r,"/"+e.id+"/data").replace(/\&token/,"?token")},n.getItemHomeUrl=function(e,t){return Ue(t)+"/home/item.html?id="+e},n.getItemHubId=function(e){if("public"===e.access){var t=e.id,e=It(e);return e?t+"_"+e:t}},n.getItemHubType=Rt,n.getItemLayerId=It,n.getItemThumbnailUrl=Lr,n.getLayerIdFromUrl=Et,n.getModel=mr,n.getModelFromOptions=function(e,t){var r=e+"Model",e=e+"Id";if(t[r])return Promise.resolve(t[r]);if(t[e])return U(mr,{item:{id:t[e]},isMissing:!0})(t[e],t);throw new Error("getModelFromOptions requires either a ."+r+" or ."+e+" property.")},n.getNextFunction=Qr,n.getOrgExtentAsBBox=function(e){return yt(e).then(ht)},n.getPortalApiUrl=Fe,n.getPortalUrl=Ue,n.getProp=d,n.getProps=function(r,e){return e.reduce(function(e,t){t=d(r,t);return t&&e.push(t),e},[])},n.getServiceTypeFromUrl=We,n.getSiteById=In,n.getSourceFeatureServiceModelFromFieldworker=Ln,n.getSpatialRefTypeKeyword=Kt,n.getStakeholderModel=Gn,n.getStructuredLicense=wt,n.getSubscriptionType=function(e){return b(e,"subscriptionInfo.type","Enterprise")},n.getSurveyModels=function(e,r){var n,o;return("string"==typeof e?se(e,r):Promise.resolve(e)).then(function(t){var e=[Fn(t.id,r),Gn(t.id,r)];return Promise.all(e).then(function(e){var t=e[0],e=e[1];return o=e,t&&qn(t.item)?Ln((n=t).item.id,r):t}).then(function(e){return{form:{item:t},featureService:e,fieldworker:n,stakeholder:o}})})},n.getTypeCategories=function(e){if(e=kt(At(e=void 0===e?{}:e))){e=Array.from(e);return e[0]=e[0].toUpperCase(),[e.join("")]}return["Other"]},n.getTypes=function(e){return dt[(e=void 0===e?"":e).toLowerCase()]},n.getUniqueDomainName=An,n.getUniqueDomainNamePortal=Sn,n.getUniqueItemTitle=function t(r,n,o,i){var a=(i=void 0===i?0:i)?r+" "+i:r;return _r(a,n,o).then(function(e){return e?t(r,n,o,++i):a}).catch(function(e){throw Error("Error in getUniqueItemTitle "+e)})},n.getUserThumbnailUrl=Zr,n.getWithDefault=b,n.hasBasePriv=q,n.hubApiRequest=Mn,n.hubApiSearch=function(e){var t=(t=e.authentication)&&t.serialize&&{authentication:t.serialize()};return Mn("/search",x(x({},{headers:t,httpMethod:"POST"}),e))},n.includes=E,n.incrementString=function(e){var t=e.match(/-\s(\d+$)/);return t?(t=parseInt(t[1],10),e=e.replace("- "+t,"- "+(t+1))):e+=" - 1",e},n.interpolate=Nr,n.interpolateItemId=function(e){return Nr(e,{item:{id:e.item.id},appid:e.item.id},{toISO:function(e,t){return t}})},n.inviteUsers=ar,n.isDomainForLegacySite=function(e){return!M(e.siteId)},n.isDomainUsedElsewhere=function(e,t,r){return Tn(e,r).then(function(e){return e.siteId!==t}).catch(function(){return!1})},n.isDownloadable=ft,n.isExtentCoordinateArray=vt,n.isFeatureService=Tt,n.isFieldworkerView=qn,n.isGuid=M,n.isMapOrFeatureServerUrl=function(e){return Ye.test(e)},n.isNil=function(e){return null==e},n.isSlug=function(e){return!(!(e=Ot(e).itemId)||M(e))},n.isUpdateGroup=G,n.isValidDomain=function(t,e){if(e.isPortal)throw new Error("isValidDomain is not available in ArcGIS Enterprise.");var r=bn(e.hubApiUrl)+"/validate?hostname="+t,e=vn(e);return fetch(r,{method:"GET",headers:e,mode:"cors"}).then(function(e){return e.json()}).catch(function(e){return{success:!1,input:t,error:{code:400,detail:e,message:"lookupFailed"}}})},n.isValidExtent=function(t){return!!t&&[vt,function(t){return["xmin","ymin","xmax","ymax"].every(function(e){return"number"==typeof t[e]})}].some(function(e){return e(t)})},n.itemPropsNotInTemplates=Rr,n.itemToContent=_t,n.last=function(e){return e[e.length-1]},n.lookupDomain=Tn,n.mapBy=function(t,e){return(e=void 0===e?[]:e).map(function(e){return e[t]})},n.maybeAdd=function(e,t,r){return null!=t&&((r=p(r))[e]=t),r},n.maybePush=m,n.mergeContentFilter=function(e){var e=e.map(rn),n=["created","modified"],o=P(["filterType","subFilters","term"],n);return(e=e.reduce(function(r,e){return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];r.hasOwnProperty(t)?o.includes(t)?n.includes(t)?r[t]=Br(r[t],e):"term"===t?r[t]=r[t]+" "+e:"subFilters"===t&&(r[t]=P(r[t],e)):r[t]=Yr(r[t],e):r[t]=p(e)}),r},{})).filterType="content",e},n.mergeDateRange=Br,n.mergeGroupFilters=function(e){var e=e.map(ln),o=["created","modified"],i=P(["filterType","term"],o);return e.reduce(function(n,e){return Object.entries(e).forEach(function(e){var t=e[0],r=e[1];n.hasOwnProperty(t)?(e=d(n,t),i.includes(t)?o.includes(t)?k(t,Br(e,r),n):"term"===t&&(n[t]=n[t]+" "+r):k(t,Yr(e,r),n)):k(t,p(r),n)}),n},{filterType:"group"})},n.mergeMatchOptions=Yr,n.mergeObjects=C,n.mergeSearchOptions=zr,n.mergeUserFilters=function(e){var e=e.map(dn),o=["created","modified","lastlogin"],i=P(["disabled","term","filterType"],o);return e.reduce(function(n,e){return Object.entries(e).forEach(function(e){var t=e[0],r=e[1];n.hasOwnProperty(t)?(e=d(n,t),i.includes(t)?o.includes(t)?k(t,Br(e,r),n):"term"===t&&(n[t]=n[t]+" "+r):k(t,Yr(e,r),n)):k(t,p(r),n)}),n},{filterType:"user"})},n.normalizeItemType=At,n.normalizeSolutionTemplateItem=function(e){var t=p(e);return Rr.forEach(function(e){delete t[e]}),t.extent="{{organization.defaultExtentBBox}}",t},n.objectToArray=function(r,n){return void 0===n&&(n="id"),Object.keys(r).reduce(function(e,t){return r[t][n]=t,e.push(p(r[t])),e},[])},n.objectToJsonBlob=function(e){if("undefined"!=typeof Blob)return new Blob([JSON.stringify(e)],{type:"application/json"});throw new Error("objectToJsonBlob is not currently supported on Node")},n.parseDatasetId=Ot,n.parseItemCategories=Pt,n.processRevertableTasks=function(e){return Promise.all(e).then(function(e){function t(e){return"fullfilled"===e.status}var r=e.filter(t),n=e.filter(function(e){return!t(e)});if(n.length){e=r.map(function(e){return e.revert()});throw Promise.all(e).catch(function(){}),n[0].error}return r.map(function(e){return e.results})})},n.propifyString=function(e){return t(e.replace(/^[0-9]*/g,"").replace(/[^\w\s]/g,""))},n.relativeDateToDateRange=Vr,n.removeContextFromSlug=Dt,n.removeDomain=function(e,t){if(t.isPortal)throw new Error("removeDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=vn(t);return r["Content-Type"]="application/json",e=bn(t.hubApiUrl)+"/"+e,fetch(e,{method:"DELETE",headers:r,mode:"cors"}).then(yn)},n.removeEmptyProps=function t(r){return Object.keys(r).forEach(function(e){r[e]&&"object"==typeof r[e]?t(r[e]):null==r[e]&&delete r[e]}),r},n.replaceItemId=function(e,t,r){return void 0===r&&(r="{{appid}}"),w(p(e),new RegExp(t,"g"),r)},n.runRevertableTask=function(e,t){return e().then(function(e){return{status:"fullfilled",results:e,revert:t}}).catch(function(e){return{status:"rejected",error:e}})},n.serializeContentFilterForPortal=un,n.serializeDateRange=Kr,n.serializeGroupFilterForPortal=pn,n.serializeMatchOptions=Jr,n.serializeModel=fr,n.serializeSpatialReference=Jt,n.serializeStringOrArray=$r,n.serializeUserFilterForPortal=fn,n.setContentHubId=jt,n.setContentSiteUrls=Ft,n.setContentType=Mt,n.setProp=k,n.shareItemToGroups=function(t,e,r){return Promise.all(e.map(function(e){return Pe(Object.assign({},{id:t,groupId:e},r))}))},n.slugify=function(e){return"string"==typeof e?e.trim().toLowerCase().replace(/ +/g,"-").replace(/[^\w-]/g,"").replace(/-+/g,"-"):e},n.stringToBlob=function(e,t){if(void 0===t&&(t="application/octet-stream"),"undefined"==typeof Blob)throw new Error("stringToBlob is not currently supported on Node");for(var r=[],n=0;n<e.length;n++)r[n]=e.charCodeAt(n);var o=new Uint8Array(r);return new Blob([o],{type:t})},n.stripProtocol=Le,n.unique=h,n.uniqueBy=function(e,r){return e.reduce(function(e,t){return m(e.find(function(e){return d(e,r)===d(t,r)})?null:t,e)},[])},n.unprotectModel=function(e,t){return e.item.protected?le(Object.assign({id:e.item.id},t)):Promise.resolve({success:!0})},n.unshareItemFromGroups=function(t,e,r){return Promise.all(e.map(function(e){return _e(Object.assign({},{id:t,groupId:e},r))}))},n.updateDomain=function(e,t){if(t.isPortal)throw new Error("updateDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=vn(t);r["Content-Type"]="application/json";var n=bn(t.hubApiUrl)+"/"+e.id;return"number"==typeof(t=e.siteTitle)&&(e.siteTitle=t.toString()),fetch(n,{method:"PUT",headers:r,mode:"cors",body:JSON.stringify(e)}).then(yn)},n.upgradeProtocol=function(e){return-1===e.indexOf("http")?"https://"+e:-1!==e.indexOf("http://")?e.replace(/^http:/i,"https:"):e},n.upgradeSiteSchema=Nn,n.uploadResourcesFromUrl=function(n,e,o){if(Array.isArray(e)){e=e.reduce(function(e,t){var r;return t.url&&(r={id:n.item.id,owner:n.item.owner,fileName:t.name,url:Ur(t.url,o),authentication:o.authentication},"thumbnail"===t.type?e.push(Fr(r)):e.push(Mr(r))),e},[]);return Promise.all(e)}return Promise.resolve([])},n.valueToMatchOptions=Hr,n.without=function(e,t){return e.filter(function(e){return e!==t})},n.withoutByProp=function(t,r,e){return e.filter(function(e){return e[t]!==r})},Object.defineProperty(n,"__esModule",{value:!0})});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisHub=e.arcgisHub||{})}(this,function(n){"use strict";function o(r,n){return Object.keys(r).reduce(function(e,t){return e[t]=n(r[t],t,r),e},{})}function i(e,r,n){return n=n||"",Array.isArray(e)?e.map(t):!e||!c(e)||s(e)||l(e)||u(e)?r(e,n):Object.assign({},e,o(e,t));function t(e,t){return i(e,r,""+(n?n+"."+t:t))}}function a(e){return"string"==typeof e||e instanceof String}function s(e){return e instanceof Date}function u(e){return"function"==typeof e}function c(e){return"object"==typeof e}function l(e){return e instanceof RegExp}function d(e,t){return t.split(".").reduce(function(e,t){return e?e[t]:void 0},e)}function p(e){var t,r={};if(Array.isArray(e))r=e.map(p);else if("object"==typeof e)for(var n in e)e.hasOwnProperty(n)&&(null!=(t=e[n])&&"object"==typeof t?t instanceof Date?r[n]=new Date(t.getTime()):r[n]=p(t):r[n]=t);else r=e;return r}function f(e,r,n){return e?e.reduce(function(e,t){return e=d(t,r)===n?t:e},null):null}function r(e){return""+(e=void 0===e?"i":e)+Math.random().toString(36).substr(2,8)}function m(e,t){return null!=e&&(t=p(t)).push(e),t}function t(e){return(e=(e=e.toLowerCase()).replace(/[`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/gi," ")).replace(/(\-|\_|\.|\s)+(.)?/g,function(e,t,r){return r?r.toUpperCase():""}).replace(/(^|\/)([A-Z])/g,function(e,t,r){return e.toLowerCase()})}function h(e,t,r){return r.indexOf(e)===t}function g(e){return(e=Array.from(e))[0]=e[0].toUpperCase(),e.join("")}function y(e){return e.reduce(function(e,t){return e.concat(t)},[])}function v(e,t,r){void 0===r&&(r={});var t=t.split("."),n=e,o=t.length-1;t.forEach(function(e,t){n.hasOwnProperty(e)&&null!==n[e]?t===o&&("object"!=typeof n[e]||Array.isArray(n[e])?n[e]=r:n[e]=Object.assign(n[e],p(r))):n[e]=t===o?r:{},n=n[e]})}function b(e,t,r){t=d(e,t);return void 0!==t?t:r}function w(e,r,n){return i(e,function(e){if(!a(e))return e;var t=l(r)?r:new RegExp(r,"g");return e.replace(t,n)})}function C(t,r,e){return Array.isArray(e)&&e.length?(e.forEach(function(e){void 0!==d(t,e)&&v(r,e,d(t,e))}),r):t}function k(e,t,r){v(r,e=Array.isArray(e)?e.join("."):e,t)}function A(r,n){return Array.isArray(r)?r.reduce(function(e,t){return n(t)?e=t:!S(t)||(t=A(t,n))&&(e=t),e},void 0):S(r)?n(r)?r:Object.keys(r).reduce(function(e,t){return!S(r[t])||(t=A(r[t],n))&&(e=t),e},void 0):void 0}function S(e){var t=!1;return t=e&&c(e)&&!s(e)&&!l(e)&&!u(e)?!0:t}function T(e,n,o){void 0===o&&(o=5);return e.reduce(function(e,t){var r=e[e.length-1];return r&&r.length!==o||e.push(r=[]),r.push(t),e},[]).reduce(function(e,r){return e.then(function(t){var e=r.map(function(e){return n(e)});return Promise.all(e).then(function(e){return t.concat(e)})})},Promise.resolve([]))}function E(e,t){return-1!==e.indexOf(t)}var I=function(e,t){return(I=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function e(e,t){function r(){this.constructor=e}I(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var x=function(){return(x=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function O(e,a,s,u){return new(s=s||Promise)(function(r,t){function n(e){try{i(u.next(e))}catch(e){t(e)}}function o(e){try{i(u.throw(e))}catch(e){t(e)}}function i(e){var t;e.done?r(e.value):((t=e.value)instanceof s?t:new s(function(e){e(t)})).then(n,o)}i((u=u.apply(e,a||[])).next())})}function D(r,n){var o,i,a,s={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},e={next:t(0),throw:t(1),return:t(2)};return"function"==typeof Symbol&&(e[Symbol.iterator]=function(){return this}),e;function t(t){return function(e){return function(t){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,i&&(a=2&t[0]?i.return:t[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,t[1])).done)return a;switch(i=0,(t=a?[2&t[0],a.value]:t)[0]){case 0:case 1:a=t;break;case 4:return s.label++,{value:t[1],done:!1};case 5:s.label++,i=t[1],t=[0];continue;case 7:t=s.ops.pop(),s.trys.pop();continue;default:if(!(a=0<(a=s.trys).length&&a[a.length-1])&&(6===t[0]||2===t[0])){s=0;continue}if(3===t[0]&&(!a||t[1]>a[0]&&t[1]<a[3])){s.label=t[1];break}if(6===t[0]&&s.label<a[1]){s.label=a[1],a=t;break}if(a&&s.label<a[2]){s.label=a[2],s.ops.push(t);break}a[2]&&s.ops.pop(),s.trys.pop();continue}t=n.call(r,s)}catch(e){t=[6,e],i=0}finally{o=a=0}if(5&t[0])throw t[1];return{value:t[0]?t[1]:void 0,done:!0}}([t,e])}}}function P(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var n=Array(e),o=0,t=0;t<r;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n}var N,R=(e(_,N=Error),_);function _(e,t,r){var n=this;return t=t||"UNKNOWN_ERROR",r=b(r,"rootCause",r),(n=N.call(this,t)||this).operation=e,n.name="OperationError",n.rootCause=r,Object.setPrototypeOf(n,_.prototype),n.stack=b(r,"stack",(new Error).stack),n}function U(r,n){return void 0===n&&(n={}),function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.apply(void 0,e).catch(function(e){return n})}}function j(e){var r=(new Date).getTime();return Array(e).fill(0).reduce(function(e){var t=(r+16*Math.random())%16|0;return r=Math.floor(r/16),e=""+e+t.toString(16)},"")}function M(e){"{"===e[0]&&(e=e.substring(1,e.length-1));return/^(\{){0,1}[0-9a-fA-F]{8}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{4}[-]?[0-9a-fA-F]{12}(\}){0,1}$/gi.test(e)}n.Level=void 0,(ct=n.Level||(n.Level={}))[ct.all=0]="all",ct[ct.debug=1]="debug",ct[ct.info=2]="info",ct[ct.warn=3]="warn",ct[ct.error=4]="error",ct[ct.off=5]="off";var F=(L.setLogLevel=function(e){this.logLevel=e},L.log=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.debug)&&console.log.apply(console,P([e],t))},L.debug=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.debug)&&console.debug.apply(console,P([e],t))},L.info=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.info)&&console.info.apply(console,P([e],t))},L.warn=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.warn)&&console.warn.apply(console,P([e],t))},L.error=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];this.isLevelPermitted(n.Level.error)&&console.error.apply(console,P([e],t))},L.isLevelPermitted=function(e){return this.logLevel<=e},L.logLevel=n.Level.off,L);function L(){}function G(e){return e.capabilities.includes("updateitemcontrol")}function q(e){e=e.privileges;return E(void 0===e?[]:e,"portal:user:createItem")}function B(e,t){var r,n=!1,o=e.itemControl,i=e.owner,a=e.orgId,s=t.roleId,u=t.role,c=t.username,l=t.groups,p=t.orgId,u=E(["admin","update"],o)||!!i&&i===c||!!(!!a&&a===p)&&!s&&"org_admin"===u,t=q(t);return t&&u?n=!0:t&&(r=P(d(e,"groupIds")||[],[d(e,"properties.collaborationGroupId")]),n=l.some(function(e){return G(e)&&E(r,e.id)})),n}var Y=["portal:user:createGroup","portal:user:createItem","portal:user:shareToGroup","portal:user:viewOrgGroups","portal:user:viewOrgItems"];function W(e){var t=e.host,r=e.path,e=e.query,t=t.endsWith("/")?t:t+"/",t=new URL(r,t);return t.search=function(r){void 0===r&&(r={});var e=Object.keys(r).filter(function(e){return void 0!==r[e]}).reduce(function(e,t){return e[t]=r[t],e},{});return new URLSearchParams(e).toString()}(e),t.toString()}function H(t){return Object.keys(t).some(function(e){e=t[e];if(!e)return!1;switch((e=e&&e.toParam?e.toParam():e).constructor.name){case"Array":case"Object":case"Date":case"Function":case"Boolean":case"String":case"Number":return!1;default:return!0}})}function V(o){var i={};return Object.keys(o).forEach(function(e){var t=o[e];if((t=t&&t.toParam?t.toParam():t)||0===t||"boolean"==typeof t||"string"==typeof t){switch(t.constructor.name){case"Array":var r=null===(r=null===(r=t[0])||void 0===r?void 0:r.constructor)||void 0===r?void 0:r.name,n="Array"===r?t:"Object"===r?JSON.stringify(t):t.join(",");break;case"Object":n=JSON.stringify(t);break;case"Date":n=t.valueOf();break;case"Function":n=null;break;case"Boolean":n=t+"";break;default:n=t}(n||0===n||"string"==typeof n||Array.isArray(n))&&(i[e]=n)}}),i}function z(e){var t=V(e);return Object.keys(t).map(function(e){return function t(r,e){return Array.isArray(e)&&e[0]&&Array.isArray(e[0])?e.map(function(e){return t(r,e)}).join("&"):encodeURIComponent(r)+"="+encodeURIComponent(e)}(e,t[e])}).join("&")}var J=function(e,t,r,n,o){e=e||"UNKNOWN_ERROR",t=t||"UNKNOWN_ERROR_CODE",this.name="ArcGISRequestError",this.message="UNKNOWN_ERROR_CODE"===t?e:t+": "+e,this.originalMessage=e,this.code=t,this.response=r,this.url=n,this.options=o};function K(e){console&&console.warn&&console.warn.apply(console,[e])}J.prototype=Object.create(Error.prototype),J.prototype.constructor=J;var $,Q="@esri/arcgis-rest-js",X={httpMethod:"POST",params:{f:"json"}},Z=(e(ee,$=J),ee.prototype.retry=function(e,n){var o=this;void 0===n&&(n=3);var i=0,a=function(t,r){e(o.url,o.options).then(function(e){e=x(x({},o.options),{authentication:e});return i+=1,te(o.url,e)}).then(function(e){t(e)}).catch(function(e){"ArcGISAuthError"===e.name&&i<n?a(t,r):"ArcGISAuthError"===e.name&&n<=i?r(o):r(e)})};return new Promise(function(e,t){a(e,t)})},ee);function ee(e,t,r,n,o){o=$.call(this,e=void 0===e?"AUTHENTICATION_ERROR":e,t=void 0===t?"AUTHENTICATION_ERROR_CODE":t,r,n,o)||this;return o.name="ArcGISAuthError",o.message="AUTHENTICATION_ERROR_CODE"===t?e:t+": "+e,o}function te(n,e){void 0===e&&(e={params:{f:"json"}});var o=x(x(x({httpMethod:"POST"},X),e),{params:x(x({},X.params),e.params),headers:x(x({},X.headers),e.headers)}),t=[],e=[];if(o.fetch||"undefined"==typeof fetch?(t.push("`fetch`"),e.push("`node-fetch`")):o.fetch=fetch.bind(Function("return this")()),"undefined"==typeof Promise&&(t.push("`Promise`"),e.push("`es6-promise`")),"undefined"==typeof FormData&&(t.push("`FormData`"),e.push("`isomorphic-form-data`")),!o.fetch||"undefined"==typeof Promise||"undefined"==typeof FormData)throw new Error("`arcgis-rest-request` requires a `fetch` implementation and global variables for `Promise` and `FormData` to be present in the global scope. You are missing "+t.join(", ")+". We recommend installing the "+e.join(", ")+" modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");var e=o.httpMethod,i=o.authentication,a=o.rawResponse,s=x({f:"json"},o.params),r=null,u={method:e,credentials:o.credentials||"same-origin"};return o.headers&&o.headers["X-Esri-Auth-Client-Id"]&&-1<n.indexOf("/oauth2/platformSelf")&&(u.credentials="include"),(i?i.getToken(n,{fetch:o.fetch}).catch(function(e){return e.url=n,e.options=o,r=e,Promise.resolve("")}):Promise.resolve("")).then(function(e){e.length&&(s.token=e),i&&i.getDomainCredentials&&(u.credentials=i.getDomainCredentials(n));var t={};"GET"===u.method&&(s.token&&o.hideToken&&"undefined"==typeof window&&(t["X-Esri-Authorization"]="Bearer "+s.token,delete s.token),r=""===z(s)?n:n+"?"+z(s),o.maxUrlLength&&r.length>o.maxUrlLength||s.token&&o.hideToken?(u.method="POST",e.length&&o.hideToken&&(s.token=e,delete t["X-Esri-Authorization"])):n=r);var r=new RegExp("/items/.+/updateResources").test(n);return"POST"===u.method&&(u.body=function(e,t){var t=H(e)||t,r=V(e);if(t){var n=new FormData;return Object.keys(r).forEach(function(e){var t;"undefined"!=typeof Blob&&r[e]instanceof Blob?(t=r.fileName||r[e].name||e,n.append(e,r[e],t)):n.append(e,r[e])}),n}return z(e)}(s,r)),u.headers=x(x({},t),o.headers),"undefined"!=typeof window||u.headers.referer||(u.headers.referer=Q),H(s)||r||(u.headers["Content-Type"]="application/x-www-form-urlencoded"),o.fetch(n,u)}).then(function(e){if(!e.ok){var t=e.status,r=e.statusText;throw new J(r,"HTTP "+t,e,n,o)}if(a)return e;switch(s.f){case"json":case"geojson":return e.json();case"html":case"text":return e.text();default:return e.blob()}}).then(function(e){if("json"!==s.f&&"geojson"!==s.f||a)return e;var t=function(t,e,r,n){if(400<=t.code){var o=t.message,i=t.code;throw new J(o,i,t,e,r)}if(t.error){var a=t.error,o=a.message,i=a.code,s=a.messageCode,a=s||i||"UNKNOWN_ERROR_CODE";if(498===i||499===i||"GWM_0003"===s||400===i&&"Unable to generate token."===o)throw n||new Z(o,a,t,e,r);throw new J(o,a,t,e,r)}if("failed"!==t.status&&"failure"!==t.status)return t;o=void 0,i="UNKNOWN_ERROR_CODE";try{o=JSON.parse(t.statusMessage).message,i=JSON.parse(t.statusMessage).code}catch(e){o=t.statusMessage||t.message}throw new J(o,i,t,e,r)}(e,n,o,r);return r&&(e=n.toLowerCase().split(/\/rest(\/admin)?\/services\//)[0],o.authentication.federatedServers[e]={token:[],expires:new Date(Date.now()+864e5)},r=null),t})}function re(e){return"string"==typeof e&&"/"===(e=e.trim())[e.length-1]?e.slice(0,-1):e}function ne(e){return e.replace(/^#/,"").split("&").reduce(function(e,t){var r,t=(r=t,r=(t=t.split("="))[0],t=t[1],{key:decodeURIComponent(r),value:decodeURIComponent(t)});return e[t.key]=t.value,e},{})}function oe(e){return(e=void 0===e?{}:e).portal?re(e.portal):e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function ie(e){return e.owner?Promise.resolve(e.owner):e.item&&e.item.owner?Promise.resolve(e.item.owner):e.authentication&&e.authentication.getUsername?e.authentication.getUsername():Promise.reject(new Error("Could not determine the owner of this item. Pass the `owner`, `item.owner`, or `authentication` option."))}function ae(n){return ie(n).then(function(e){var t,r=n.folderId?oe(n)+"/content/users/"+e+"/"+n.folderId+"/items/"+n.item.id+"/update":oe(n)+"/content/users/"+e+"/items/"+n.item.id+"/update";return n.params=x(x({},n.params),(t=n.item,(e=JSON.parse(JSON.stringify(t))).data&&("undefined"!=typeof Blob&&t.data instanceof Blob||"ReadStream"===t.data.constructor.name?e.file=t.data:e.text=t.data,delete e.data),e)),te(r,n)})}function se(e,t){return te(ue(e,t),x({httpMethod:"GET"},t))}var ue=function(e,t){return("string"==typeof t?t:oe(t))+"/content/items/"+e};function ce(e){var t=ue(e.id,e)+"/relatedItems",r=x({httpMethod:"GET",params:{direction:e.direction}},e);return"string"==typeof e.relationshipType?r.params.relationshipType=e.relationshipType:r.params.relationshipTypes=e.relationshipType,delete r.direction,delete r.relationshipType,te(t,r)}function le(t){return ie(t).then(function(e){return te(oe(t)+"/content/users/"+e+"/items/"+t.id+"/unprotect",t)})}function pe(e){return t=e.groupId,te(oe(e=e)+"/community/groups/"+t,x({httpMethod:"GET"},e)).then(function(e){return e.userMembership.memberType}).catch(function(){return"none"});var t}function de(t){return ie(t).then(function(e){return te(oe(t)+"/content/users/"+e+"/items/"+t.id+"/delete",t)})}var fe=(me.prototype.match=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.termStack=this.termStack.concat(e),this},me.prototype.in=function(e){return this.hasRange||this.hasTerms?(e&&"*"!==e&&(this.q+=e+":"),this.commit()):(K("`in("+(e?'"'+e+'"':"")+")`"+" was called with no call to `match(...)` or `from(...)`/`to(...)`. Your query was not modified."),this)},me.prototype.startGroup=function(){return this.commit(),0<this.openGroups&&(this.q+=" "),this.openGroups++,this.q+="(",this},me.prototype.endGroup=function(){return this.openGroups<=0?K("`endGroup(...)` was called without calling `startGroup(...)` first. Your query was not modified."):(this.commit(),this.openGroups--,this.q+=")"),this},me.prototype.and=function(){return this.addModifier("and")},me.prototype.or=function(){return this.addModifier("or")},me.prototype.not=function(){return this.addModifier("not")},me.prototype.from=function(e){return this.hasTerms?K('`from(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Optionally, you may see this because dates are incorrectly formatted. Dates should be a primative Date value, aka a number in milliseconds or Date object, ie new Date("2020-01-01"). Your query was not modified.'):this.rangeStack[0]=e,this},me.prototype.to=function(e){return this.hasTerms?K('`to(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Optionally, you may see this because dates are incorrectly formatted. Dates should be a primative Date value, aka a number in milliseconds or Date object, ie new Date("2020-01-01"). Your query was not modified.'):this.rangeStack[1]=e,this},me.prototype.boost=function(e){return this.commit(),this.q+="^"+e,this},me.prototype.toParam=function(){return this.commit(),this.cleanup(),this.q},me.prototype.clone=function(){return this.commit(),this.cleanup(),new me(this.q+"")},me.prototype.addModifier=function(e){return this.currentModifer?(K("You have called `"+this.currentModifer+"()` after `"+e+"()`. Your current query was not modified."),this):(this.commit(),""===this.q&&"not"!==e?K("You have called `"+e+"()` without calling another method to modify your query first. Try calling `match()` first."):(this.currentModifer=e,this.q+=""===this.q?"":" ",this.q+=e.toUpperCase()+" "),this)},me.prototype.needsQuotes=function(e){return/\s|:/g.test(e)},me.prototype.formatTerm=function(e){return e instanceof Date?e.getTime():"string"==typeof e&&this.needsQuotes(e)?'"'+e+'"':e},me.prototype.commit=function(){var t=this;return this.currentModifer=void 0,this.hasRange&&(this.q+="["+this.formatTerm(this.rangeStack[0])+" TO "+this.formatTerm(this.rangeStack[1])+"]",this.rangeStack=[void 0,void 0]),this.hasTerms&&(this.q+=this.termStack.map(function(e){return t.formatTerm(e)}).join(" "),this.termStack=[]),this},Object.defineProperty(me.prototype,"hasTerms",{get:function(){return 0<this.termStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(me.prototype,"hasRange",{get:function(){return this.rangeStack.length&&this.rangeStack[0]&&this.rangeStack[1]},enumerable:!1,configurable:!0}),me.prototype.cleanup=function(){if(0<this.openGroups)for(K("Automatically closing "+this.openGroups+" group(s). You can use `endGroup(...)` to remove this warning.");0<this.openGroups;)this.q+=")",this.openGroups--;var e=this.q;this.q=e.replace(/( AND ?| NOT ?| OR ?)*$/,""),e!==this.q&&K("`startGroup(...)` was called without calling `endGroup(...)` first. Your query was not modified."),this.q=this.q.replace(/(\(\))*/,"")},me);function me(e){void 0===e&&(e=""),this.termStack=[],this.rangeStack=[],this.openGroups=0,this.q=e}function he(r,n){var o,i,e,t="string"==typeof r||r instanceof fe?{httpMethod:"GET",params:{q:r}}:(o=r,t=["q","num","start","sortField","sortOrder","searchUserAccess","searchUserName","filter","countFields","countSize","categories","categoryFilters"],(i=x(x({params:{}},{httpMethod:"GET"}),o)).params=t.reduce(function(e,t){return!o[t]&&"boolean"!=typeof o[t]||(e[t]=o[t]),e},i.params),["params","httpMethod","rawResponse","authentication","portal","fetch","maxUrlLength","headers"].reduce(function(e,t){return i[t]&&(e[t]=i[t]),e},{}));switch(n){case"item":e="/search";break;case"group":e="/community/groups";break;case"groupContent":if("string"==typeof r||r instanceof fe||!r.groupId)return Promise.reject(new Error("you must pass a `groupId` option to `searchGroupContent`"));e="/content/groups/"+r.groupId+"/search";break;default:e="/portals/self/users/search"}return te(oe(t)+e,t).then(function(t){return t.nextStart&&-1!==t.nextStart&&(t.nextPage=function(){var e;return"string"==typeof r||r instanceof fe?e={q:r,start:t.nextStart}:(e=r).start=t.nextStart,he(e,n)}),t})}function ge(e){return he(e,"item")}function ye(e,t){if(0===e.length)return[];for(var r=[],n=0;n<e.length;n+=t)r.push(e.slice(n,n+t));return r}function ve(e){var t=e.id,r=oe(e)+"/community/groups/"+t+"/addUsers",t=Object.assign({},e,{admins:void 0,users:void 0}),t=P(be("users",e.users,t),be("admins",e.admins,t)).map(function(e){return te(r,e).catch(function(e){return{errors:[e]}})});return Promise.all(t).then(we)}function be(o,e,i){return!e||e.length<1?[]:ye(e,25).map(function(e){return t=o,r=e,n=i,Object.assign({},n,((e={})[t]=r,e.params=x(x({},n.params),((n={})[t]=r,n)),e));var t,r,n})}function we(e){var t=e.filter(function(e){return e.notAdded}).reduce(function(e,t){return e.concat(t.notAdded)},[]),e=e.filter(function(e){return e.errors}).reduce(function(e,t){return e.concat(t.errors)},[]),t={notAdded:t};return 0<e.length&&(t.errors=e),t}function Ce(t){var e=t.id,r=t.users,n=oe(t)+"/community/groups/"+e+"/removeUsers",r=ye(r,25).map(function(e){e=x(x({},t),{users:e,params:{users:e}});return te(n,e).catch(function(e){return{errors:[e]}})});return Promise.all(r).then(function(e){var t=function(r){return e.filter(function(e){return e[r]}).reduce(function(e,t){return e.concat(t[r])},[])},r=t("errors"),t={notRemoved:t("notRemoved")};return r.length?x(x({},t),{errors:r}):t})}function ke(e){var t,r=e.id,n=oe(e)+"/community/groups/"+r+"/invite",e=ye((t=e).users,25).map(function(e){return function(e,t){t=Object.assign({},t);return t.params=x(x({},t.params),{users:e,role:t.role,expiration:t.expiration}),t}(e,t)}).map(function(e){return te(n,e).catch(function(e){return{errors:[e]}})});return Promise.all(e).then(Ae)}function Ae(e){var t=e.every(function(e){return e.success}),e=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),t={success:t};return 0<e.length&&(t.errors=e),t}function Se(e){return te(oe(e)+"/community/groups/"+e.id+"/unprotect",e)}function Te(e){return te(oe(e)+"/community/groups/"+e.id+"/delete",x({},e))}function Ee(e){var t=oe(e)+"/community/groups/"+e.id+"/updateUsers",r={authentication:e.authentication,params:{}};return"admin"===e.newMemberType?r.params.admins=e.users:r.params.users=e.users,te(t,r)}function Ie(e){var n,t=oe(e)+"/portals/self/createNotification",e=ye((n=e).users,n.batchSize||25).map(function(e){return t=e,r=n,(e=Object.assign({},r)).params=x(x({},e.params),{users:t,subject:r.subject,message:r.message,notificationChannelType:e.notificationChannelType}),e;var t,r}).map(function(e){return te(t,e).catch(function(e){return{errors:[e]}})});return Promise.all(e).then(xe)}function xe(e){var t=e.every(function(e){return e.success}),e=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),t={success:t};return 0<e.length&&(t.errors=e),t}function Oe(e){var t,r,n={httpMethod:"GET"};return"string"==typeof e?r="https://www.arcgis.com/sharing/rest/community/users/"+e:(t=e.username||e.authentication.username,r=oe(e)+"/community/users/"+encodeURIComponent(t),n=x(x({},e),n)),te(r,n)}function De(t){return ge({q:"id: "+t.id+" AND group: "+t.groupId,start:1,num:10,sortField:"title",authentication:t.authentication,httpMethod:"POST"}).then(function(e){if(0<e.total)return e.results.some(function(e){return e.id===t.id})})}function Pe(a){return De(a).then(function(e){if(e)return{itemId:a.id,shortcut:!0,notSharedWith:[]};var t=a.authentication.username,e=a.owner,n=a.confirmItemControl,e=e||t;if(e===t)return Ne(a);var o=!1,i=!1;return Promise.all([Oe({username:t,authentication:a.authentication}),Oe({username:e,authentication:a.authentication}),pe(a)]).then(function(e){var t=e[0],r=e[1],e=e[2];return o="org_admin"===t.role&&!t.roleId,i=t.orgId!==r.orgId,function(e,t,r,n,o,i){var a=[];if(i.groupId!==e.favGroupId)if(t){if(!n)throw Error("This item can not be shared to shared editing group "+i.groupId+" by "+e.username+" as they not the item owner or org admin.");a.push(Re(e,e,!1,"Error adding "+e.username+" as member to edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i),Re(e,o,!0,"none"===r?"Error adding user "+o.username+" to edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.":"Error promoting user "+o.username+" to admin in edit group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i))}else if(n)a.push(Re(e,e,!1,"Error adding "+e.username+" as member to view group "+i.groupId+". Consequently item "+i.id+" was not shared to the group.",i));else if("none"===r)throw new Error("This item can not be shared by "+e.username+" as they are not a member of the specified group "+i.groupId+".");return a}(t,!!n,e,o,r,a)}).then(function(e){var t=e[0],r=(void 0===t?{promise:Promise.resolve({notAdded:[]}),revert:function(e){return Promise.resolve(e)}}:t).revert;return Promise.all(e.map(function(e){return e.promise})).then(function(){return Ne(a,o,i)}).then(function(e){return r(e)})})}).then(function(e){if(e.notSharedWith.length)throw Error("Item "+a.id+" could not be shared to group "+a.groupId+".");return e})}function Ne(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.authentication.username,o=e.owner||n,i=oe(e)+"/content/items/"+e.id+"/share";return(o===n||t&&!r)&&(i=oe(e)+"/content/users/"+o+"/items/"+e.id+"/share"),e.params={groups:e.groupId,confirmItemControl:e.confirmItemControl},te(i,e)}function Re(e,t,r,n,o){var i,a,s=t.groups||[],u=s.find(function(e){return e.id===o.groupId});if(e.orgId!==t.orgId)throw Error("User "+t.username+" is not a member of the same org as "+e.username+". Consequently they can not be added added to group "+o.groupId+" nor can item "+o.id+" be shared to the group.");if(!u&&511<s.length)throw Error("User "+t.username+" already has 512 groups, and can not be added to group "+o.groupId+". Consequently item "+o.id+" can not be shared to the group.");return a=u?r&&"member"===u.userMembership.memberType?(i=Ee({id:o.groupId,users:[t.username],newMemberType:"admin",authentication:o.authentication}).then(function(e){e=e.results.reduce(function(e,t){return t.success||e.push(t.username),e},[]);return Promise.resolve({notAdded:e})}).catch(function(){return{notAdded:[t.username]}}),function(e){return Ee({id:o.groupId,users:[t.username],newMemberType:"member",authentication:o.authentication}).then(function(){return e}).catch(function(){return e})}):(i=Promise.resolve({notAdded:[]}),function(e){return Promise.resolve(e)}):(i=ve(((a={id:o.groupId})[r?"admins":"users"]=[t.username],a.authentication=o.authentication,a)).then(function(e){if(e.errors&&e.errors.length)throw e.errors[0];return e}).catch(function(){return{notAdded:[t.username]}}),function(e){return Ce({id:o.groupId,users:[t.username],authentication:o.authentication}).then(function(){return e})}),{promise:i.then(function(e){if(e.notAdded.length)throw new Error(n);return e}),revert:a}}function _e(o){return De(o).then(function(e){if(!e)return Promise.resolve({itemId:o.id,shortcut:!0,notUnsharedFrom:[]});var r=o.authentication.username,n=o.owner;return Promise.all([pe(o),Oe({username:r,authentication:o.authentication})]).then(function(e){var t=e[0],e=e[1],e="org_admin"===e.role&&!e.roleId;if(!((n||r)===r)&&!e&&["admin","owner"].indexOf(t)<0)throw Error("This item can not be unshared from group "+o.groupId+" by "+r+" as they not the item owner, an org admin, group admin or group owner.");return function(e){var t=e.authentication.username,r=e.owner||t,n=oe(e)+"/content/items/"+e.id+"/unshare";r===t&&(n=oe(e)+"/content/users/"+r+"/items/"+e.id+"/unshare");return e.params={groups:e.groupId},te(n,e)}(o)}).then(function(e){if(e.notUnsharedFrom.length)throw Error("Item "+o.id+" could not be unshared to group "+o.groupId);return e})})}function Ue(e){if("string"==typeof e)return e.replace(/\/sharing\/rest\/?$/,"");if("object"==typeof e){var t=e.portalSelf||e,r=t.portalHostname,n=t.urlKey,o=t.customBaseUrl;if(r||n&&o)return t.isPortal?"https://"+t.portalHostname:"https://"+t.urlKey+"."+t.customBaseUrl}return Ue(oe(e))}var je={devext:"https://d1011m9qpnz5mw.cloudfront.net",qaext:"https://dyq9ux9ryu4qj.cloudfront.net",www:"https://d1iq7pbacwn5rb.cloudfront.net"};function Me(e){if(e.isPortal)return Ue(e)+"/apps/sites";e=e.portalHostname.split(".")[0];return(je[e]||je.www)+"/opendata-ui/assets"}function Fe(e){return Ue(e)+"/sharing/rest"}function Le(e){return e=(e=e.toLowerCase()).includes("//")?e.split("//")[1]:e}function Ge(e){var t;return e.match(/(qaext|\.mapsqa)\.arcgis.com/)?t="https://hubqa.arcgis.com":e.match(/(devext|\.mapsdevext)\.arcgis.com/)?t="https://hubdev.arcgis.com":e.match(/(www|\.maps)\.arcgis.com/)&&(t="https://hub.arcgis.com"),t}function qe(e){if(e.isPortal)throw new Error("Hub Url is not available in ArcGIS Enterprise");return Ge(e.portalHostname)}var Be=function(e,t,r){var n=e.id,e=e.access,t=Fe(t)+"/content/items/"+n,n=new URLSearchParams({f:"json"});return"public"!==e&&r&&n.append("token",r),t+"?"+n.toString()},Ye=/\/(map|feature)server/i,We=function(e){e=e.match(Ye),e=e&&e[1];return e&&g(e)+" Service"};function He(e){var t=e&&e.hubApiUrl;return t||Ge(Fe(e))}function Ve(e,t){return t.rawResponse=!1,te(e,t).then(function(e){var t={token:e.access_token,username:e.username,expires:new Date(Date.now()+(1e3*e.expires_in-1e3)),ssl:!0===e.ssl};return e.refresh_token&&(t.refreshToken=e.refresh_token),t})}function ze(e,t){return"undefined"!=typeof window&&window.location&&window.location.host?t.params.referer=window.location.host:t.params.referer=Q,te(e,t)}var Je=/^https?:\/\/(\S+)\.arcgis\.com.+/;function Ke(e){return Je.test(e)}function $e(e){if(!Je.test(e))return null;e=e.match(Je)[1].split(".").pop();return e.includes("dev")?"dev":e.includes("qa")?"qa":"production"}function Qe(e,t){t=re(function(e){if(!Je.test(e))return e;switch($e(e)){case"dev":return"https://devext.arcgis.com/sharing/rest";case"qa":return"https://qaext.arcgis.com/sharing/rest";default:return"https://www.arcgis.com/sharing/rest"}}(t)).replace(/https?:\/\//,""),e=re(e).replace(/https?:\/\//,"");return new RegExp(e,"i").test(t)}var Xe=(Object.defineProperty(Ze.prototype,"token",{get:function(){return this._token},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"tokenExpires",{get:function(){return this._tokenExpires},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"refreshToken",{get:function(){return this._refreshToken},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"refreshTokenExpires",{get:function(){return this._refreshTokenExpires},enumerable:!1,configurable:!0}),Object.defineProperty(Ze.prototype,"trustedServers",{get:function(){return console.log("DEPRECATED: use federatedServers instead"),this.federatedServers},enumerable:!1,configurable:!0}),Ze.beginOAuth2=function(e,t){void 0===t&&(t=window),e.duration&&console.log("DEPRECATED: 'duration' is deprecated - use 'expiration' instead");var r=x({portal:"https://www.arcgis.com/sharing/rest",provider:"arcgis",expiration:20160,popup:!0,popupWindowFeatures:"height=400,width=600,menubar=no,location=yes,resizable=yes,scrollbars=yes,status=yes",state:e.clientId,locale:""},e),n=r.portal,o=r.provider,i=r.clientId,a=r.expiration,s=r.redirectUri,u=r.popup,c=r.popupWindowFeatures,l=r.state,p=r.locale,r=r.params,p="arcgis"===o?n+"/oauth2/authorize?client_id="+i+"&response_type=token&expiration="+(e.duration||a)+"&redirect_uri="+encodeURIComponent(s)+"&state="+l+"&locale="+p:n+"/oauth2/social/authorize?client_id="+i+"&socialLoginProviderName="+o+"&autoAccountCreateForSocial=true&response_type=token&expiration="+(e.duration||a)+"&redirect_uri="+encodeURIComponent(s)+"&state="+l+"&locale="+p;if(r&&(p=p+"&"+z(r)),u){var d,f=((d={promise:null,resolve:null,reject:null}).promise=new Promise(function(e,t){d.resolve=e,d.reject=t}),d);return t["__ESRI_REST_AUTH_HANDLER_"+i]=function(e,t){e?(e=JSON.parse(e),f.reject(new Z(e.errorMessage,e.error))):t&&(t=JSON.parse(t),f.resolve(new Ze({clientId:i,portal:n,ssl:t.ssl,token:t.token,tokenExpires:new Date(t.expires),username:t.username})))},t.open(p,"oauth-window",c),f.promise}t.location.href=p},Ze.completeOAuth2=function(e,o){void 0===o&&(o=window);var t=x({portal:"https://www.arcgis.com/sharing/rest",popup:!0},e),i=t.portal,a=t.clientId,s=t.popup;function r(e,t){try{var r=void 0,n="__ESRI_REST_AUTH_HANDLER_"+a;if(s&&(o.opener?o.opener.parent&&o.opener.parent[n]?r=o.opener.parent[n]:o.opener&&o.opener[n]&&(r=o.opener[n]):o!==o.parent&&o.parent&&o.parent[n]&&(r=o.parent[n]),r))return r(e?JSON.stringify(e):void 0,JSON.stringify(t)),void o.close()}catch(e){throw new Z('Unable to complete authentication. It\'s possible you specified popup based oAuth2 but no handler from "beginOAuth2()" present. This generally happens because the "popup" option differs between "beginOAuth2()" and "completeOAuth2()".')}if(e)throw new Z(e.errorMessage,e.error);return new Ze({clientId:a,portal:i,ssl:t.ssl,token:t.token,tokenExpires:t.expires,username:t.username})}e=ne(o.location.hash);if(!e.access_token){var n=void 0,u="Unknown error";return e.error&&(n=e.error,u=e.error_description),r({error:n,errorMessage:u})}t=e.access_token,n=new Date(Date.now()+1e3*parseInt(e.expires_in,10)-6e4),u=e.username;return r(void 0,{token:t,expires:n,ssl:"true"===e.ssl,username:u})},Ze.fromParent=function(e,n){var o;return!n&&window&&(n=window),new Promise(function(t,r){o=function(e){if(e.source===n.parent&&e.data)try{return t(Ze.parentMessageHandler(e))}catch(e){return r(e)}},n.addEventListener("message",o,!1),n.parent.postMessage({type:"arcgis:auth:requestCredential"},e)}).then(function(e){return n.removeEventListener("message",o,!1),e})},Ze.authorize=function(e,t){e.duration&&console.log("DEPRECATED: 'duration' is deprecated - use 'expiration' instead");var r=x({portal:"https://arcgis.com/sharing/rest",expiration:20160},e),n=r.portal,o=r.clientId,i=r.expiration,r=r.redirectUri;t.writeHead(301,{Location:n+"/oauth2/authorize?client_id="+o+"&expiration="+(e.duration||i)+"&response_type=code&redirect_uri="+encodeURIComponent(r)}),t.end()},Ze.exchangeAuthorizationCode=function(e,t){var e=x({portal:"https://www.arcgis.com/sharing/rest",refreshTokenTTL:20160},e),r=e.portal,n=e.clientId,o=e.redirectUri,i=e.refreshTokenTTL;return Ve(r+"/oauth2/token",{params:{grant_type:"authorization_code",client_id:n,redirect_uri:o,code:t}}).then(function(e){return new Ze({clientId:n,portal:r,ssl:e.ssl,redirectUri:o,refreshToken:e.refreshToken,refreshTokenTTL:i,refreshTokenExpires:new Date(Date.now()+60*(i-1)*1e3),token:e.token,tokenExpires:e.expires,username:e.username})})},Ze.deserialize=function(e){e=JSON.parse(e);return new Ze({clientId:e.clientId,refreshToken:e.refreshToken,refreshTokenExpires:new Date(e.refreshTokenExpires),username:e.username,password:e.password,token:e.token,tokenExpires:new Date(e.tokenExpires),portal:e.portal,ssl:e.ssl,tokenDuration:e.tokenDuration,redirectUri:e.redirectUri,refreshTokenTTL:e.refreshTokenTTL})},Ze.fromCredential=function(e){var t=void 0===e.ssl||e.ssl,r=e.expires||Date.now()+72e5;return new Ze({portal:e.server.includes("sharing/rest")?e.server:e.server+"/sharing/rest",ssl:t,token:e.token,username:e.userId,tokenExpires:new Date(r)})},Ze.parentMessageHandler=function(e){if("arcgis:auth:credential"===e.data.type)return Ze.fromCredential(e.data.credential);if("arcgis:auth:error"!==e.data.type)throw new Error("Unknown message type.");var t=new Error(e.data.error.message);throw t.name=e.data.error.name,t},Ze.prototype.toCredential=function(){return{expires:this.tokenExpires.getTime(),server:this.portal,ssl:this.ssl,token:this.token,userId:this.username}},Ze.prototype.getUser=function(e){var t=this;if(this._pendingUserRequest)return this._pendingUserRequest;if(this._user)return Promise.resolve(this._user);var r=this.portal+"/community/self",e=x(x({httpMethod:"GET",authentication:this},e),{rawResponse:!1});return this._pendingUserRequest=te(r,e).then(function(e){return t._user=e,t._pendingUserRequest=null,e}),this._pendingUserRequest},Ze.prototype.getPortal=function(e){var t=this;if(this._pendingPortalRequest)return this._pendingPortalRequest;if(this._portalInfo)return Promise.resolve(this._portalInfo);var r=this.portal+"/portals/self",e=x(x({httpMethod:"GET",authentication:this},e),{rawResponse:!1});return this._pendingPortalRequest=te(r,e).then(function(e){return t._portalInfo=e,t._pendingPortalRequest=null,e}),this._pendingPortalRequest},Ze.prototype.getUsername=function(){return this.username?Promise.resolve(this.username):this._user?Promise.resolve(this._user.username):this.getUser().then(function(e){return e.username})},Ze.prototype.getToken=function(e,t){return r=this.portal,n=e,o=Ke(r),i=Ke(n),r=$e(r),n=$e(n),o&&i&&r===n||new RegExp(this.portal,"i").test(e)?this.getFreshToken(t):this.getTokenForServer(e,t);var r,n,o,i},Ze.prototype.validateAppAccess=function(r){return this.getToken(this.portal).then(function(e){return te((t=void 0===t?"https://www.arcgis.com/sharing/rest":t)+"/oauth2/validateAppAccess",{method:"POST",params:{f:"json",client_id:r,token:e}});var t})},Ze.prototype.toJSON=function(){return{clientId:this.clientId,refreshToken:this.refreshToken,refreshTokenExpires:this.refreshTokenExpires,username:this.username,password:this.password,token:this.token,tokenExpires:this.tokenExpires,portal:this.portal,ssl:this.ssl,tokenDuration:this.tokenDuration,redirectUri:this.redirectUri,refreshTokenTTL:this.refreshTokenTTL}},Ze.prototype.serialize=function(){return JSON.stringify(this)},Ze.prototype.enablePostMessageAuth=function(e,t){!t&&window&&(t=window),this._hostHandler=this.createPostMessageHandler(e),t.addEventListener("message",this._hostHandler,!1)},Ze.prototype.disablePostMessageAuth=function(e){(e=!e&&window?window:e).removeEventListener("message",this._hostHandler,!1)},Ze.prototype.refreshSession=function(e){return this._user=null,this.username&&this.password?this.refreshWithUsernameAndPassword(e):this.clientId&&this.refreshToken?this.refreshWithRefreshToken():Promise.reject(new Z("Unable to refresh token."))},Ze.prototype.getServerRootUrl=function(e){var t=re(e).split(/\/rest(\/admin)?\/services(?:\/|#|\?|$)/)[0].match(/(https?:\/\/)(.+)/);t[0];var r=t[1],e=t[2].split("/"),t=e[0],e=e.slice(1);return""+r+t.toLowerCase()+"/"+e.join("/")},Ze.prototype.getDomainCredentials=function(t){return this.trustedDomains&&this.trustedDomains.length&&this.trustedDomains.some(function(e){return t.startsWith(e)})?"include":"same-origin"},Ze.prototype.createPostMessageHandler=function(o){var i=this;return function(e){var t=-1<o.indexOf(e.origin),r="arcgis:auth:requestCredential"===e.data.type,n=i.tokenExpires.getTime()>Date.now();t&&r&&(r={},r=n?((n=i.toCredential()).server=n.server.replace("/sharing/rest",""),{type:"arcgis:auth:credential",credential:n}):{type:"arcgis:auth:error",error:{name:"tokenExpiredError",message:"Session token was expired, and not returned to the child application"}},e.source.postMessage(r,e.origin))}},Ze.prototype.getTokenForServer=function(t,r){var n=this,o=this.getServerRootUrl(t),e=this.federatedServers[o];return e&&e.expires&&e.expires.getTime()>Date.now()?Promise.resolve(e.token):this._pendingTokenRequests[o]||(this._pendingTokenRequests[o]=this.fetchAuthorizedDomains().then(function(){return te(o+"/rest/info",{credentials:n.getDomainCredentials(t)}).then(function(e){if(e.owningSystemUrl){if(Qe(e.owningSystemUrl,n.portal))return te(e.owningSystemUrl+"/sharing/rest/info",r);throw new Z(t+" is not federated with "+n.portal+".","NOT_FEDERATED")}if(e.authInfo&&void 0!==n.federatedServers[o])return Promise.resolve({authInfo:e.authInfo});throw new Z(t+" is not federated with any portal and is not explicitly trusted.","NOT_FEDERATED")}).then(function(e){return e.authInfo.tokenServicesUrl}).then(function(e){return n.token&&n.tokenExpires.getTime()>Date.now()?ze(e,{params:{token:n.token,serverUrl:t,expiration:n.tokenDuration,client:"referer"}}):ze(e,{params:{username:n.username,password:n.password,expiration:n.tokenDuration,client:"referer"}}).then(function(e){return n._token=e.token,n._tokenExpires=new Date(e.expires),e})}).then(function(e){return n.federatedServers[o]={expires:new Date(e.expires),token:e.token},delete n._pendingTokenRequests[o],e.token})}),this._pendingTokenRequests[o])},Ze.prototype.getFreshToken=function(e){var t=this;return this.token&&!this.tokenExpires||this.token&&this.tokenExpires&&this.tokenExpires.getTime()>Date.now()?Promise.resolve(this.token):(this._pendingTokenRequests[this.portal]||(this._pendingTokenRequests[this.portal]=this.refreshSession(e).then(function(e){return t._pendingTokenRequests[t.portal]=null,e.token})),this._pendingTokenRequests[this.portal])},Ze.prototype.refreshWithUsernameAndPassword=function(e){var t=this,e=x({params:{username:this.username,password:this.password,expiration:this.tokenDuration}},e);return ze(this.portal+"/generateToken",e).then(function(e){return t._token=e.token,t._tokenExpires=new Date(e.expires),t})},Ze.prototype.refreshWithRefreshToken=function(e){var t=this;if(this.refreshToken&&this.refreshTokenExpires&&this.refreshTokenExpires.getTime()<Date.now())return this.refreshRefreshToken(e);e=x({params:{client_id:this.clientId,refresh_token:this.refreshToken,grant_type:"refresh_token"}},e);return Ve(this.portal+"/oauth2/token",e).then(function(e){return t._token=e.token,t._tokenExpires=e.expires,t})},Ze.prototype.refreshRefreshToken=function(e){var t=this,e=x({params:{client_id:this.clientId,refresh_token:this.refreshToken,redirect_uri:this.redirectUri,grant_type:"exchange_refresh_token"}},e);return Ve(this.portal+"/oauth2/token",e).then(function(e){return t._token=e.token,t._tokenExpires=e.expires,t._refreshToken=e.refreshToken,t._refreshTokenExpires=new Date(Date.now()+60*(t.refreshTokenTTL-1)*1e3),t})},Ze.prototype.fetchAuthorizedDomains=function(){var t=this;return this.server||!this.portal?Promise.resolve(this):this.getPortal().then(function(e){return e.authorizedCrossOriginDomains&&e.authorizedCrossOriginDomains.length&&(t.trustedDomains=e.authorizedCrossOriginDomains.filter(function(e){return!e.startsWith("http://")}).map(function(e){return e.startsWith("https://")?e:"https://"+e})),t})},Ze);function Ze(e){var t;this.clientId=e.clientId,this._refreshToken=e.refreshToken,this._refreshTokenExpires=e.refreshTokenExpires,this.username=e.username,this.password=e.password,this._token=e.token,this._tokenExpires=e.tokenExpires,this.portal=e.portal?re(e.portal):"https://www.arcgis.com/sharing/rest",this.ssl=e.ssl,this.provider=e.provider||"arcgis",this.tokenDuration=e.tokenDuration||20160,this.redirectUri=e.redirectUri,this.refreshTokenTTL=e.refreshTokenTTL||20160,this.server=e.server,this.federatedServers={},this.trustedDomains=[],e.server&&(t=this.getServerRootUrl(e.server),this.federatedServers[t]={token:e.token,expires:e.tokenExpires}),this._pendingTokenRequests={}}var et={app:["Application","City Engine Web Scene","CityEngine Web Scene","Dashboard","Insights Page","Insights Workbook","Operation View","Web Mapping Application","StoryMap","Web Experience","Urban Model"],dataset:["CSV Collection","CSV","Feature Collection Template","Feature Collection","Feature Layer","Feature Service","File Geodatabase","GeoJSON","GeoJson","KML Collection","KML","Microsoft Excel","Raster Layer","Shapefile","Stream Service","Table"],document:["CAD Drawing","Document Link","Hub Page","Site Page","Image","iWork Keynote","iWork Numbers","iWork Pages","Microsoft Powerpoint","Microsoft Visio","Microsoft Word","Notebook","PDF","Pro Map","Report Template"],event:["Hub Event"],feedback:["Form","Quick Capture Project"],initiative:["Hub Initiative"],template:["Hub Initiative Template"],solution:["Solution"],map:["Image Collection","Image Service","Map Service Layer","Map Service","Scene Service","Scene Layer","Vector Tile Service","Web Map Service","Web Map Tile Service","Web Map","Web Scene","WFS","WMS","WMTS"],other:["360 VR Experience","AppBuilder Widget Package","Application Configuration","ArcPad Package","Code Attachment","Code Sample","Desktop Add In","Desktop Application Template","Desktop Application","Desktop Style","Explorer Add In","Explorer Layer","Geocoding Service","Geometry Service","Geoprocessing Package","Geoprocessing Sample","Geoprocessing Service","Layer File","Layer Package","Layer Template","Layer","Layout","Locator Package","Map Area","Map Document","Map Package","Map Service Definition","Map Template","Mobile Application","Mobile Map Package","Native Application","Network Analysis Service","Operations Dashboard Add In","Project Package","Project Template","Raster Function Template","Rule Package","Scene Package","Service Definition","SQLite Geodatabase","Style","Tile Package","Vector Tile Package","Workflow Manager Package"],site:["Hub Site Application","Site Application"]},tt=et.app,rt=et.dataset,nt=et.document,ot=et.event,it=et.feedback,at=et.initiative,st=et.map,ut=et.other,ct=et.site,lt=["360 VR Experience","Application","CityEngine Web Scene","Code Sample","CSV Collection","CSV","CAD Drawing","Desktop Application","Desktop Application Template","Desktop Style","File Geodatabase","GeoJson","Geoprocessing Package","Geoprocessing Sample","Image","iWork Keynote","iWork Numbers","KML Collection","KML","Layer","Layer File","Layer Package","Layout","Locator Package","Map Package","Map Service Definition","Map Template","Microsoft Excel","Microsoft Powerpoint","Microsoft Visio","Microsoft Word","Notebook","Operations Dashboard Add In","PDF","Pro Map","Project Package","Project Template","Raster function template","Rule Package","Service Definition","Shapefile","Vector Tile Package","Workflow Manager Package"],pt=["Data"],dt={app:tt.concat(it),dataset:rt,document:nt,event:ot,initiative:at,map:st,other:ut,site:ct,downloadableTypes:lt,downloadableTypeKeywords:pt,apiTypes:["Feature Service","Map Service","Image Service"]};function ft(e){return-1!==lt.indexOf(e.type)||e.typeKeywords&&pt.some(function(t){return e.typeKeywords.some(function(e){return e===t})})}function mt(e,t,r,n,o){return{xmin:e,ymin:t,xmax:r,ymax:n,spatialReference:{wkid:o=void 0===o?4326:o}}}function ht(e){return[[e.xmin,e.ymin],[e.xmax,e.ymax]]}var gt={xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:{wkid:4326}};function yt(e){var t=e.portalSelf,r=t.defaultExtent,t=d(t,"helperServices.geometry.url");if(!t)return Promise.resolve(gt);if(!r)return Promise.resolve(gt);t+="/project",r={httpMethod:"POST",params:{geometries:JSON.stringify({geometryType:"esriGeometryEnvelope",geometries:[r]}),transformForward:!1,transformation:"",inSR:r.spatialReference.wkid,outSR:4326,f:"json"}};return e.authentication&&(r.authentication=e.authentication),te(t,r).then(function(e){e=e.geometries[0];return{xmin:e.xmin,ymin:e.ymin,xmax:e.xmax,ymax:e.ymax,spatialReference:{wkid:4326}}}).catch(function(e){return gt})}function vt(e){return Array.isArray(e)&&Array.isArray(e[0])&&Array.isArray(e[1])}var bt=[{type:"CC0-1.0",abbr:"CC0",name:"Public Domain Dedication",url:"http://creativecommons.org/publicdomain/zero/1.0"},{type:"CC-BY-4.0",abbr:"CC BY",name:"Attribution 4.0 International",url:"http://creativecommons.org/licenses/by/4.0"},{type:"CC-BY-3.0",abbr:"CC BY 3.0",name:"Attribution 3.0 Unported",url:"http://creativecommons.org/licenses/by/3.0"},{type:"CC-BY-2.5",abbr:"CC BY 2.5",name:"Attribution 2.5 Generic",url:"http://creativecommons.org/licenses/by/2.5"},{type:"CC-BY-2.0",abbr:"CC BY 2.0",name:"Attribution 2.0 Generic",url:"http://creativecommons.org/licenses/by/2.0"},{type:"CC-BY-1.0",abbr:"CC BY 1.0",name:"Attribution 1.0 Generic",url:"http://creativecommons.org/licenses/by/1.0"},{type:"CC-BY-SA-4.0",abbr:"CC BY-SA",name:"Attribution-ShareAlike 4.0 International",url:"http://creativecommons.org/licenses/by-sa/4.0"},{type:"CC-BY-SA-3.0",abbr:"CC BY-SA 3.0",name:"Attribution-ShareAlike 3.0 Unported",url:"http://creativecommons.org/licenses/by-sa/3.0"},{type:"CC-BY-SA-2.5",abbr:"CC BY-SA 2.5",name:"Attribution-ShareAlike 2.5 Generic",url:"http://creativecommons.org/licenses/by-sa/2.5"},{type:"CC-BY-SA-2.0",abbr:"CC BY-SA 2.0",name:"Attribution-ShareAlike 2.0 Generic",url:"http://creativecommons.org/licenses/by-sa/2.0"},{type:"CC-BY-SA-1.0",abbr:"CC BY-SA 1.0",name:"Attribution-ShareAlike 1.0 Generic",url:"http://creativecommons.org/licenses/by-sa/1.0"},{type:"CC-BY-ND-4.0",abbr:"CC BY-ND",name:"Attribution-NoDerivatives 4.0 International",url:"http://creativecommons.org/licenses/by-nd/4.0"},{type:"CC-BY-ND-3.0",abbr:"CC BY-ND 3.0",name:"Attribution-NoDerivs 3.0 Unported",url:"http://creativecommons.org/licenses/by-nd/3.0"},{type:"CC-BY-ND-2.5",abbr:"CC BY-ND 2.5",name:"Attribution-NoDerivs 2.5 Generic",url:"http://creativecommons.org/licenses/by-nd/2.5"},{type:"CC-BY-ND-2.0",abbr:"CC BY-ND 2.0",name:"Attribution-NoDerivs 2.0 Generic",url:"http://creativecommons.org/licenses/by-nd/2.0"},{type:"CC-BY-ND-1.0",abbr:"CC BY-ND 1.0",name:"Attribution-NoDerivs 1.0 Generic",url:"http://creativecommons.org/licenses/by-nd/1.0"},{type:"CC-BY-NC-4.0",abbr:"CC BY-NC",name:"Attribution-NonCommercial 4.0 International",url:"https://creativecommons.org/licenses/by-nc/4.0"},{type:"CC-BY-NC-3.0",abbr:"CC BY-NC 3.0",name:"Attribution-NonCommercial 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc/3.0"},{type:"CC-BY-NC-2.5",abbr:"CC BY-NC 2.5",name:"Attribution-NonCommercial 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc/2.5"},{type:"CC-BY-NC-2.0",abbr:"CC BY-NC 2.0",name:"Attribution-NonCommercial 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc/2.0"},{type:"CC-BY-NC-1.0",abbr:"CC BY-NC 1.0",name:"Attribution-NonCommercial 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc/1.0"},{type:"CC-BY-NC-SA-4.0",abbr:"CC BY-NC-SA",name:"Attribution-NonCommercial-ShareAlike 4.0 International",url:"https://creativecommons.org/licenses/by-nc-sa/4.0"},{type:"CC-BY-NC-SA-3.0",abbr:"CC BY-NC-SA 3.0",name:"Attribution-NonCommercial-ShareAlike 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc-sa/3.0"},{type:"CC-BY-NC-SA-2.5",abbr:"CC BY-NC-SA 2.5",name:"Attribution-NonCommercial-ShareAlike 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/2.5"},{type:"CC-BY-NC-SA-2.0",abbr:"CC BY-NC-SA 2.0",name:"Attribution-NonCommercial-ShareAlike 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/2.0"},{type:"CC-BY-NC-SA-1.0",abbr:"CC BY-NC-SA 1.0",name:"Attribution-NonCommercial-ShareAlike 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc-sa/1.0"},{type:"CC-BY-NC-ND-4.0",abbr:"CC BY-NC-ND",name:"Attribution-NonCommercial-NoDerivatives 4.0 International",url:"https://creativecommons.org/licenses/by-nc-nd/4.0"},{type:"CC-BY-NC-ND-3.0",abbr:"CC BY-NC-ND 3.0",name:"Attribution-NonCommercial-NoDerivs 3.0 Unported",url:"https://creativecommons.org/licenses/by-nc-nd/3.0"},{type:"CC-BY-NC-ND-2.5",abbr:"CC BY-NC-ND 2.5",name:"Attribution-NonCommercial-NoDerivs 2.5 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/2.5"},{type:"CC-BY-NC-ND-2.0",abbr:"CC BY-NC-ND 2.0",name:"Attribution-NonCommercial-NoDerivs 2.0 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/2.0"},{type:"CC-BY-NC-ND-1.0",abbr:"CC BY-NC-ND 1.0",name:"Attribution-NonCommercial-NoDerivs 1.0 Generic",url:"https://creativecommons.org/licenses/by-nc-nd/1.0"},{type:"PDDL-1.0",abbr:"PDDL",name:"ODC Public Domain Dedication and License",url:"http://opendatacommons.org/licenses/pddl/summary"},{type:"ODbL-1.0",abbr:"ODbL",name:"ODC Open Database License",url:"http://opendatacommons.org/licenses/odbl/summary"},{type:"ODC-BY-1.0",abbr:"ODC BY",name:"ODC Attribution License",url:"http://opendatacommons.org/licenses/by/summary"}];function wt(r){var e={type:(r=r||"")?"custom":"none",text:r},t=!1,n=bt.filter(function(e){return t=e,(e=(e=r).toLowerCase()).includes(t.name.toLowerCase())||e.includes(t.url.toLowerCase())||e.includes(t.abbr.toLowerCase());var t});return n.length&&(t=!0,e=n.pop()),t||(n=void 0,!function(e){try{return!!new URL(e).protocol}catch(e){return!1}}(r)?(t=r,new RegExp(/^<a[\s]+(href\s?=\s?["'].*?["'])+([^>]?)>((?:.(?!\<\/a\>))*.)?<\/a>$|^<a[\s]+(href\s?=\s?["'].*?["'])+([^>]?)\/>/).test(t)&&(t=new RegExp(/href\s?=\s?["'](.*?)["']/),n=r.match(t)[1])):n=r,n&&(e.url=n,e.text="")),e.text||delete e.text,e}var Ct={};function kt(e){void 0===e&&(e=""),console.warn("DEPRECATED: Use getCollection() instead. getCategory will be removed at v10.0.0");e=St(e);return"feedback"===e?"app":e}function At(e){var t=(e=void 0===e?{}:e).type,r=e.typeKeywords||[];return("Site Application"===e.type||"Web Mapping Application"===e.type&&E(r,"hubSite"))&&(t="Hub Site Application"),("Site Page"===e.type||"Web Mapping Application"===e.type&&E(r,"hubPage"))&&(t="Hub Page"),"Hub Initiative"===e.type&&E(r,"hubInitiativeTemplate")&&(t="Hub Initiative Template"),t="Web Mapping Application"===e.type&&E(r,"hubSolutionTemplate")?"Solution":t}function St(e){if(Ct[e=void 0===e?"":e])return Ct[e];for(var t=0,r=Object.keys(et);t<r.length;t++)for(var n=r[t],o=0,i=et[n];o<i.length;o++){var a=i[o];if(e.toLowerCase()===a.toLowerCase())return Ct[e]=n}}function Tt(e){return e&&"feature service"===e.toLowerCase()}function Et(e){return(e=e&&e.match(/\/\d+$/))&&e[0].slice(1)}function It(e){return Et(e.url)||Tt(e.type)&&E(e.typeKeywords,"Singlelayer")&&"0"}function xt(t,e){if(E(["template","feedback"],t.family))return t.id;if(Yt(t)){var r=(d(e,"data.values.pages")||[]).find(function(e){return e.id===t.id});return r?r.slug:t.id}if(t.slug){r=d(e,"domainInfo.orgKey");return d(e,"data.values.isUmbrella")?t.slug:Dt(t.slug,r)}return t.hubId||t.id}function Ot(e){e=e?e.split("_"):[];return{itemId:e[0],layerId:e[1]}}function Dt(e,t){return t&&e.match(t+"::")?e.split(t+"::")[1]:e}function Pt(e){if(!e)return e;var t=["categories",""];return e.map(function(e){return e.split("/")}).reduce(function(e,t,r){return P(e,t)},[]).filter(function(e){return!E(t,e.toLowerCase())})}function Nt(e){var t,r;switch((e||"").toLowerCase()){case"image service":t="dataset";break;case"feature service":case"raster layer":t="map";break;case"microsoft excel":t="document";break;case"cad drawing":case"feature collection template":case"report template":t="content";break;default:t={other:"content",solution:"template"}[r=St(e)]||r}return t}function Rt(e){return console.warn("DEPRECATED: Use getFamily() instead. getItemHubType() will be removed at v10.0.0"),St(At(e="string"==typeof e?{type:e}:e))}function _t(e){var t=new Date(e.created),r="item.created",n=e.properties,r=Object.assign({},e,{identifier:e.id,errors:[],item:e,name:e.title,hubType:Rt(e),categories:Pt(e.categories),itemCategories:e.categories,summary:e.snippet||e.description,publisher:{name:e.owner,username:e.owner},permissions:{visibility:e.access,control:e.itemControl||"view"},actionLinks:n&&n.links,hubActions:n&&n.actions,metrics:n&&n.metrics,isDownloadable:ft(e),boundary:(n=e.extent)&&n.length&&{geometry:mt(n[0][0],n[0][1],n[1][0],n[1][1])},license:{name:"Custom License",description:e.accessInformation},createdDate:t,createdDateSource:r,publishedDate:t,publishedDateSource:r,updatedDate:new Date(e.modified),updatedDateSource:"item.modified",structuredLicense:wt(e.licenseInfo)});return Ft(r,e.type)}function Ut(e){if(e){var t=e.id,r=e.attributes;if(r){var n=Ot(t).itemId,o=r.owner,i=r.orgId,a=r.created,s=r.modified,u=r.name,c=r.title,l=r.type,p=r.typeKeywords,d=r.description,f=r.snippet,m=r.tags,h=r.thumbnail,g=r.categories,y=r.contentStatus,v=r.spatialReference,b=r.accessInformation,w=r.licenseInfo,C=r.culture,k=r.url,A=r.access,S=r.proxyFilter,T=r.properties,E=r.appCategories,I=r.industries,x=r.languages,O=r.largeThumbnail,D=r.banner,P=r.screenshots,N=r.listed,R=r.ownerFolder,_=r.size,U=r.protected,j=r.commentsEnabled,M=r.numComments,F=r.numRatings,L=r.avgRating,G=r.numViews,q=r.itemControl,B=r.scoreCompleteness,Y=r.itemExtent,e=r.itemModified,t=r.modifiedProvenance,r=r.serviceSpatialReference;return{id:n,owner:o,orgId:i,created:a,modified:e||"item.modified"===t&&s,title:c||u,type:k&&We(k)||l,typeKeywords:p,description:d,tags:m,snippet:f,thumbnail:h,extent:Y||[],categories:g,contentStatus:y,spatialReference:v||r,accessInformation:b,licenseInfo:w,culture:C,url:k,access:A,size:_,protected:U,proxyFilter:S,properties:T,appCategories:E,industries:I,languages:x,largeThumbnail:O,banner:D,screenshots:P,listed:N,ownerFolder:R,commentsEnabled:j,numComments:M,numRatings:F,avgRating:L,numViews:G,itemControl:q,scoreCompleteness:B}}}}function jt(e,t){var r=e.id,r=e.slug||t||r,r=x(x({},e),{hubId:t,identifier:r});return Gt(r,{relative:qt(r)})}function Mt(e,t){var r=xt(e,t);return{relative:r=qt(e,r),absolute:""+d(t,"item.url").replace(/\/$/,"")+r}}var Ft=function(e,t){var r=Nt(t),n=At(x(x({},e.item),{type:t})),n=x(x({},e),{type:t,family:r,normalizedType:n});return Gt(n,{relative:qt(n)})},Lt=function(e,t){var r=Mt(e,t),t=r.relative,r=r.absolute;return Gt(e,{relative:t,site:r})},Gt=function(e,t){t=x(x({},e.urls),t);return x(x({},e),{urls:t})},qt=function(e,t){var r=e.family,n=t||e.identifier,o=Bt(e);return o||(t="/content","feedback"===e.family?t="/feedback/surveys":Yt(e)?t="/pages":-1<["app","dataset","document","map","template"].indexOf(r)&&(t="/"+r+"s"),o=t+"/"+n),o},Bt=function(e){var t,r=e.normalizedType,n=e.identifier;return"Solution"===r&&(0<(null===(e=e.typeKeywords)||void 0===e?void 0:e.indexOf("Deployed"))&&(t="/content/"+n),t="/templates/"+n+"/about"),t},Yt=function(e){return E(["Hub Page","Site Page"],e.type)};const Wt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";const Ht="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var Vt={atob:function(t){if((t=(t=(t=`${t}`).replace(/[ \t\n\f\r]/g,"")).length%4==0?t.replace(/==?$/,""):t).length%4==1||/[^+/0-9A-Za-z]/.test(t))return null;let r="",n=0,o=0;for(let e=0;e<t.length;e++)n<<=6,n|=function(e){e=Wt.indexOf(e);return e<0?void 0:e}(t[e]),o+=6,24===o&&(r+=String.fromCharCode((16711680&n)>>16),r+=String.fromCharCode((65280&n)>>8),r+=String.fromCharCode(255&n),n=o=0);return 12===o?(n>>=4,r+=String.fromCharCode(n)):18===o&&(n>>=2,r+=String.fromCharCode((65280&n)>>8),r+=String.fromCharCode(255&n)),r},btoa:function(e){let t;for(e=`${e}`,t=0;t<e.length;t++)if(255<e.charCodeAt(t))return null;let r="";for(t=0;t<e.length;t+=3){const n=[void 0,void 0,void 0,void 0];n[0]=e.charCodeAt(t)>>2,n[1]=(3&e.charCodeAt(t))<<4,e.length>t+1&&(n[1]|=e.charCodeAt(t+1)>>4,n[2]=(15&e.charCodeAt(t+1))<<2),e.length>t+2&&(n[2]|=e.charCodeAt(t+2)>>6,n[3]=63&e.charCodeAt(t+2));for(let e=0;e<n.length;e++)void 0===n[e]?r+="=":r+=function(e){if(0<=e&&e<64)return Ht[e];return}(n[e])}return r}},zt="4326",Jt={csv:{name:"CSV",itemTypes:["CSV","CSV Collection"],supportsProjection:!0},kml:{name:"KML",itemTypes:["KML","KML Collection"],supportsProjection:!1},shapefile:{name:"Shapefile",itemTypes:["Shapefile"],supportsProjection:!0},fileGeodatabase:{name:"File Geodatabase",itemTypes:["File Geodatabase"],supportsProjection:!0},geojson:{name:"GeoJson",itemTypes:["GeoJson"],supportsProjection:!1},excel:{name:"Excel",itemTypes:["Microsoft Excel"],supportsProjection:!0},featureCollection:{name:"Feature Collection",itemTypes:["Feature Collection"],supportsProjection:!0}};function Kt(e){if("object"!=typeof e)return e;var t=e.wkid,e=e.wkt;return t?t+"":Vt.btoa(e)}function $t(e){return"spatialRefId:"+Kt(function(t){var r;try{r=JSON.parse(t)}catch(e){r=t}return r}(e))}function Qt(e){return"exportItem:"+e}function Xt(e){return e?"exportLayer:0"+e:"exportLayer:null"}function Zt(e){var t,r=e.autoAddResult,n=e.inviteResult,o=e.primaryEmailResult,e=e.secondaryEmailResult;return(o||e)&&(t={success:(e=[o,e].filter(function(e){return e})).every(function(e){return e.success})},(e=e.reduce(function(e,t){return e.concat(b(t,"errors",[]))},[])).length&&(t.errors=e)),{success:[r,n,t].filter(function(e){return e}).every(function(e){return e.success}),autoAdd:r,invite:n,email:t}}function er(t,e){var r;return t&&(r=!d(t,"notAdded.length")&&!t.errors,e.autoAddResult={success:r},r||(r=t.errors||[],d(t,"notAdded.length")&&r.push(new J("Users not auto-added: "+t.notAdded.join(", "))),e.autoAddResult.errors=r,r=e.usersToAutoAdd.filter(function(e){return E(t.notAdded,e.username)}),e.usersToInvite=e.usersToInvite.concat(r))),e}function tr(e,t){return e.orgId===t.orgId}function rr(e){return"org_admin"===e.role&&!e.roleId}function nr(e,t,r,n){var o=Promise.resolve(null);return e.length&&(e={authentication:r,message:t.body,subject:t.subject,notificationChannelType:"email",users:e.map(function(e){return e.username})},n||(e.batchSize=1),o=Ie(e)),o}function or(t){var r,e=Promise.resolve(t);return t.email&&t.secondaryRO&&d(t,"inviteResult.success")&&(r=b(t,"secondaryRO.portalSelf.user",{}),e=nr(t.usersToInvite.filter(function(e){return tr(e,r)}),t.email,t.secondaryRO.authentication,rr(r)).then(function(e){return t.secondaryEmailResult=e,t})),e}function ir(e,t,r){var n=Promise.resolve(null);return n=t.length?ve({id:e,users:t.map(function(e){return e.username}),authentication:r}):n}function ar(t){return ir(d(t,"groupId"),d(t,"usersToAutoAdd"),d(t,"primaryRO.authentication")).then(function(e){return er(e,t)})}function sr(e,t,r,n,o){void 0===n&&(n=20160),void 0===o&&(o="group_member");var i=Promise.resolve(null);return i=t.length?ke({id:e,users:t.map(function(e){return e.username}),authentication:r,role:o,expiration:n}):i}function ur(t){return sr(d(t,"groupId"),d(t,"usersToInvite"),d(t,"primaryRO.authentication")).then(function(e){return t.inviteResult=e,t})}function cr(t){var e=Promise.resolve(t);return e=t.email&&d(t,"inviteResult.success")?nr(t.usersToEmail,t.email,t.primaryRO.authentication,rr(t.requestingUser)).then(function(e){return t.primaryEmailResult=e,t}):e}function lr(e,t){var r,n=[];return-1!==t.privileges.indexOf("portal:admin:assignToGroups")&&(r=[t.orgId,t.cOrgId].filter(function(e){return e}),n=e.filter(function(e){return-1!==r.indexOf(e.orgId)})),n}function pr(e,t){var r=lr(e,t);return e.filter(function(t){return!r.some(function(e){return e.username===t.username})})}function dr(e,t,r){void 0===r&&(r=!1);e=pr(e,t).filter(function(e){return tr(e,t)});return r&&e.push(t),e}function fr(e,t){if("object"==typeof e&&null!==e&&"string"==typeof t){for(var r=t.split("."),n=0;n<r.length-1;n++){if(!e.hasOwnProperty(r[n]))return;e=e[r[n]]}delete e[r[r.length-1]]}}function mr(e){var t=p(e.item);return t.text=JSON.stringify(e.data),t}function hr(e,t){return Promise.all([se(e,t),(r=e,r=ue(e,t=t)+"/data",(t=x({httpMethod:"GET",params:{}},t)).file&&(t.params.f=null),te(r,t).catch(function(e){var t=RegExp(/The string did not match the expected pattern|(Unexpected end of (JSON input|data at line 1 column 1))/i);if(!t.test(e.message))throw e}))]).then(function(e){return{item:e[0],data:e[1]}});var r}var gr=function(e,t,r){return void 0===r&&(r=void 0),t.split(".").reduce(function(e,t){return e?e[t]:r},e)};function yr(r,n){return Object.keys(r).reduce(function(e,t){return e[t]=n(r[t],t,r),e},{})}var vr=function(e){return e instanceof Date},br=function(e){return"function"==typeof e},wr=function(e){return"object"==typeof e},Cr=function(e){return e instanceof RegExp};var kr=function(e){return"object"==typeof e};function Ar(e){return Array.isArray(e)?function(e){var t=e,e=e.reduce(function(e,t){return Er(t)&&Tr(t)&&(e<(t=Sr(t))&&(e=t)),e},-1);-1<e&&(t=0===e?[]:"{{delete:"+(e-1)+"}}");return t}(e.map(t).filter(function(e){return null!=e})):e&&kr(e)?function(o){var e=Object.keys(o).reduce(function(e,t){var r,n=o[t];return Er(n)&&Tr(n)?(r=Sr(n))>e.maxLevel&&(e.maxLevel=r):e.obj[t]=n,e},{obj:{},maxLevel:-1});e=0<e.maxLevel?1===e.maxLevel?void 0:"{{delete:"+(e.maxLevel-1)+"}}":e.obj;return e}(yr(e,t)):function(e){var t=e;"string"==typeof e&&Tr(e)&&(t=function(e){var t=e,e=Sr(e);t=0===e?void 0:"{{delete:"+e+"}}";return t}(e));return t}(e);function t(e,t){return Ar(e)}}var Sr=function(e){return parseInt(e.replace(/{|}/g,"").split(":")[1])};function Tr(e){return e&&"string"==typeof e&&-1<e.indexOf("{{delete")}var Er=function(e){return"string"==typeof e};function Ir(e,t,r,n){return void 0===n&&(n=0),t?t:"{{delete:"+n+"}}"}var xr=function(e){var t={};if(Array.isArray(e))t=e.map(xr);else if("object"==typeof e)for(var r in e)null!=e[r]&&"object"==typeof e[r]?t[r]=xr(e[r]):t[r]=e[r];else t=e;return t},Or=/{{\s*?[\w].*?}}/g,Dr=function(e){return"string"==typeof e};function Pr(e){return e||""===e||0===e}function Nr(e,a,s){if((s=xr(s=void 0===s?null:s)||{}).optional)throw new Error("Please do not pass in an `optional` transform; adlib provides that internally.");return s.optional=Ir,Ar(function r(e,n,o){return o=o||"",Array.isArray(e)?e.map(t):!e||!wr(e)||vr(e)||Cr(e)||br(e)?n(e,o):Object.assign({},e,yr(e,t));function t(e,t){return r(e,n,o?o+"."+t:t)}}(e,function(t,e){if(!Dr(t))return t;var r,n=t.match(Or);return n&&n.length?(n.map(function(e){var o,i=!1,t=e.replace(/{|}/g,"").trim();-1<t.indexOf("||")&&(r=t.split("||").map(function(e){return e.trim()}),o=r.length,t=r.find(function(e,t){var r,n;return(n=a,r=(r=e).split(":")[0],null!=(r=gr(n,r,null)))?e:t+1===o&&(i=!0,isNaN(e)?e:parseInt(e))}));var r={key:e,value:t};return i||(t=function(e,t,r){var n,o=e.split(":");if(1<o.length){var i,a=o[0],s=o[1];if(o[2]&&(i=o[2]),!r||!r[s]||"function"!=typeof r[s])throw new Error("Attempted to apply non-existant transform "+s+" on "+a+" with params "+e);n=gr(t,a),n=r[s](a,n,t,i)}else n=gr(t,e);return n}(t,a,s),r.value=Pr(t)?t:e),r}).forEach(function(e){t===e.key?("string"==typeof e.value&&(isNaN(e.value)||""===e.value||(-1<e.value.indexOf(".")?e.value=parseFloat(e.value):e.value=parseInt(e.value))),r=e.value):t=t.replace(e.key,e.value)}),Pr(r)?r:t):t}))}function Rr(e,t,r){return Nr(e,t,r)}var _r=["id","isOrgItem","proxyFilter","ownerFolder","protected","owner","created","modified","guid","name","access","size","listed","numComments","numRatings","avgRating","numViews","scoreCompleteness","groupDesignations","listed","screenshots","banner","appCategories","industries","languages","largeThumbnail"];function Ur(e,t,r){return ge({q:'title:"'+e+'" AND '+Object.keys(t).map(function(e){return e+':"'+t[e]+'"'}).join(" AND "),authentication:r}).then(function(e){return 0<e.results.length}).catch(function(e){throw Error("Error in doesItemExistWithTitle "+e)})}function jr(e,t){var r=e;return r=-1===e.indexOf("token")&&-1<e.indexOf(t.authentication.portal)?e+"?token="+t.authentication.token:r}function Mr(e,t){return(t=void 0===t?{}:t).credentials||(t.credentials="same-origin"),fetch(e,t).then(function(e){return e.blob()})}function Fr(r){return Mr(r.url).then(function(e){return ie(t={id:r.id,owner:r.owner,name:r.fileName,resource:e,authentication:r.authentication}).then(function(e){e=oe(t)+"/content/users/"+e+"/items/"+t.id+"/addResources";return t.params=x({file:t.resource,fileName:t.name,resourcesPrefix:t.prefix,text:t.content,access:t.private?"private":"inherit"},t.params),te(e,t)});var t})}function Lr(t){return Mr(t.url).then(function(e){return ae({item:{id:t.id,owner:t.owner},params:{fileName:t.fileName,thumbnail:e},authentication:t.authentication}).catch(function(e){return Promise.resolve()})}).catch(function(e){return Promise.resolve()})}function Gr(e,t,r){if(!e||!e.thumbnail)return null;var n=r||{},o=n.token,n=n.width,r=Be(e,t,o=!o&&"string"==typeof r?r:o).split("?"),o=r[0],r=r[1],r=new URLSearchParams(r);r.delete("f"),n&&r.append("w",n+"");r=r.toString(),e=o+"/info/"+e.thumbnail;return r?e+"?"+r:e}var qr={arcgis:{label:"ArcGIS Online",url:"https://www.arcgis.com",type:"arcgis"},arcgisQA:{label:"ArcGIS Online QAEXT",url:"https://qaext.arcgis.com",type:"arcgis"},arcgisDEV:{label:"ArcGIS Online DEVEXT",url:"https://devext.arcgis.com",type:"arcgis"},hub:{label:"ArcGIS Hub",url:"https://hub.arcgis.com/api",type:"arcgis-hub"},hubDEV:{label:"ArcGIS Hub DEV",url:"https://hubdev.arcgis.com/api",type:"arcgis-hub"},hubQA:{label:"ArcGIS Hub QA",url:"https://hubqa.arcgis.com/api",type:"arcgis-hub"}};function Br(e){return"string"==typeof e&&e in qr?qr[e]:e}function Yr(e,t){var r=p(e);return t.from<e.from&&(r.from=t.from),t.to>e.to&&(r.to=t.to),r}function Wr(r,n){var o={};return["any","all","not","exact"].forEach(function(e){var t=e,e=P(Hr(r,t),Hr(n,t));e.length&&(o[t]=e.filter(h))}),o}function Hr(e,t){var r=[];return e[t]&&(t=e[t],r=Array.isArray(t)?t:[t]),r}function Vr(e){var t={};return Array.isArray(e)?t={any:e}:("string"==typeof e&&(t={any:[e]}),"object"==typeof e&&(t=e)),t}function zr(e){var t=new Date,r={type:"date-range",from:t.getTime(),to:t.getTime()};switch(e.unit){case"hours":case"days":case"weeks":r.from=r.to-{min:6e4,hours:36e5,days:864e5,weeks:6048e5}[e.unit]*e.num;break;case"months":t.setMonth(t.getMonth()-e.num),r.from=t.getTime();break;case"years":t.setFullYear(t.getFullYear()-e.num),r.from=t.getTime()}return r}function Jr(e,t,r){var n=p(e),e=t.q,t=t.filter;return e&&(n.q=(n.q?" ("+n.q+" "+r+" "+e+")":e).trim()),t&&(n.filter=(n.filter?"("+n.filter+" "+r+" "+t+")":t).trim()),n}function Kr(e,t){var r={q:"",filter:""};return t.exact&&(P(["username","firstname","lastname","fullname","email"],["title","tags","typekeywords","type","name","owner"],["title","typekeywords","owner"]).includes(e)?r.filter=Qr("AND",e,t.exact):("string"==typeof t.exact&&(t.all||(t.all=[]),"string"==typeof t.all&&(t.all=[t.all]),t.all.push(t.exact)),Array.isArray(t.exact)&&(t.all||(t.all=[]),"string"==typeof t.all&&(t.all=[t.all]),t.all=t.all.concat(t.exact)))),t.any&&(r.q=Qr("OR",e,t.any)),t.all&&(r.q=(r.q?r.q+" AND ":"")+Qr("AND",e,t.all)),t.not&&(r.q=(r.q?r.q+" AND ":"")+Qr("OR","-"+e,t.not)),r}function $r(e,t){return{q:e+":["+t.from+" TO "+t.to+"]",filter:""}}function Qr(e,t,r){return Array.isArray(r)?"("+t+':"'+r.join('" '+e+" "+t+':"')+'")':t+':"'+r+'"'}function Xr(e,t,r,n){var o=p(e);return e.authentication&&(o.authentication=Xe.deserialize(e.authentication.serialize())),o.start=-1<t?t:r+1,function(e){return e&&(o.authentication=e),n(o)}}function Zr(e,t,r){var n=null;return t.thumbnail&&(n=e+"/community/groups/"+t.id+"/info/"+t.thumbnail,r&&"public"!==t.access&&(n=n+"?token="+r)),n}function en(e,t,r){var n=null;return t.thumbnail&&(n=e+"/community/users/"+t.username+"/info/"+t.thumbnail,r&&"public"!==t.access&&(n=n+"?token="+r)),n}var tn={$apps:[{type:{any:["Code Sample","Web Mapping Application","Mobile Application","Application","Desktop Application Template","Desktop Application","Operation View","Dashboard","Operations Dashboard Extension","Workforce Project","Insights Workbook","Insights Page","Insights Model","Hub Page","Hub Initiative","Hub Site Application","StoryMap","Web Experience","Web Experience Template","Form"],not:["Code Attachment","Featured Items","Symbol Set","Color Set","Windows Viewer Add In","Windows Viewer Configuration","Map Area","Indoors Map Configuration"]},typekeywords:{not:["MapAreaPackage","SMX"]}}],$storymap:[{type:"StoryMap"},{type:"Web Mapping Application",typekeywords:["Story Map"]}],$dashboard:[{type:"Dashboard",typekeywords:{any:["Dashboard"],not:["ArcGIS Operation View","Add In","Extension"]}}],$dataset:[],$experience:[{type:{any:["Web Experience"],not:["Web Experience Template"]}}],$site:[{type:["Hub Site Application","Site Application"]},{type:["Web Mapping Application"],typekeywords:["hubSite"]}],$initiative:[{type:{any:"Hub Initiative",not:"Hub Initiative Template"}}],$document:[{typekeywords:{any:"Document",not:["MapAreaPackage","SMX"]},type:{any:["Image","Layout","Desktop Style","Project Template","Report Template","Pro Report","Statistical Data Collection","360 VR Experience","netCDF","PDF","CSV","Administrative Report","Raster function template"],not:["Image Service","Explorer Document","Explorer Map","Globe Document","Scene Document","Code Attachment","Featured Items","Symbol Set","ColorSet","Windows Viewer Add In","Windows Viewer Configuration","Map Area","Indoors Map Configuration"]}}]};function rn(e){var t,o=[];return null!==(t=e.aggregations)&&void 0!==t&&t.counts&&e.aggregations.counts.forEach(function(r){var e={label:r.fieldName,attribute:r.fieldName,type:"multi-select"},n=[];r.fieldValues.forEach(function(e){var t={filterType:"content"};t[r.fieldName]=e.value;t={label:e.value,value:e.value,count:e.count,selected:!1,filter:t};n.push(t)}),e.options=n,o.push(e)}),o}function nn(e){var t=on(e);return Array.isArray(e.subFilters)&&(t.subFilters=t.subFilters.reduce(function(e,t){return"string"==typeof t?tn[t]&&(e=e.concat(tn[t])):e.push(t),e},[])),un(t)}function on(e){var r=p(e);return r.subFilters=r.subFilters||[],r.type&&(Array.isArray(r.type)?r.type=r.type.reduce(function(e,t){return an(t)?r.subFilters=r.subFilters.concat(sn(t)):e.push(t),e},[]):an(r.type)&&(e=r.type,r.subFilters=r.subFilters.concat(sn(e)),delete r.type)),r}function an(e){var t=!1;return t="string"==typeof e?e in tn:t}function sn(e){return tn[e]}function un(t){var r={};t.term&&(r.term=t.term);var e,n=["created","modified"],o=P(["filterType","subFilters","term"],n);return Object.entries(t).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r[t]=Vr(e))}),t.subFilters&&Array.isArray(t.subFilters)&&(e=t.subFilters,r.subFilters=e.map(un)),n.forEach(function(e){t[e]&&("relative-date"===t[e].type?r[e]=zr(t[e]):r[e]=p(t[e]))}),r}function cn(e){var t,r=ln(e);return e.subFilters&&(t=e.subFilters.reduce(function(e,t){return e="object"==typeof t?Jr(e,ln(t),"OR"):e},{q:"",filter:""}),r=Jr(r,t,"AND")),e.term&&(r.q=(e.term+" "+r.q).trim()),r}function ln(e){var r={q:"",filter:""},n=["created","modified"],o=P(["filterType","subFilters","term"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=Jr(r,Kr(t,e),"AND")),n.includes(t)&&(r=Jr(r,$r(t,e),"AND"))}),r}function pn(r){var n={},o=["created","modified"],i=P(["term","searchUserAccess"],o);return Object.entries(r).forEach(function(e){var t=e[0],e=e[1];i.includes(t)||k(t,Vr(e),n),o.includes(t)&&(e=p(d(r,t)),"relative-date"===d(r,t+".type")?k(t,zr(e),n):k(t,e,n))}),r.hasOwnProperty("searchUserAccess")&&(n.searchUserAccess=r.searchUserAccess),r.term&&(n.term=r.term),n}function dn(e){var r={q:"",filter:""},n=["created","modified"],o=P(["term","searchUserAccess","filterType"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=Jr(r,Kr(t,e),"AND")),n.includes(t)&&(r=Jr(r,$r(t,e),"AND"))}),e.hasOwnProperty("searchUserAccess")&&(r.searchUserAccess=e.searchUserAccess),e.term&&(r.q=(e.term+" "+r.q).trim()),r}function fn(r){var n={},o=["created","modified","lastlogin"],i=P(["disabled","term"],o);return Object.entries(r).forEach(function(e){var t=e[0],e=e[1];i.includes(t)||k(t,Vr(e),n),o.includes(t)&&(e=p(d(r,t)),"relative-date"===d(r,t+".type")?k(t,zr(e),n):k(t,e,n))}),r.hasOwnProperty("disabled")&&(n.disabled=r.disabled),r.term&&(n.term=r.term),n}function mn(e){var r={q:"",filter:""},n=["created","modified","lastlogin"],o=P(["term","filterType"],n);return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];o.includes(t)||(r=Jr(r,Kr(t,e),"AND")),n.includes(t)&&(r=Jr(r,$r(t,e),"AND"))}),e.hasOwnProperty("disabled")&&(r.disabled=e.disabled),e.term&&(r.q=("("+e.term+") "+r.q).trim()),r}function hn(o){return ge(o).then(function(e){var t=-1<e.nextStart,r=e.results.map(_t);o.site&&(r=r.map(function(e){return Lt(e,o.site)}));var n=rn(e);return{total:e.total,results:r,facets:n,hasNext:t,next:Xr(o,e.nextStart,e.total,hn)}})}function gn(o){function i(e){return e.siteTeamUrl=o.site.item.url+"/teams/"+e.id+"/about",e}var e,t,r=(null===(e=o.authentication)||void 0===e?void 0:e.portal)||"https://www.arcgis.com/sharing/rest";o.authentication&&(t=o.authentication.token);function a(e){return e.thumbnailUrl=Zr(r,e,t),e}return he(o,"group").then(function(e){var t,r=-1<e.nextStart,n=e.results.map(a);return null!==(t=null===(t=o.site)||void 0===t?void 0:t.item)&&void 0!==t&&t.url&&(n=e.results.map(i)),{hasNext:r,total:e.total,results:n,next:Xr(o,e.nextStart,e.total,gn)}})}function yn(o){function i(e){return e.profileUrl=o.site.item.url+"/people/"+e.username+"/profile",e}function a(e){return e.thumbnail&&(e.thumbnailUrl=en(t,e,r)),e}var t=o.authentication.portal,r=o.authentication.token;return he(o,"user").then(function(e){var t,r=-1<e.nextStart,n=e.results.map(a);return null!==(t=null===(t=o.site)||void 0===t?void 0:t.item)&&void 0!==t&&t.url&&(n=e.results.map(i)),{hasNext:r,total:e.total,results:n,next:Xr(o,e.nextStart,e.total,yn)}})}function vn(t){return O(this,void 0,void 0,function(){return D(this,function(e){return 200<=t.status&&t.status<300?[2,t.json()]:[2,t.json().then(function(e){if(e.error)throw new Error(e.error.title+" :: "+e.error.detail+" :: "+t.status);throw new Error("Got "+t.status+" "+t.statusText)})]})})}function bn(e){var t={},e=d(e,"authentication.token");return e&&(t.Authorization=e),t}function wn(e){return(e||"https://hub.arcgis.com")+"/api/v3/domains"}function Cn(e,t){var r=e,n="hubsubdomain|"+(r=-1<e.indexOf("#/")?e.split("#/")[1]:r);return ge(Object.assign({q:"typekeywords: "+n},t)).then(function(e){return e.results.filter(function(e){return E(e.typeKeywords,n)})[0]}).then(function(e){if(!e)throw new Error("site not found");return{hostname:e.url,siteId:e.id}})}function kn(e,t){if(t.isPortal)throw new Error("domainExists is not available in ArcGIS Enterprise.");e=Le(e);e=wn(t.hubApiUrl)+"/"+e,t=bn(t);return fetch(e,{method:"GET",headers:t,mode:"cors"}).then(function(e){return 404!==e.status})}function An(e,t){return Cn(e,t).then(function(e){return!0}).catch(function(e){return!1})}function Sn(t,r,n,o){var i=t;return kn((i=(o=void 0===o?0:o)?t+"-"+o:t)+"-"+r,n).then(function(e){return e?Sn(t,r,n,o+1):i})}function Tn(t,r,n){var o=(n=void 0===n?0:n)?t+"-"+n:t;return An(o,r).then(function(e){return e?Tn(t,r,n+1):o})}function En(e,t){if(t.isPortal)return Cn(e,t);e=wn(t.hubApiUrl)+"/"+e,t=bn(t);return fetch(e,{method:"GET",headers:t,mode:"cors"}).then(vn)}function In(e,t){var r=p(e),e=63;return t&&(e-=t.length+1),r=r.length>e?r.slice(0,e-6)+"-"+j(5):r}function xn(e,t){return hr(e,t).then(Rn)}function On(e){if(1.4<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.values.gacode");return t.data.values.telemetry={consentNotice:{isTheme:!0,consentText:"",policyURL:""},customAnalytics:{ga:{customerTracker:{enabled:Boolean(e),id:e}}}},fr(t,"data.values.gacode"),k("item.properties.schemaVersion",1.4,t),t}var Dn=1.5;function Pn(e){if(1.5<=d(e,"item.properties.schemaVersion"))return e;var r,t=p(e),e=t.data.values.dcatConfig;return t.data.feeds={},e&&(t.data.feeds.dcatUS11=(r=JSON.stringify(e),Object.keys(Nn).forEach(function(e){var t=Nn[e];r=r.split(e).join(t)}),JSON.parse(r))),t.item.properties.schemaVersion=1.5,t}var Nn={"{{default.name}}":"{{name}}","{{default.description}}":"{{description}}","{{item.tags}}":"{{tags}}","{{item.created:toISO}}":"{{created:toISO}}","{{item.modified:toISO}}":"{{modified:toISO}}","{{default.source.source}}":"{{source}}","{{item.owner}}":"{{owner}}","{{org.portalProperties.links.contactUs.url}}":"{{orgContactEmail}}","{{org.name}}":"{{orgName}}","{{item.categories}}":"{{categories}}","{{item.licenseInfo}}":"{{licenseInfo}}","{{item.modified}}":"{{modified}}","{{enrichments.categories}}":"{{categories}}","{{default.id}}":"{{id}}","{{item.licenseInfo || No License}}":"{{licenseInfo || No License}}","{{org.portalProperties.links.contactUs.url || mailto:data@tempe.gov}}":"{{orgContactEmail || mailto:data@tempe.gov}}","{{default.description || No Description}}":"{{description || No Description}}","{{item.id}}":"{{id}}"};function Rn(e){return d(e,"item.properties.schemaVersion")===Dn?e:e=Pn(e=On(e=function(e){if(1.3<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.catalog.groups")||[];return t.data.catalog.groups=e.filter(M),t.item.properties.schemaVersion=1.3,t}(e=function(e){if(1.2<=d(e,"item.properties.schemaVersion"))return e;var t=p(e),e=d(t,"data.catalog")||{};return d(t,"data.values.groups")&&(e.groups=p(t.data.values.groups),delete t.data.values.groups),t.data.catalog=e,t.item.properties.schemaVersion=1.2,t}(e=function(e){if(1.1<=d(e,"item.properties.schemaVersion"))return e;var t=p(e);return["subdomain","defaultHostname","internalUrl","customHostname","externalUrl"].forEach(function(e){t.data.values[e]&&"string"==typeof t.data.values[e]&&(t.data.values[e]=t.data.values[e].toLowerCase())}),t.item.properties.schemaVersion=1.1,t}(e=function(e){if(1<=d(e,"item.properties.schemaVersion"))return e;var t=p(e);return["groupId","title"].forEach(function(e){delete t.data.values[e]}),t.item.properties||(t.item.properties={}),t.item.properties.schemaVersion=1,t.data.values.groups&&Array.isArray(t.data.values.groups)&&(e=t.data.values.groups.map(function(e){return"object"==typeof e?e.id:e}).filter(function(e){return!!e}),t.data.values.groups=e),t}(e))))))}var _n=["ar","bs","ca","cs","da","de","en","es","et","el","fi","fr","hr","he","hu","it","id","ja","ko","lt","lv","nb","nl","pl","pt","pt-br","pt-pt","ro","ru","sl","sr","sv","th","tr","uk","vi","zh","zh-cn","zh-tw","zh-hk"];var Un,jn=(e(Mn,Un=Error),Mn);function Mn(e,t,r){e=Un.call(this,e)||this;return e.status=r,e.url=t,e}function Fn(e,t){var r,n,o=x({httpMethod:"GET"},t),i=o.fetch||fetch,t=x({"Content-Type":"application/json"},o.headers);"GET"===o.httpMethod?r=o.params:n=JSON.stringify(o.params);var a=W({host:He(o),path:("/api/v3/"+e).replace(/\/\//g,"/"),query:r});return i(a,{method:o.httpMethod,headers:t,body:n}).then(function(e){if(e.ok)return e.json();throw new jn(e.statusText,a,e.status)})}function Ln(e,t){return ce(x({id:e,relationshipType:"Survey2Service",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function Gn(e,t){return ce(x({id:e,relationshipType:"Service2Data",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function qn(e,t){return ce(x({id:e,relationshipType:"Survey2Data",direction:"forward"},t)).then(function(e){var t,e=e.relatedItems[0];return t=e?{item:e}:t})}function Bn(t){function e(e){return-1<t.typeKeywords.indexOf(e)}var r=e("FieldworkerView");return r=r||["Survey123","Feature Service","View Service"].every(e)&&!e("StakeholderView")}Yn.prototype.startOperation=function(e){e=p(e);e.startedAt=(new Date).getTime(),e.state="working",this.operations.push(e)},Yn.prototype.start=function(e,t){t={type:e,id:b(t,"id",r(e+"_")),inputs:b(t,"inputs",{}),cleanup:b(t,"cleanup","n/a"),startedAt:(new Date).getTime(),state:"working"};return this.operations.push(t),t.id},Yn.prototype.getOperation=function(t){return this.operations.find(function(e){return e.id===t})},Yn.prototype.getOperations=function(){return this.operations},Yn.prototype.finish=function(e,t){var r=this.getOperation(e);if(!r)throw new Error("No operation with id "+e+" present in stack");r.duration=(new Date).getTime()-r.startedAt,r.state="completed",t&&(r.output=p(t))},Yn.prototype.merge=function(e){this.operations=P(this.operations,e.operations)},Yn.prototype.getCompleted=function(){return p(this.operations.filter(function(e){return"completed"===e.state}))},Yn.prototype.getWorking=function(){return p(this.operations.filter(function(e){return"working"===e.state}))},Yn.prototype.toString=function(){return this.operations.sort(function(e,t){return e.startedAt<t.startedAt?-1:t.startedAt<e.startedAt?1:0}).map(Wn).join("\n")},Yn.prototype.serialize=function(){return{operations:p(this.getOperations())}},ct=Yn;function Yn(){this.operations=[]}function Wn(e){var t=e.startedAt+" : Operation "+e.id+" started with inputs "+JSON.stringify(e.inputs)+" but was not completed";return t="completed"===e.state?e.startedAt+" : Operation "+e.id+" took "+e.duration+" ms with inputs "+JSON.stringify(e.inputs)+" and output "+(e.output?JSON.stringify(e.output):"n/a"):t}n.GLOBAL_EXTENT=gt,n.HUB_CDN_URLMAP=je,n.HUB_LOCALES=_n,n.Logger=F,n.OperationError=R,n.OperationStack=ct,n.PORTAL_EXPORT_TYPES=Jt,n.REQUIRED_PRIVS=Y,n.RemoteServerError=jn,n.SEARCH_APIS=qr,n.SITE_SCHEMA_VERSION=Dn,n.STANDARD_LICENSES=bt,n.WGS84_WKID=zt,n._addTokenToResourceUrl=jr,n._canEmailUser=tr,n._checkStatusAndParseJson=vn,n._consolidateResults=Zt,n._deepMapValues=i,n._ensureSafeDomainLength=In,n._ensureTelemetry=On,n._formatAutoAddResponse=er,n._getAuthHeader=bn,n._getAutoAddUsers=lr,n._getDomainServiceUrl=wn,n._getEmailUsers=dr,n._getHttpAndHttpsUris=function(e){return e?["http://"+(e=e.replace(/^http(s?):\/\//,"")),"https://"+e]:[]},n._getInviteUsers=pr,n._getLocation=function(){if(window)return window.location},n._isDate=s,n._isFunction=u,n._isObject=c,n._isOrgAdmin=rr,n._isRegExp=l,n._isString=a,n._lookupPortal=Cn,n._mapValues=o,n._processAutoAdd=ar,n._processInvite=ur,n._processPrimaryEmail=cr,n._processSecondaryEmail=or,n._searchContent=function(n,o){var i;return O(this,void 0,void 0,function(){var t,r;return D(this,function(e){return r=nn(n),t=Br(o.api||"arcgis"),[2,"arcgis"===t.type?(r=cn(r),o.authentication?r.authentication=o.authentication:r.portal=t.url+"/sharing/rest",null!==(i=o.aggregations)&&void 0!==i&&i.length&&(r.countFields=o.aggregations.join(","),r.countSize=200),o.num&&(r.num=o.num),o.sortField&&(r.sortField=o.sortField),o.sortOrder&&(r.sortOrder=o.sortOrder),o.site&&(r.site=p(o.site)),hn(r)):Promise.resolve({total:0,results:[],facets:[],hasNext:!1,next:function(){}})]})})},n._searchGroups=function(n,o){var i;return O(this,void 0,void 0,function(){var t,r;return D(this,function(e){if(r=pn(n),"arcgis"===(t=Br(o.api||"arcgis")).type)return r=dn(r),o.authentication?r.authentication=o.authentication:r.portal=t.url+"/sharing/rest",o.num&&(r.num=o.num),o.sortField&&(r.sortField=o.sortField),o.sortOrder&&(r.sortOrder=o.sortOrder),t.url,null!==(i=r.authentication)&&void 0!==i&&i.portal&&r.authentication.portal,o.site&&(r.site=p(o.site)),[2,gn(r)];throw new Error("_searchGroups is not implemented for non-arcgis apis")})})},n._searchUsers=function(r,n){return O(this,void 0,void 0,function(){var t;return D(this,function(e){if(!n.authentication)throw new Error("Authentication required to search for users.");if(t=fn(r),"arcgis"===Br(n.api||"arcgis").type)return(t=mn(t)).authentication=n.authentication,n.num&&(t.num=n.num),n.sortField&&(t.sortField=n.sortField),n.sortOrder&&(t.sortOrder=n.sortOrder),n.site&&(t.site=p(n.site)),[2,yn(t)];throw new Error("_searchUsers is not implemented for non-arcgis apis")})})},n._unprotectAndRemoveGroup=function(e){var t=U(Se,{success:!0}),r=U(Te,{success:!0});return t(e).then(function(){return r(e)})},n._unprotectAndRemoveItem=function(e){var t=U(le,{success:!0}),r=U(de,{success:!0});return t(e).then(function(){return r(e)})},n.addContextToSlug=function(e,t){return/.+::.+/.test(e)?e:t+"::"+e},n.addDays=function(e,t){try{var r=new Date(e);return new Date(r.setDate(r.getDate()+t)).toISOString().split("T")[0]}catch(e){throw new Error("Invalid Date")}},n.addDomain=function(e,t){if(t.isPortal)throw new Error("addDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=bn(t);r["Content-Type"]="application/json";var n=""+wn(t.hubApiUrl);return"number"==typeof(t=e.siteTitle)&&(e.siteTitle=t.toString()),fetch(n,{method:"POST",headers:r,mode:"cors",body:JSON.stringify(e)}).then(vn)},n.addSolutionResourceUrlToAssets=function(e,t){var r,n,o=e.assets||e.resources||[];return e.bundleItemId&&(r=Fe(t.portalSelf)+"/content/items/"+e.bundleItemId,n=e.itemId,o=o.map(function(e){return{name:e.name,type:e.type||"resource",url:r+"/resources/"+n+"-"+e.name}})),o},n.addUsersToGroup=function(e,t,r,n,o){var i=p(b(r,"portalSelf.user",{}));return i.cOrgId=d(r,"portalSelf.portalProperties.hub.settings.communityOrg.orgId"),ar({groupId:e,allUsers:t,primaryRO:r,email:n,secondaryRO:o,requestingUser:i,usersToAutoAdd:lr(t,i),usersToInvite:pr(t,i),usersToEmail:dr(t,i,d(n,"copyMe"))}).then(ur).then(cr).then(or).then(Zt)},n.applyPropertiesToItems=function(e,t){return e.map(function(e){return e.properties||(e.properties={}),Object.assign(e.properties,t),e})},n.arrayToObject=function(e,r){return e.reduce(function(e,t){return e[d(t,r)]=t,e},{})},n.atob=Vt.atob,n.autoAddUsers=ir,n.batch=T,n.btoa=Vt.btoa,n.buildDraft=function(e,t){return C(e,{},t)},n.buildExistingExportsPortalQuery=function(e,t){var r,n,o,i,a=(c=function(e){if(e)return{onlyTypes:e.onlyTypes,layerId:e.layerId,spatialRefId:e.spatialRefId};return{}}(t)).onlyTypes,s=c.layerId,u=c.spatialRefId,t=Object.keys(Jt).map(function(e){return Jt[e]}),c=new Set(y(t.filter(function(e){return!e.supportsProjection}).map(function(e){return e.itemTypes}))),t=a||y(t.map(function(e){return e.itemTypes})),s=(new fe).startGroup().match(Qt(e)).in("typekeywords").and().match(Xt(s)).in("typekeywords").endGroup().and().startGroup();function l(e,t){var r;t.startGroup().match(/\s/g.test(e)?e:'"'+e+'"').in("type").and().match($t((r=e,t=zt,t=(e=i)&&!o.has(r)?e:t))).in("typekeywords").endGroup()}return r=s,n=(c={types:t,spatialRefId:u,noProjectionItemTypes:c}).types,o=c.noProjectionItemTypes,i=c.spatialRefId,n.forEach(function(e,t){l(e,r),t<n.length-1&&r.or()}),s.endGroup(),s.toParam()},n.buildUrl=W,n.camelize=t,n.canEditEvent=function(e,t){var r=!1;return q(t)&&(e=d(e,"initiative.item.properties.collaborationGroupId"),t=t.groups,r=!!e&&!!f(void 0===t?[]:t,"id",e)),r},n.canEditItem=B,n.canEditSite=function(e,t){var r=!1;return r=!d(e,"properties.isDefaultHubHome")&&q(t)?B(e,t):r},n.canEditSiteContent=function(e,t){var r,n=!1,o=d(e,"properties.isDefaultHubHome"),i=q(t);return!o&&i?n=B(e,t):i&&(i=t.orgId,e=e.orgId,i&&i===e&&(r=t.privileges||[],n=Y.every(function(e){return E(r,e)}))),n},n.capitalize=g,n.categories=dt,n.chunkArray=function(e,t){for(var r=[],n=0;n<e.length;)r.push(e.slice(n,n+t)),n+=t;return r},n.cloneObject=p,n.completeOAuth2=function(t,e){var r=(e=(e=void 0===e?window:e).location.href.match(/access_token=(.+)&expires_in=.+&username=([^&]+)/))[1],n="https://www.arcgis.com/sharing/rest/community/users/"+decodeURIComponent(e[2]);return te(n,{params:{token:r},httpMethod:"GET"}).then(function(e){return Date.now()-e.created<5e3?te(n+"/update",{params:{token:r,tags:["hubRole:participant","org:"+e.orgId],access:"public"}}).then(function(){return Xe.completeOAuth2(t)}):Xe.completeOAuth2(t)})},n.compose=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.reduce(function(r,n){return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r(n.apply(void 0,e))}})},n.convertContentDefinitionToFilter=un,n.convertContentFilterToSearchOptions=ln,n.convertPortalResponseToFacets=rn,n.convertSolutionTemplateResourcesToAssets=function(e,t){var r,n,o=[];return e.resources&&e.bundleItemId&&(r=Fe(t.portalSelf)+"/content/items/"+e.bundleItemId,n=e.itemId,o=e.resources.map(function(e){return{name:e,type:"resource",url:r+"/resources/"+n+"-"+e}})),o},n.convertToWellKnownLocale=function(e){var t="en";return e=(e=void 0===e?"en":e).toLowerCase(),-1<_n.indexOf(e)?t=e:1<(e=e.split("-")).length&&-1<_n.indexOf(e[0])&&(t=e[0]),t},n.createExtent=mt,n.createId=r,n.createOperationPipeline=function(e){return function(r){return e.reduce(function(e,t){return e.then(t).catch(function(e){if("OperationError"===e.name)return Promise.reject(e);e="IPipeableFn did not reject with an OperationError \n Operation Stack: \n "+r.stack.toString(),e=new R("pipeline execution error",e);return e.operationStack=r.stack.serialize(),Promise.reject(e)})},Promise.resolve(r))}},n.datasetToContent=function(e){var t=Ut(e),r=_t(t);delete r.itemCategories;var n=e.id,o=(C=e.attributes).errors,i=C.boundary,a=C.extent,s=C.metadata,u=C.modified,c=C.modifiedProvenance,l=C.slug,p=C.searchDescription,d=C.groupIds,f=C.server,m=C.layers,h=C.layer,g=C.recordCount,y=C.statistics,v=C.orgId,b=C.orgName,w=C.organization,e=C.orgExtent,C=C.type;return r.errors=o,r.boundary=i,!vt(t.extent)&&a&&vt(a.coordinates)&&(r.extent=a.coordinates),r.metadata=s||null,r.modified!==u&&(r.modified=u,r.updatedDate=new Date(u),r.updatedDateSource=c),r.slug=l,p&&(r.summary=p),r.groupIds=d,r.server=f,r.layers=m,r.layer=h,r.recordCount=g,r.statistics=y,v&&(r.org={id:v,name:b||w,extent:e}),Ft(jt(r,n),C)},n.datasetToItem=Ut,n.deepFind=A,n.deepFindById=function(e,t){return A(e,function(e){return e.id===t})},n.deepSet=v,n.deepStringReplace=w,n.deleteProp=fr,n.doesItemExistWithTitle=Ur,n.domainExists=kn,n.domainExistsPortal=An,n.emailOrgUsers=nr,n.ensureProp=function(e,t){return v(e,t)},n.ensureUniqueDomainName=function(e,t){return(t.isPortal?Tn(e,t):Sn(e,t.portalSelf.urlKey+"."+Le(He(t)),t)).then(function(e){return In(e,t.portalSelf.urlKey)})},n.ensureUniqueString=function(e,t){for(var r=!1,n=0,o=t;!r;)E(e,o)?o=t+"-"+ ++n:r=!0;return o},n.expandApi=Br,n.expandApis=function(e){return e.map(Br)},n.expandContentFilter=nn,n.expandGroupFilter=pn,n.expandTypeField=on,n.expandUserFilter=fn,n.extend=function n(e,o,i){void 0===i&&(i=!0);e=p(e);return Object.keys(o).reduce(function(e,t){var r;return null!==o[t]&&void 0!==o[t]&&(r=p(o[t]),Array.isArray(r)?e[t]=r:e[t]=i&&"object"==typeof r?n(e[t]||{},r,i):r),e},e)},n.extentToBBox=ht,n.failSafe=U,n.failSafeUpdate=function(e,t){return U(ae,{id:e.item.id,success:!0})(Object.assign({item:mr(e)},t))},n.fetchAllPages=function(n,o,r,i){var a=o.num||100,e=o.start||1;return(-1===(r=void 0===r?-1:r)?n(x(x({},o),{num:a,start:e})):Promise.resolve({nextStart:e,total:r,results:[],num:a})).then(function(t){if(-1===t.nextStart)return[t];for(var e=[],r=t.nextStart;r<=t.total;r+=a)e.push(r);return T(e,function(e){return n(x(x({},o),{start:e,num:a}))},i).then(function(e){return P([t],e)})}).then(function(e){var t=e.reduce(function(e,t){return P(e,t.results)},[]),e=-1===r?t.length:r;return t.slice(0,e)})},n.fetchAndUploadResource=Fr,n.fetchAndUploadThumbnail=Lr,n.fetchHubTranslation=function(t,e,r){void 0===r&&(r="cors");var n=(Me(e)+"/locales/"+t+".json").toLocaleLowerCase();return fetch(n,{method:"GET",credentials:"same-origin",mode:r}).then(function(e){return e.json()}).catch(function(e){throw Error("Attempt to fetch locale "+t+" from "+n+" failed: "+JSON.stringify(e))})},n.fetchImageAsBlob=Mr,n.fetchSite=function(e,t){return M(e)?xn(e,t):En(Le(e).split("/")[0],t).then(function(e){return xn(e.siteId,t)})},n.filterBy=function(e,t,r){return e.filter(function(e){return d(e,t)===r})},n.findBy=f,n.flattenArray=y,n.generateRandomString=j,n.getCategory=kt,n.getCollection=St,n.getContentIdentifier=xt,n.getContentSiteUrls=Mt,n.getCulture=function(e){return d(e,"portalSelf.user.culture")||d(e,"portalSelf.culture")||"en-us"},n.getDomainsForSite=function(e,t){return t.isPortal?Promise.resolve([]):(e=wn(t.hubApiUrl)+"?siteId="+e,t=bn(t),fetch(e,{method:"GET",headers:t,mode:"cors"}).then(vn).catch(function(e){throw Error("Error in getDomainsForSite "+e)}))},n.getExportItemTypeKeyword=Qt,n.getExportLayerTypeKeyword=Xt,n.getFamily=Nt,n.getGeographicOrgExtent=yt,n.getGroupThumbnailUrl=Zr,n.getHubApiUrl=He,n.getHubApiUrlFromPortal=function(e){return qe(e)+"/api/v3"},n.getHubLocaleAssetUrl=Me,n.getHubProduct=function(e){var t=d(e,"portalProperties.hub.enabled")||!1?"premium":"basic";return t=e.isPortal&&"singletenant"===e.portalMode?"portal":t},n.getHubUrlFromPortal=qe,n.getInputFeatureServiceModel=Ln,n.getItemApiUrl=Be,n.getItemAssets=function(e,t){var r=Fe(t.portalSelf)+"/content/items/"+e.id,n=Gr(e,t),o=[];return n&&o.push({name:e.thumbnail,url:n,type:"thumbnail"}),e=e.id,e=ue(e,t=t)+"/resources",(t=x({},t)).params=x({num:1e3},t.params),te(e,t).then(function(e){e=e.resources.map(function(e){return{name:e.resource,type:"resource",url:r+"/resources/"+e.resource}});return o.concat(e)})},n.getItemDataUrl=function(e,t,r){t=Be(e,t,r),r="\\/"+e.id+"\\?f=json",r=new RegExp(r);return t&&t.replace(r,"/"+e.id+"/data").replace(/\&token/,"?token")},n.getItemHomeUrl=function(e,t){return Ue(t)+"/home/item.html?id="+e},n.getItemHubId=function(e){if("public"===e.access){var t=e.id,e=It(e);return e?t+"_"+e:t}},n.getItemHubType=Rt,n.getItemLayerId=It,n.getItemThumbnailUrl=Gr,n.getLayerIdFromUrl=Et,n.getModel=hr,n.getModelFromOptions=function(e,t){var r=e+"Model",e=e+"Id";if(t[r])return Promise.resolve(t[r]);if(t[e])return U(hr,{item:{id:t[e]},isMissing:!0})(t[e],t);throw new Error("getModelFromOptions requires either a ."+r+" or ."+e+" property.")},n.getNextFunction=Xr,n.getOrgExtentAsBBox=function(e){return yt(e).then(ht)},n.getPortalApiUrl=Fe,n.getPortalUrl=Ue,n.getProp=d,n.getProps=function(r,e){return e.reduce(function(e,t){t=d(r,t);return t&&e.push(t),e},[])},n.getServiceTypeFromUrl=We,n.getSiteById=xn,n.getSourceFeatureServiceModelFromFieldworker=Gn,n.getSpatialRefTypeKeyword=$t,n.getStakeholderModel=qn,n.getStructuredLicense=wt,n.getSubscriptionType=function(e){return b(e,"subscriptionInfo.type","Enterprise")},n.getSurveyModels=function(e,r){var n,o;return("string"==typeof e?se(e,r):Promise.resolve(e)).then(function(t){var e=[Ln(t.id,r),qn(t.id,r)];return Promise.all(e).then(function(e){var t=e[0],e=e[1];return o=e,t&&Bn(t.item)?Gn((n=t).item.id,r):t}).then(function(e){return{form:{item:t},featureService:e,fieldworker:n,stakeholder:o}})})},n.getTypeCategories=function(e){if(e=kt(At(e=void 0===e?{}:e))){e=Array.from(e);return e[0]=e[0].toUpperCase(),[e.join("")]}return["Other"]},n.getTypes=function(e){return dt[(e=void 0===e?"":e).toLowerCase()]},n.getUniqueDomainName=Sn,n.getUniqueDomainNamePortal=Tn,n.getUniqueItemTitle=function t(r,n,o,i){var a=(i=void 0===i?0:i)?r+" "+i:r;return Ur(a,n,o).then(function(e){return e?t(r,n,o,++i):a}).catch(function(e){throw Error("Error in getUniqueItemTitle "+e)})},n.getUserThumbnailUrl=en,n.getWithDefault=b,n.hasBasePriv=q,n.hubApiRequest=Fn,n.hubApiSearch=function(e){var t=(t=e.authentication)&&t.serialize&&{authentication:t.serialize()};return Fn("/search",x(x({},{headers:t,httpMethod:"POST"}),e))},n.includes=E,n.incrementString=function(e){var t=e.match(/-\s(\d+$)/);return t?(t=parseInt(t[1],10),e=e.replace("- "+t,"- "+(t+1))):e+=" - 1",e},n.interpolate=Rr,n.interpolateItemId=function(e){return Rr(e,{item:{id:e.item.id},appid:e.item.id},{toISO:function(e,t){return t}})},n.inviteUsers=sr,n.isDomainForLegacySite=function(e){return!M(e.siteId)},n.isDomainUsedElsewhere=function(e,t,r){return En(e,r).then(function(e){return e.siteId!==t}).catch(function(){return!1})},n.isDownloadable=ft,n.isExtentCoordinateArray=vt,n.isFeatureService=Tt,n.isFieldworkerView=Bn,n.isGuid=M,n.isMapOrFeatureServerUrl=function(e){return Ye.test(e)},n.isNil=function(e){return null==e},n.isSlug=function(e){return!(!(e=Ot(e).itemId)||M(e))},n.isUpdateGroup=G,n.isValidDomain=function(t,e){if(e.isPortal)throw new Error("isValidDomain is not available in ArcGIS Enterprise.");var r=wn(e.hubApiUrl)+"/validate?hostname="+t,e=bn(e);return fetch(r,{method:"GET",headers:e,mode:"cors"}).then(function(e){return e.json()}).catch(function(e){return{success:!1,input:t,error:{code:400,detail:e,message:"lookupFailed"}}})},n.isValidExtent=function(t){return!!t&&[vt,function(t){return["xmin","ymin","xmax","ymax"].every(function(e){return"number"==typeof t[e]})}].some(function(e){return e(t)})},n.itemPropsNotInTemplates=_r,n.itemToContent=_t,n.last=function(e){return e[e.length-1]},n.lookupDomain=En,n.mapBy=function(t,e){return(e=void 0===e?[]:e).map(function(e){return e[t]})},n.maybeAdd=function(e,t,r){return null!=t&&((r=p(r))[e]=t),r},n.maybePush=m,n.mergeContentFilter=function(e){var e=e.map(nn),n=["created","modified"],o=P(["filterType","subFilters","term"],n);return(e=e.reduce(function(r,e){return Object.entries(e).forEach(function(e){var t=e[0],e=e[1];r.hasOwnProperty(t)?o.includes(t)?n.includes(t)?r[t]=Yr(r[t],e):"term"===t?r[t]=r[t]+" "+e:"subFilters"===t&&(r[t]=P(r[t],e)):r[t]=Wr(r[t],e):r[t]=p(e)}),r},{})).filterType="content",e},n.mergeDateRange=Yr,n.mergeGroupFilters=function(e){var e=e.map(pn),o=["created","modified"],i=P(["filterType","term"],o);return e.reduce(function(n,e){return Object.entries(e).forEach(function(e){var t=e[0],r=e[1];n.hasOwnProperty(t)?(e=d(n,t),i.includes(t)?o.includes(t)?k(t,Yr(e,r),n):"term"===t&&(n[t]=n[t]+" "+r):k(t,Wr(e,r),n)):k(t,p(r),n)}),n},{filterType:"group"})},n.mergeMatchOptions=Wr,n.mergeObjects=C,n.mergeSearchOptions=Jr,n.mergeUserFilters=function(e){var e=e.map(fn),o=["created","modified","lastlogin"],i=P(["disabled","term","filterType"],o);return e.reduce(function(n,e){return Object.entries(e).forEach(function(e){var t=e[0],r=e[1];n.hasOwnProperty(t)?(e=d(n,t),i.includes(t)?o.includes(t)?k(t,Yr(e,r),n):"term"===t&&(n[t]=n[t]+" "+r):k(t,Wr(e,r),n)):k(t,p(r),n)}),n},{filterType:"user"})},n.normalizeItemType=At,n.normalizeSolutionTemplateItem=function(e){var t=p(e);return _r.forEach(function(e){delete t[e]}),t.extent="{{organization.defaultExtentBBox}}",t},n.objectToArray=function(r,n){return void 0===n&&(n="id"),Object.keys(r).reduce(function(e,t){return r[t][n]=t,e.push(p(r[t])),e},[])},n.objectToJsonBlob=function(e){if("undefined"!=typeof Blob)return new Blob([JSON.stringify(e)],{type:"application/json"});throw new Error("objectToJsonBlob is not currently supported on Node")},n.parseDatasetId=Ot,n.parseItemCategories=Pt,n.processRevertableTasks=function(e){return Promise.all(e).then(function(e){function t(e){return"fullfilled"===e.status}var r=e.filter(t),n=e.filter(function(e){return!t(e)});if(n.length){e=r.map(function(e){return e.revert()});throw Promise.all(e).catch(function(){}),n[0].error}return r.map(function(e){return e.results})})},n.propifyString=function(e){return t(e.replace(/^[0-9]*/g,"").replace(/[^\w\s]/g,""))},n.relativeDateToDateRange=zr,n.removeContextFromSlug=Dt,n.removeDomain=function(e,t){if(t.isPortal)throw new Error("removeDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=bn(t);return r["Content-Type"]="application/json",e=wn(t.hubApiUrl)+"/"+e,fetch(e,{method:"DELETE",headers:r,mode:"cors"}).then(vn)},n.removeEmptyProps=function t(r){return Object.keys(r).forEach(function(e){r[e]&&"object"==typeof r[e]?t(r[e]):null==r[e]&&delete r[e]}),r},n.replaceItemId=function(e,t,r){return void 0===r&&(r="{{appid}}"),w(p(e),new RegExp(t,"g"),r)},n.runRevertableTask=function(e,t){return e().then(function(e){return{status:"fullfilled",results:e,revert:t}}).catch(function(e){return{status:"rejected",error:e}})},n.serializeContentFilterForPortal=cn,n.serializeDateRange=$r,n.serializeGroupFilterForPortal=dn,n.serializeMatchOptions=Kr,n.serializeModel=mr,n.serializeSpatialReference=Kt,n.serializeStringOrArray=Qr,n.serializeUserFilterForPortal=mn,n.setContentHubId=jt,n.setContentSiteUrls=Lt,n.setContentType=Ft,n.setProp=k,n.shareItemToGroups=function(t,e,r){return Promise.all(e.map(function(e){return Pe(Object.assign({},{id:t,groupId:e},r))}))},n.slugify=function(e){return"string"==typeof e?e.trim().toLowerCase().replace(/ +/g,"-").replace(/[^\w-]/g,"").replace(/-+/g,"-"):e},n.stringToBlob=function(e,t){if(void 0===t&&(t="application/octet-stream"),"undefined"==typeof Blob)throw new Error("stringToBlob is not currently supported on Node");for(var r=[],n=0;n<e.length;n++)r[n]=e.charCodeAt(n);var o=new Uint8Array(r);return new Blob([o],{type:t})},n.stripProtocol=Le,n.unique=h,n.uniqueBy=function(e,r){return e.reduce(function(e,t){return m(e.find(function(e){return d(e,r)===d(t,r)})?null:t,e)},[])},n.unprotectModel=function(e,t){return e.item.protected?le(Object.assign({id:e.item.id},t)):Promise.resolve({success:!0})},n.unshareItemFromGroups=function(t,e,r){return Promise.all(e.map(function(e){return _e(Object.assign({},{id:t,groupId:e},r))}))},n.updateDomain=function(e,t){if(t.isPortal)throw new Error("updateDomain is not available in ArcGIS Enterprise. Instead, edit the hubdomain typekeyword on the item");var r=bn(t);r["Content-Type"]="application/json";var n=wn(t.hubApiUrl)+"/"+e.id;return"number"==typeof(t=e.siteTitle)&&(e.siteTitle=t.toString()),fetch(n,{method:"PUT",headers:r,mode:"cors",body:JSON.stringify(e)}).then(vn)},n.upgradeProtocol=function(e){return-1===e.indexOf("http")?"https://"+e:-1!==e.indexOf("http://")?e.replace(/^http:/i,"https:"):e},n.upgradeSiteSchema=Rn,n.uploadResourcesFromUrl=function(n,e,o){if(Array.isArray(e)){e=e.reduce(function(e,t){var r;return t.url&&(r={id:n.item.id,owner:n.item.owner,fileName:t.name,url:jr(t.url,o),authentication:o.authentication},"thumbnail"===t.type?e.push(Lr(r)):e.push(Fr(r))),e},[]);return Promise.all(e)}return Promise.resolve([])},n.valueToMatchOptions=Vr,n.without=function(e,t){return e.filter(function(e){return e!==t})},n.withoutByProp=function(t,r,e){return e.filter(function(e){return e[t]!==r})},Object.defineProperty(n,"__esModule",{value:!0})});
|
|
2
2
|
//# sourceMappingURL=common.umd.min.js.map
|