@esri/arcgis-rest-portal
Advanced tools
@@ -1,2 +0,2 @@ | ||
import { IUserItemOptions, IItemResourceOptions, IUpdateItemResponse, IItemResourceResponse, IManageItemRelationshipOptions, IItemPartOptions } from "./helpers"; | ||
import { IUserItemOptions, IItemResourceOptions, IUpdateItemResponse, IItemResourceResponse, IManageItemRelationshipOptions } from "./helpers"; | ||
export interface IAddItemDataOptions extends IUserItemOptions { | ||
@@ -74,20 +74,1 @@ /** | ||
export declare function addItemResource(requestOptions: IItemResourceOptions): Promise<IItemResourceResponse>; | ||
/** | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* part: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Inquire about status when publishing an item, adding an item in async mode, or adding with a multipart upload. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param id - The Id of the item to get status for. | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to get the item status. | ||
*/ | ||
export declare function addItemPart(requestOptions?: IItemPartOptions): Promise<IUpdateItemResponse>; |
@@ -92,27 +92,2 @@ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc. | ||
} | ||
/** | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* part: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Inquire about status when publishing an item, adding an item in async mode, or adding with a multipart upload. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param id - The Id of the item to get status for. | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to get the item status. | ||
*/ | ||
export function addItemPart(requestOptions) { | ||
return determineOwner(requestOptions).then(function (owner) { | ||
var url = getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/addPart"; | ||
var options = appendCustomParams(requestOptions, ["file", "partNum"], { params: __assign({}, requestOptions.params) }); | ||
return request(url, options); | ||
}); | ||
} | ||
//# sourceMappingURL=add.js.map |
@@ -48,7 +48,4 @@ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc. | ||
export function createItemInFolder(requestOptions) { | ||
if (requestOptions.file && !requestOptions.multipart) { | ||
return Promise.reject(new Error("The request must be a multipart request for file uploading.")); | ||
} | ||
if (requestOptions.multipart && !requestOptions.filename) { | ||
return Promise.reject(new Error("The file name is required for a multipart request.")); | ||
return Promise.reject(new Error("The filename is required for a multipart request.")); | ||
} | ||
@@ -55,0 +52,0 @@ return determineOwner(requestOptions).then(function (owner) { |
@@ -1,4 +0,26 @@ | ||
import { IUserItemOptions, IUpdateItemResponse } from "./helpers"; | ||
import { IItemAdd } from "@esri/arcgis-rest-types"; | ||
import { IUserItemOptions, IUpdateItemResponse, IItemPartOptions } from "./helpers"; | ||
export interface ICommitItemOptions extends IUserItemOptions { | ||
item: IItemAdd; | ||
} | ||
/** | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* file: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Add Item Part allows the caller to upload a file part when doing an add or update item operation in multipart mode. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to add the item part status. | ||
*/ | ||
export declare function addItemPart(requestOptions?: IItemPartOptions): Promise<IUpdateItemResponse>; | ||
/** | ||
* ```js | ||
* import { commitItemUpload } from "@esri/arcgis-rest-portal"; | ||
@@ -14,7 +36,6 @@ * // | ||
* | ||
* @param id - The Id of the item to commit upload for. | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to get the commit result. | ||
*/ | ||
export declare function commitItemUpload(requestOptions?: IUserItemOptions): Promise<IUpdateItemResponse>; | ||
export declare function commitItemUpload(requestOptions?: ICommitItemOptions): Promise<IUpdateItemResponse>; | ||
/** | ||
@@ -32,3 +53,2 @@ * ```js | ||
* | ||
* @param id - The Id of the item to cancel upload for. | ||
* @param requestOptions - Options for the request | ||
@@ -35,0 +55,0 @@ * @returns A Promise to get the commit result. |
/* Copyright (c) 2017-2019 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 */ | ||
import { request } from "@esri/arcgis-rest-request"; | ||
import { __assign } from "tslib"; | ||
import { request, appendCustomParams } from "@esri/arcgis-rest-request"; | ||
import { getPortalUrl } from "../util/get-portal-url"; | ||
import { determineOwner } from "./helpers"; | ||
import { determineOwner, serializeItem } from "./helpers"; | ||
/** | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* file: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Add Item Part allows the caller to upload a file part when doing an add or update item operation in multipart mode. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to add the item part status. | ||
*/ | ||
export function addItemPart(requestOptions) { | ||
var partNum = requestOptions.partNum; | ||
if (!Number.isInteger(partNum) || partNum < 1 || partNum > 10000) { | ||
return Promise.reject(new Error('The part number must be an integer between 1 to 10000, inclusive.')); | ||
} | ||
return determineOwner(requestOptions).then(function (owner) { | ||
// AGO adds the "partNum" parameter in the query string, not in the body | ||
var url = getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/addPart?partNum=" + partNum; | ||
var options = appendCustomParams(requestOptions, ["file"], { params: __assign({}, requestOptions.params) }); | ||
return request(url, options); | ||
}); | ||
} | ||
/** | ||
* ```js | ||
* import { commitItemUpload } from "@esri/arcgis-rest-portal"; | ||
@@ -18,3 +48,2 @@ * // | ||
* | ||
* @param id - The Id of the item to commit upload for. | ||
* @param requestOptions - Options for the request | ||
@@ -26,3 +55,6 @@ * @returns A Promise to get the commit result. | ||
var url = getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/commit"; | ||
return request(url, requestOptions); | ||
var options = appendCustomParams(requestOptions, [], { | ||
params: __assign(__assign({}, requestOptions.params), serializeItem(requestOptions.item)) | ||
}); | ||
return request(url, options); | ||
}); | ||
@@ -42,3 +74,2 @@ } | ||
* | ||
* @param id - The Id of the item to cancel upload for. | ||
* @param requestOptions - Options for the request | ||
@@ -45,0 +76,0 @@ * @returns A Promise to get the commit result. |
@@ -5,3 +5,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.addItemPart = exports.addItemResource = exports.addItemRelationship = exports.addItemData = void 0; | ||
exports.addItemResource = exports.addItemRelationship = exports.addItemData = void 0; | ||
var tslib_1 = require("tslib"); | ||
@@ -99,28 +99,2 @@ var arcgis_rest_request_1 = require("@esri/arcgis-rest-request"); | ||
exports.addItemResource = addItemResource; | ||
/** | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* part: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Inquire about status when publishing an item, adding an item in async mode, or adding with a multipart upload. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param id - The Id of the item to get status for. | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to get the item status. | ||
*/ | ||
function addItemPart(requestOptions) { | ||
return helpers_1.determineOwner(requestOptions).then(function (owner) { | ||
var url = get_portal_url_1.getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/addPart"; | ||
var options = arcgis_rest_request_1.appendCustomParams(requestOptions, ["file", "partNum"], { params: tslib_1.__assign({}, requestOptions.params) }); | ||
return arcgis_rest_request_1.request(url, options); | ||
}); | ||
} | ||
exports.addItemPart = addItemPart; | ||
//# sourceMappingURL=add.js.map |
@@ -52,7 +52,4 @@ "use strict"; | ||
function createItemInFolder(requestOptions) { | ||
if (requestOptions.file && !requestOptions.multipart) { | ||
return Promise.reject(new Error("The request must be a multipart request for file uploading.")); | ||
} | ||
if (requestOptions.multipart && !requestOptions.filename) { | ||
return Promise.reject(new Error("The file name is required for a multipart request.")); | ||
return Promise.reject(new Error("The filename is required for a multipart request.")); | ||
} | ||
@@ -59,0 +56,0 @@ return helpers_1.determineOwner(requestOptions).then(function (owner) { |
@@ -5,3 +5,4 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.cancelItemUpload = exports.commitItemUpload = void 0; | ||
exports.cancelItemUpload = exports.commitItemUpload = exports.addItemPart = void 0; | ||
var tslib_1 = require("tslib"); | ||
var arcgis_rest_request_1 = require("@esri/arcgis-rest-request"); | ||
@@ -12,2 +13,32 @@ var get_portal_url_1 = require("../util/get-portal-url"); | ||
* ```js | ||
* import { addItemPart } from "@esri/arcgis-rest-portal"; | ||
* // | ||
* addItemPart({ | ||
* id: "30e5fe3149c34df1ba922e6f5bbf808f", | ||
* file: data, | ||
* partNum: 1, | ||
* authentication | ||
* }) | ||
* .then(response) | ||
* ``` | ||
* Add Item Part allows the caller to upload a file part when doing an add or update item operation in multipart mode. See the [REST Documentation](https://developers.arcgis.com/rest/users-groups-and-items/add-item-part.htm) for more information. | ||
* | ||
* @param requestOptions - Options for the request | ||
* @returns A Promise to add the item part status. | ||
*/ | ||
function addItemPart(requestOptions) { | ||
var partNum = requestOptions.partNum; | ||
if (!Number.isInteger(partNum) || partNum < 1 || partNum > 10000) { | ||
return Promise.reject(new Error('The part number must be an integer between 1 to 10000, inclusive.')); | ||
} | ||
return helpers_1.determineOwner(requestOptions).then(function (owner) { | ||
// AGO adds the "partNum" parameter in the query string, not in the body | ||
var url = get_portal_url_1.getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/addPart?partNum=" + partNum; | ||
var options = arcgis_rest_request_1.appendCustomParams(requestOptions, ["file"], { params: tslib_1.__assign({}, requestOptions.params) }); | ||
return arcgis_rest_request_1.request(url, options); | ||
}); | ||
} | ||
exports.addItemPart = addItemPart; | ||
/** | ||
* ```js | ||
* import { commitItemUpload } from "@esri/arcgis-rest-portal"; | ||
@@ -23,3 +54,2 @@ * // | ||
* | ||
* @param id - The Id of the item to commit upload for. | ||
* @param requestOptions - Options for the request | ||
@@ -31,3 +61,6 @@ * @returns A Promise to get the commit result. | ||
var url = get_portal_url_1.getPortalUrl(requestOptions) + "/content/users/" + owner + "/items/" + requestOptions.id + "/commit"; | ||
return arcgis_rest_request_1.request(url, requestOptions); | ||
var options = arcgis_rest_request_1.appendCustomParams(requestOptions, [], { | ||
params: tslib_1.__assign(tslib_1.__assign({}, requestOptions.params), helpers_1.serializeItem(requestOptions.item)) | ||
}); | ||
return arcgis_rest_request_1.request(url, options); | ||
}); | ||
@@ -48,3 +81,2 @@ } | ||
* | ||
* @param id - The Id of the item to cancel upload for. | ||
* @param requestOptions - Options for the request | ||
@@ -51,0 +83,0 @@ * @returns A Promise to get the commit result. |
/* @preserve | ||
* @esri/arcgis-rest-portal - v2.19.0 - Apache-2.0 | ||
* @esri/arcgis-rest-portal - v2.19.1 - Apache-2.0 | ||
* Copyright (c) 2017-2020 Esri, Inc. | ||
* Mon Sep 28 2020 11:10:27 GMT-0700 (Pacific Daylight Time) | ||
* Fri Oct 02 2020 12:05:43 GMT-0700 (Pacific Daylight Time) | ||
*/ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@esri/arcgis-rest-request")):"function"==typeof define&&define.amd?define(["exports","@esri/arcgis-rest-request"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisRest=e.arcgisRest||{},e.arcgisRest)}(this,function(e,s){"use strict";var c=function(){return(c=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 m(e){return void 0===e&&(e={}),e.portal?s.cleanUrl(e.portal):e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function i(e){var t=JSON.parse(JSON.stringify(e));return t.data&&("undefined"!=typeof Blob&&e.data instanceof Blob||"ReadStream"===e.data.constructor.name?t.file=e.data:t.text=e.data,delete t.data),t}function p(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 r(r){return p(r).then(function(e){var t=r.folderId?m(r)+"/content/users/"+e+"/"+r.folderId+"/items/"+r.item.id+"/update":m(r)+"/content/users/"+e+"/items/"+r.item.id+"/update";return r.params=c(c({},r.params),i(r.item)),s.request(t,r)})}function t(o){return o.file&&!o.multipart?Promise.reject(new Error("The request must be a multipart request for file uploading.")):o.multipart&&!o.filename?Promise.reject(new Error("The file name is required for a multipart request.")):p(o).then(function(e){var t=m(o)+"/content/users/"+e,r=t+"/addItem";o.folderId&&(r=t+"/"+o.folderId+"/addItem"),o.params=c(c({},o.params),i(o.item));var n=s.appendCustomParams(o,["owner","folderId","file","dataUrl","text","async","multipart","filename","overwrite"],{params:c({},o.params)});return s.request(r,n)})}var n=/[\x00-\x1F\x7F-\x9F\xA0]/g;function a(e){return e.replace(n,"")}var d=function(e,t){return("string"==typeof t?t:m(t))+"/content/items/"+e};function o(e,t){var r=t||{},n=r.fileName,o=r.readAs;return u(e,"/info/"+(void 0===n?"iteminfo.xml":n),void 0===o?"text":o,c({httpMethod:"GET"},t))}function u(e,t,r,n){var o=""+d(e,n)+t,i=c({params:{}},n),u=i.rawResponse;return i.rawResponse=!0,i.params.f=null,s.request(o,i).then(function(e){return u?e:"json"!==r?e[r]():e.text().then(function(e){return JSON.parse(a(e))})})}function h(e,t){var r=m(t)+"/community/groups/"+e,n=c({httpMethod:"GET"},t);return s.request(r,n)}function f(e){var t=e.authentication.username,r=e.owner||t;return m(e)+"/content/users/"+encodeURIComponent(r)+"/items/"+e.id+"/share"}function l(e){var t=e.authentication.username;return(e.owner||t)===t}function g(e){return e.authentication.getUser(e).then(function(e){return e&&"org_admin"===e.role&&!e.roleId})}function v(e){return h(e.groupId,e).then(function(e){return e.userMembership.memberType}).catch(function(){return"none"})}var y=(I.prototype.match=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.termStack=this.termStack.concat(e),this},I.prototype.in=function(e){var t="`in("+(e?'"'+e+'"':"")+")`";return this.hasRange||this.hasTerms?(e&&"*"!==e&&(this.q+=e+":"),this.commit()):(s.warn(t+" was called with no call to `match(...)` or `from(...)`/`to(...)`. Your query was not modified."),this)},I.prototype.startGroup=function(){return this.commit(),0<this.openGroups&&(this.q+=" "),this.openGroups++,this.q+="(",this},I.prototype.endGroup=function(){return this.openGroups<=0?s.warn("`endGroup(...)` was called without calling `startGroup(...)` first. Your query was not modified."):(this.commit(),this.openGroups--,this.q+=")"),this},I.prototype.and=function(){return this.addModifier("and")},I.prototype.or=function(){return this.addModifier("or")},I.prototype.not=function(){return this.addModifier("not")},I.prototype.from=function(e){return this.hasTerms?s.warn("`from(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Your query was not modified."):this.rangeStack[0]=e,this},I.prototype.to=function(e){return this.hasTerms?s.warn("`to(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Your query was not modified."):this.rangeStack[1]=e,this},I.prototype.boost=function(e){return this.commit(),this.q+="^"+e,this},I.prototype.toParam=function(){return this.commit(),this.cleanup(),this.q},I.prototype.clone=function(){return this.commit(),this.cleanup(),new I(this.q+"")},I.prototype.addModifier=function(e){return this.currentModifer?(s.warn("You have called `"+this.currentModifer+"()` after `"+e+"()`. Your current query was not modified."),this):(this.commit(),""===this.q&&"not"!==e?s.warn("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)},I.prototype.hasWhiteSpace=function(e){return/\s/g.test(e)},I.prototype.formatTerm=function(e){return e instanceof Date?e.getTime():"string"==typeof e&&this.hasWhiteSpace(e)?'"'+e+'"':e},I.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(I.prototype,"hasTerms",{get:function(){return 0<this.termStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(I.prototype,"hasRange",{get:function(){return this.rangeStack.length&&this.rangeStack[0]&&this.rangeStack[1]},enumerable:!1,configurable:!0}),I.prototype.cleanup=function(){if(0<this.openGroups)for(s.warn("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&&s.warn("`startGroup(...)` was called without calling `endGroup(...)` first. Your query was not modified."),this.q=this.q.replace(/(\(\))*/,"")},I);function I(e){void 0===e&&(e=""),this.termStack=[],this.rangeStack=[],this.openGroups=0,this.q=e}function q(r,n){var e,t,o="string"==typeof r||r instanceof y?{httpMethod:"GET",params:{q:r}}:s.appendCustomParams(r,["q","num","start","sortField","sortOrder"],{httpMethod:"GET"});switch(n){case"item":t="/search";break;case"group":t="/community/groups";break;case"groupContent":if("string"==typeof r||r instanceof y||!r.groupId)return Promise.reject(new Error("you must pass a `groupId` option to `searchGroupContent`"));t="/content/groups/"+r.groupId+"/search";break;default:t="/portals/self/users/search"}return e=m(o)+t,s.request(e,o).then(function(t){return t.nextStart&&-1!==t.nextStart&&(t.nextPage=function(){var e;return"string"==typeof r||r instanceof y?e={q:r,start:t.nextStart}:(e=r).start=t.nextStart,q(e,n)}),t})}function w(e){return q(e,"item")}function b(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 T(e){var t=e.id,n=m(e)+"/community/groups/"+t+"/addUsers",r=Object.assign({},e,{admins:void 0,users:void 0}),o=function(){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],u=0,a=i.length;u<a;u++,o++)n[o]=i[u];return n}(G("users",e.users,r),G("admins",e.admins,r)).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(o).then(U)}function G(u,e,a){return!e||e.length<1?[]:b(e,25).map(function(e){return t=u,r=e,n=a,Object.assign({},n,((o={})[t]=r,o.params=c(c({},n.params),((i={})[t]=r,i)),o));var t,r,n,o,i})}function U(e){var t=e.filter(function(e){return e.notAdded}).reduce(function(e,t){return e.concat(t.notAdded)},[]),r=e.filter(function(e){return e.errors}).reduce(function(e,t){return e.concat(t.errors)},[]),n={notAdded:t};return 0<r.length&&(n.errors=r),n}function P(n){var e=n.id,t=n.users,o=m(n)+"/community/groups/"+e+"/removeUsers",r=b(t,25).map(function(e){return t=e,r=c(c({},n),{users:t,params:{users:t}}),s.request(o,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(r).then(function(e){function t(r){return e.filter(function(e){return e[r]}).reduce(function(e,t){return e.concat(t[r])},[])}var r=t("errors"),n={notRemoved:t("notRemoved")};return r.length?c(c({},n),{errors:r}):n})}function C(e){var t=e.every(function(e){return e.success}),r=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),n={success:t};return 0<r.length&&(n.errors=r),n}function S(e){var t=m(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,s.request(t,r)}function M(e){var t=e.every(function(e){return e.success}),r=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),n={success:t};return 0<r.length&&(n.errors=r),n}function R(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=m(e)+"/community/users/"+encodeURIComponent(t),n=c(c({},e),n)),s.request(r,n)}function E(e,t){return t.params=c({org:!1,everyone:!1},t.params),"private"===t.access&&(t.params.groups=" "),"org"===t.access&&(t.params.org=!0),"public"===t.access&&(t.params.account=!0,t.params.everyone=!0),s.request(e,t)}function x(t){return w({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 O(e){var t=e.authentication.username,r=e.owner||t,n=m(e)+"/content/items/"+e.id+"/share";return r===t&&(n=m(e)+"/content/users/"+r+"/items/"+e.id+"/share"),e.params={groups:e.groupId,confirmItemControl:e.confirmItemControl},s.request(n,e)}function j(e,t,r,n,o){var i,u,a,s,c=t.groups||[],m=c.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(!m&&511<c.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 s=m?r&&"member"===m.userMembership.memberType?(a=S({id:o.groupId,users:[t.username],newMemberType:"admin",authentication:o.authentication}).then(function(e){var t=e.results.reduce(function(e,t){return t.success||e.push(t.username),e},[]);return Promise.resolve({notAdded:t})}).catch(function(){return{notAdded:[t.username]}}),function(e){return S({id:o.groupId,users:[t.username],newMemberType:"member",authentication:o.authentication}).then(function(){return e}).catch(function(){return e})}):(a=Promise.resolve({notAdded:[]}),function(e){return Promise.resolve(e)}):(u=r?"admins":"users",a=T(((i={id:o.groupId})[u]=[t.username],i.authentication=o.authentication,i)).then(function(e){if(e.errors&&e.errors.length)throw e.errors[0];return e}).catch(function(){return{notAdded:[t.username]}}),function(e){return P({id:o.groupId,users:[t.username],authentication:o.authentication}).then(function(){return e})}),{promise:a.then(function(e){if(e.notAdded.length)throw new Error(n);return e}),revert:s}}function N(e,t){var r=e||"self",n=m(t)+"/portals/"+r,o=c({httpMethod:"GET"},t);return s.request(n,o)}e.SearchQueryBuilder=y,e.acceptInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId+"/accept",n=c({},e);return s.request(r,n)},e.addGroupUsers=T,e.addItemData=function(e){var t=c({item:{id:e.id,data:e.data}},e);return delete t.id,delete t.data,r(t)},e.addItemPart=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.id+"/addPart",r=s.appendCustomParams(n,["file","partNum"],{params:c({},n.params)});return s.request(t,r)})},e.addItemRelationship=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/addRelationship",r=s.appendCustomParams(n,["originItemId","destinationItemId","relationshipType"],{params:c({},n.params)});return s.request(t,r)})},e.addItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/addResources";return r.params=c({file:r.resource,fileName:r.name,resourcesPrefix:r.prefix,text:r.content,access:r.private?"private":"inherit"},r.params),s.request(t,r)})},e.cancelItemUpload=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/cancel";return s.request(t,r)})},e.commitItemUpload=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/commit";return s.request(t,r)})},e.createFolder=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/createFolder";return r.params=c({title:r.title},r.params),s.request(t,r)})},e.createGroup=function(e){var t=m(e)+"/community/createGroup";return e.params=c(c({},e.params),e.group),s.request(t,e)},e.createGroupNotification=function(e){var t=m(e)+"/community/groups/"+e.id+"/createNotification",r=c({params:c({subject:e.subject,message:e.message,users:e.users,notificationChannelType:e.notificationChannelType||"email",clientId:e.clientId,silentNotification:e.silentNotification,notifyAll:!e.users||0===e.users.length},e.params)},e);return s.request(t,r)},e.createItem=function(e){return t(c({folderId:null},e))},e.createItemInFolder=t,e.createOrgNotification=function(e){var o,n=m(e)+"/portals/self/createNotification",t=b((o=e).users,o.batchSize||25).map(function(e){return t=e,r=o,(n=Object.assign({},r)).params=c(c({},n.params),{users:t,subject:r.subject,message:r.message,notificationChannelType:n.notificationChannelType}),n;var t,r,n}).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(t).then(M)},e.declineInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId+"/decline",n=c({},e);return s.request(r,n)},e.determineOwner=p,e.ensureMembership=j,e.exportItem=function(t){var r=t.authentication,n=t.id,o=t.title,i=t.exportFormat,u=t.exportParameters;return p(t).then(function(e){return m(t)+"/content/users/"+e+"/export"}).then(function(e){return s.request(e,{httpMethod:"POST",authentication:r,params:{itemId:n,title:o,exportFormat:i,exportParameters:u}})})},e.getGroup=h,e.getGroupCategorySchema=function(e,t){var r=m(t)+"/community/groups/"+e+"/categorySchema",n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getGroupContent=function(e,t){var r=m(t)+"/content/groups/"+e,n=c(c({httpMethod:"GET"},{params:{start:1,num:100}}),t);return t&&t.paging&&(n.params=c({},t.paging)),s.request(r,n)},e.getGroupUsers=function(e,t){var r=m(t)+"/community/groups/"+e+"/users",n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getItem=function(e,t){var r=d(e,t),n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getItemBaseUrl=d,e.getItemData=function(e,t){var r=d(e,t)+"/data",n=c({httpMethod:"GET",params:{}},t);return n.file&&(n.params.f=null),s.request(r,n).catch(function(e){if(!RegExp(/The string did not match the expected pattern|(Unexpected end of (JSON input|data at line 1 column 1))/i).test(e.message))throw e})},e.getItemGroups=function(e,t){var r=d(e,t)+"/groups";return s.request(r,t)},e.getItemInfo=o,e.getItemMetadata=function(e,t){return o(e,c(c({},t),{fileName:"metadata/metadata.xml"}))},e.getItemParts=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/parts";return s.request(t,r)})},e.getItemResource=function(e,t){var r=t.readAs||"blob";return u(e,"/resources/"+t.fileName,r,t)},e.getItemResources=function(e,t){var r=d(e,t)+"/resources",n=c({},t);return n.params=c({num:1e3},n.params),s.request(r,n)},e.getItemStatus=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.id+"/status",r=s.appendCustomParams(n,["jobId","jobType"],{params:c({},n.params)});return s.request(t,r)})},e.getPortal=N,e.getPortalSettings=function(e,t){var r=e||"self",n=m(t)+"/portals/"+r+"/settings",o=c({httpMethod:"GET"},t);return s.request(n,o)},e.getPortalUrl=m,e.getRelatedItems=function(e){var t=d(e.id,e)+"/relatedItems",r=c({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,s.request(t,r)},e.getSelf=function(e){return N(null,e)},e.getSharingUrl=f,e.getUser=R,e.getUserContent=function(t){var e=t.folderId,r=t.start,n=void 0===r?1:r,o=t.num,i=void 0===o?10:o,u=t.authentication,a=e?"/"+e:"";return p(t).then(function(e){return m(t)+"/content/users/"+e+a}).then(function(e){return s.request(e,{httpMethod:"GET",authentication:u,params:{start:n,num:i}})})},e.getUserInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId,n={httpMethod:"GET"},n=c(c({},e),n);return s.request(r,n)},e.getUserInvitations=function(e){var t={httpMethod:"GET"},r=encodeURIComponent(e.authentication.username),n=m(e)+"/community/users/"+r+"/invitations",t=c(c({},e),t);return s.request(n,t)},e.getUserMembership=v,e.getUserNotifications=function(e){var t={httpMethod:"GET"},r=encodeURIComponent(e.authentication.username),n=m(e)+"/community/users/"+r+"/notifications",t=c(c({},e),t);return s.request(n,t)},e.getUserTags=function(e){var t=e.username||e.authentication.username,r=m(e)+"/community/users/"+encodeURIComponent(t)+"/tags";return s.request(r,e)},e.getUserUrl=function(e){return m(e)+"/community/users/"+encodeURIComponent(e.username)},e.inviteGroupUsers=function(e){var o,t=e.id,n=m(e)+"/community/groups/"+t+"/invite",r=b((o=e).users,25).map(function(e){return t=e,r=o,(n=Object.assign({},r)).params=c(c({},n.params),{users:t,role:n.role,expiration:n.expiration}),n;var t,r,n}).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(r).then(C)},e.isItemOwner=l,e.isItemSharedWithGroup=x,e.isOrgAdmin=g,e.joinGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/join";return s.request(t,e)},e.leaveGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/leave";return s.request(t,e)},e.moveItem=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.itemId+"/move",r=(r=n.folderId)||"/";return n.params=c({folder:r},n.params),s.request(t,n)})},e.protectGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/protect";return s.request(t,e)},e.protectItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/protect";return s.request(t,r)})},e.reassignItem=function(n){return g(n).then(function(e){if(!e)throw Error("Item "+n.id+" can not be reassigned because current user is not an organization administrator.");var t=m(n)+"/content/users/"+n.currentOwner+"/items/"+n.id+"/reassign",r={params:{targetUsername:n.targetUsername,targetFolderName:n.targetFolderName},authentication:n.authentication};return s.request(t,r)})},e.removeFolder=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+encodeURIComponent(e)+"/"+r.folderId+"/delete";return s.request(t,r)})},e.removeGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/delete",r=c({},e);return s.request(t,r)},e.removeGroupUsers=P,e.removeItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/delete";return s.request(t,r)})},e.removeItemRelationship=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/deleteRelationship",r=s.appendCustomParams(n,["originItemId","destinationItemId","relationshipType"],{params:c({},n.params)});return s.request(t,r)})},e.removeItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/removeResources";return r.params=c(c({},r.params),{resource:r.resource}),s.request(t,r)})},e.removeNotification=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/notifications/"+e.id+"/delete";return s.request(r,e)},e.scrubControlChars=a,e.searchGroupContent=function(e){return q(e,"groupContent")},e.searchGroupUsers=function(e,t){var r=m(t)+"/community/groups/"+e+"/userlist",n=s.appendCustomParams(t||{},["name","num","start","sortField","sortOrder","joined","memberType"],{httpMethod:"GET"});return s.request(r,n)},e.searchGroups=function(e){return q(e,"group")},e.searchItems=w,e.searchUsers=function(e){return q(e,"user")},e.serializeItem=i,e.setItemAccess=function(t){var r=f(t);return l(t)?E(r,t):g(t).then(function(e){if(e)return E(r,t);throw Error("This item can not be shared by "+t.authentication.username+". They are neither the item owner nor an organization admin.")})},e.shareItemWithGroup=function(i){return x(i).then(function(e){if(e)return{itemId:i.id,shortcut:!0,notSharedWith:[]};var t=i.authentication.username,r=i.owner,o=i.confirmItemControl,n=r||t;return n!==t?Promise.all([R({username:t,authentication:i.authentication}),R({username:n,authentication:i.authentication}),v(i)]).then(function(e){var t=e[0],r=e[1],n=e[2];return function(e,t,r,n,o,i){var u=[];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.");u.push(j(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),j(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)u.push(j(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 u}(t,!!o,n,"org_admin"===t.role&&!t.roleId,r,i)}).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 O(i)}).then(function(e){return r(e)})}):O(i)}).then(function(e){if(e.notSharedWith.length)throw Error("Item "+i.id+" could not be shared to group "+i.groupId+".");return e})},e.unprotectGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/unprotect";return s.request(t,e)},e.unprotectItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/unprotect";return s.request(t,r)})},e.unshareItemWithGroup=function(a){return x(a).then(function(e){if(!e)return Promise.resolve({itemId:a.id,shortcut:!0,notUnsharedFrom:[]});var i=a.authentication.username,u=a.owner;return Promise.all([v(a),R({username:i,authentication:a.authentication})]).then(function(e){var t=e[0],r=e[1],n=(u||i)===i,o="org_admin"===r.role&&!r.roleId;if(!n&&!o&&["admin","owner"].indexOf(t)<0)throw Error("This item can not be unshared from group "+a.groupId+" by "+i+" 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=m(e)+"/content/items/"+e.id+"/unshare";r===t&&(n=m(e)+"/content/users/"+r+"/items/"+e.id+"/unshare");return e.params={groups:e.groupId},s.request(n,e)}(a)}).then(function(e){if(e.notUnsharedFrom.length)throw Error("Item "+a.id+" could not be unshared to group "+a.groupId);return e})})},e.updateGroup=function(e){var t=m(e)+"/community/groups/"+e.group.id+"/update";return e.params=c(c({},e.params),e.group),s.request(t,e)},e.updateItem=r,e.updateItemInfo=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/updateinfo";return r.params=c({folderName:r.folderName,file:r.file},r.params),s.request(t,r)})},e.updateItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/updateResources";return r.params=c({file:r.resource,fileName:r.name,text:r.content},r.params),void 0!==r.private&&(r.params.access=r.private?"private":"inherit"),s.request(t,r)})},e.updateUser=function(e){var t=e.user.username||e.authentication.username,r=m(e)+"/community/users/"+encodeURIComponent(t)+"/update";return e.params=c(c({},e.user),e.params),delete e.user,s.request(r,e)},e.updateUserMemberships=S,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@esri/arcgis-rest-request")):"function"==typeof define&&define.amd?define(["exports","@esri/arcgis-rest-request"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).arcgisRest=e.arcgisRest||{},e.arcgisRest)}(this,function(e,s){"use strict";var c=function(){return(c=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 m(e){return void 0===e&&(e={}),e.portal?s.cleanUrl(e.portal):e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function i(e){var t=JSON.parse(JSON.stringify(e));return t.data&&("undefined"!=typeof Blob&&e.data instanceof Blob||"ReadStream"===e.data.constructor.name?t.file=e.data:t.text=e.data,delete t.data),t}function p(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 r(r){return p(r).then(function(e){var t=r.folderId?m(r)+"/content/users/"+e+"/"+r.folderId+"/items/"+r.item.id+"/update":m(r)+"/content/users/"+e+"/items/"+r.item.id+"/update";return r.params=c(c({},r.params),i(r.item)),s.request(t,r)})}function t(o){return o.multipart&&!o.filename?Promise.reject(new Error("The filename is required for a multipart request.")):p(o).then(function(e){var t=m(o)+"/content/users/"+e,r=t+"/addItem";o.folderId&&(r=t+"/"+o.folderId+"/addItem"),o.params=c(c({},o.params),i(o.item));var n=s.appendCustomParams(o,["owner","folderId","file","dataUrl","text","async","multipart","filename","overwrite"],{params:c({},o.params)});return s.request(r,n)})}var n=/[\x00-\x1F\x7F-\x9F\xA0]/g;function a(e){return e.replace(n,"")}var d=function(e,t){return("string"==typeof t?t:m(t))+"/content/items/"+e};function o(e,t){var r=t||{},n=r.fileName,o=r.readAs;return u(e,"/info/"+(void 0===n?"iteminfo.xml":n),void 0===o?"text":o,c({httpMethod:"GET"},t))}function u(e,t,r,n){var o=""+d(e,n)+t,i=c({params:{}},n),u=i.rawResponse;return i.rawResponse=!0,i.params.f=null,s.request(o,i).then(function(e){return u?e:"json"!==r?e[r]():e.text().then(function(e){return JSON.parse(a(e))})})}function h(e,t){var r=m(t)+"/community/groups/"+e,n=c({httpMethod:"GET"},t);return s.request(r,n)}function f(e){var t=e.authentication.username,r=e.owner||t;return m(e)+"/content/users/"+encodeURIComponent(r)+"/items/"+e.id+"/share"}function l(e){var t=e.authentication.username;return(e.owner||t)===t}function g(e){return e.authentication.getUser(e).then(function(e){return e&&"org_admin"===e.role&&!e.roleId})}function v(e){return h(e.groupId,e).then(function(e){return e.userMembership.memberType}).catch(function(){return"none"})}var y=(I.prototype.match=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return this.termStack=this.termStack.concat(e),this},I.prototype.in=function(e){var t="`in("+(e?'"'+e+'"':"")+")`";return this.hasRange||this.hasTerms?(e&&"*"!==e&&(this.q+=e+":"),this.commit()):(s.warn(t+" was called with no call to `match(...)` or `from(...)`/`to(...)`. Your query was not modified."),this)},I.prototype.startGroup=function(){return this.commit(),0<this.openGroups&&(this.q+=" "),this.openGroups++,this.q+="(",this},I.prototype.endGroup=function(){return this.openGroups<=0?s.warn("`endGroup(...)` was called without calling `startGroup(...)` first. Your query was not modified."):(this.commit(),this.openGroups--,this.q+=")"),this},I.prototype.and=function(){return this.addModifier("and")},I.prototype.or=function(){return this.addModifier("or")},I.prototype.not=function(){return this.addModifier("not")},I.prototype.from=function(e){return this.hasTerms?s.warn("`from(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Your query was not modified."):this.rangeStack[0]=e,this},I.prototype.to=function(e){return this.hasTerms?s.warn("`to(...)` is not allowed after `match(...)` try using `.from(...).to(...).in(...)`. Your query was not modified."):this.rangeStack[1]=e,this},I.prototype.boost=function(e){return this.commit(),this.q+="^"+e,this},I.prototype.toParam=function(){return this.commit(),this.cleanup(),this.q},I.prototype.clone=function(){return this.commit(),this.cleanup(),new I(this.q+"")},I.prototype.addModifier=function(e){return this.currentModifer?(s.warn("You have called `"+this.currentModifer+"()` after `"+e+"()`. Your current query was not modified."),this):(this.commit(),""===this.q&&"not"!==e?s.warn("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)},I.prototype.hasWhiteSpace=function(e){return/\s/g.test(e)},I.prototype.formatTerm=function(e){return e instanceof Date?e.getTime():"string"==typeof e&&this.hasWhiteSpace(e)?'"'+e+'"':e},I.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(I.prototype,"hasTerms",{get:function(){return 0<this.termStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(I.prototype,"hasRange",{get:function(){return this.rangeStack.length&&this.rangeStack[0]&&this.rangeStack[1]},enumerable:!1,configurable:!0}),I.prototype.cleanup=function(){if(0<this.openGroups)for(s.warn("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&&s.warn("`startGroup(...)` was called without calling `endGroup(...)` first. Your query was not modified."),this.q=this.q.replace(/(\(\))*/,"")},I);function I(e){void 0===e&&(e=""),this.termStack=[],this.rangeStack=[],this.openGroups=0,this.q=e}function q(r,n){var e,t,o="string"==typeof r||r instanceof y?{httpMethod:"GET",params:{q:r}}:s.appendCustomParams(r,["q","num","start","sortField","sortOrder"],{httpMethod:"GET"});switch(n){case"item":t="/search";break;case"group":t="/community/groups";break;case"groupContent":if("string"==typeof r||r instanceof y||!r.groupId)return Promise.reject(new Error("you must pass a `groupId` option to `searchGroupContent`"));t="/content/groups/"+r.groupId+"/search";break;default:t="/portals/self/users/search"}return e=m(o)+t,s.request(e,o).then(function(t){return t.nextStart&&-1!==t.nextStart&&(t.nextPage=function(){var e;return"string"==typeof r||r instanceof y?e={q:r,start:t.nextStart}:(e=r).start=t.nextStart,q(e,n)}),t})}function w(e){return q(e,"item")}function b(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 T(e){var t=e.id,n=m(e)+"/community/groups/"+t+"/addUsers",r=Object.assign({},e,{admins:void 0,users:void 0}),o=function(){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],u=0,a=i.length;u<a;u++,o++)n[o]=i[u];return n}(G("users",e.users,r),G("admins",e.admins,r)).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(o).then(U)}function G(u,e,a){return!e||e.length<1?[]:b(e,25).map(function(e){return t=u,r=e,n=a,Object.assign({},n,((o={})[t]=r,o.params=c(c({},n.params),((i={})[t]=r,i)),o));var t,r,n,o,i})}function U(e){var t=e.filter(function(e){return e.notAdded}).reduce(function(e,t){return e.concat(t.notAdded)},[]),r=e.filter(function(e){return e.errors}).reduce(function(e,t){return e.concat(t.errors)},[]),n={notAdded:t};return 0<r.length&&(n.errors=r),n}function P(n){var e=n.id,t=n.users,o=m(n)+"/community/groups/"+e+"/removeUsers",r=b(t,25).map(function(e){return t=e,r=c(c({},n),{users:t,params:{users:t}}),s.request(o,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(r).then(function(e){function t(r){return e.filter(function(e){return e[r]}).reduce(function(e,t){return e.concat(t[r])},[])}var r=t("errors"),n={notRemoved:t("notRemoved")};return r.length?c(c({},n),{errors:r}):n})}function C(e){var t=e.every(function(e){return e.success}),r=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),n={success:t};return 0<r.length&&(n.errors=r),n}function S(e){var t=m(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,s.request(t,r)}function M(e){var t=e.every(function(e){return e.success}),r=e.reduce(function(e,t){return e.concat(t.errors||[])},[]),n={success:t};return 0<r.length&&(n.errors=r),n}function R(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=m(e)+"/community/users/"+encodeURIComponent(t),n=c(c({},e),n)),s.request(r,n)}function E(e,t){return t.params=c({org:!1,everyone:!1},t.params),"private"===t.access&&(t.params.groups=" "),"org"===t.access&&(t.params.org=!0),"public"===t.access&&(t.params.account=!0,t.params.everyone=!0),s.request(e,t)}function x(t){return w({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 N(e){var t=e.authentication.username,r=e.owner||t,n=m(e)+"/content/items/"+e.id+"/share";return r===t&&(n=m(e)+"/content/users/"+r+"/items/"+e.id+"/share"),e.params={groups:e.groupId,confirmItemControl:e.confirmItemControl},s.request(n,e)}function O(e,t,r,n,o){var i,u,a,s,c=t.groups||[],m=c.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(!m&&511<c.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 s=m?r&&"member"===m.userMembership.memberType?(a=S({id:o.groupId,users:[t.username],newMemberType:"admin",authentication:o.authentication}).then(function(e){var t=e.results.reduce(function(e,t){return t.success||e.push(t.username),e},[]);return Promise.resolve({notAdded:t})}).catch(function(){return{notAdded:[t.username]}}),function(e){return S({id:o.groupId,users:[t.username],newMemberType:"member",authentication:o.authentication}).then(function(){return e}).catch(function(){return e})}):(a=Promise.resolve({notAdded:[]}),function(e){return Promise.resolve(e)}):(u=r?"admins":"users",a=T(((i={id:o.groupId})[u]=[t.username],i.authentication=o.authentication,i)).then(function(e){if(e.errors&&e.errors.length)throw e.errors[0];return e}).catch(function(){return{notAdded:[t.username]}}),function(e){return P({id:o.groupId,users:[t.username],authentication:o.authentication}).then(function(){return e})}),{promise:a.then(function(e){if(e.notAdded.length)throw new Error(n);return e}),revert:s}}function j(e,t){var r=e||"self",n=m(t)+"/portals/"+r,o=c({httpMethod:"GET"},t);return s.request(n,o)}e.SearchQueryBuilder=y,e.acceptInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId+"/accept",n=c({},e);return s.request(r,n)},e.addGroupUsers=T,e.addItemData=function(e){var t=c({item:{id:e.id,data:e.data}},e);return delete t.id,delete t.data,r(t)},e.addItemPart=function(n){var o=n.partNum;return!Number.isInteger(o)||o<1||1e4<o?Promise.reject(new Error("The part number must be an integer between 1 to 10000, inclusive.")):p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.id+"/addPart?partNum="+o,r=s.appendCustomParams(n,["file"],{params:c({},n.params)});return s.request(t,r)})},e.addItemRelationship=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/addRelationship",r=s.appendCustomParams(n,["originItemId","destinationItemId","relationshipType"],{params:c({},n.params)});return s.request(t,r)})},e.addItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/addResources";return r.params=c({file:r.resource,fileName:r.name,resourcesPrefix:r.prefix,text:r.content,access:r.private?"private":"inherit"},r.params),s.request(t,r)})},e.cancelItemUpload=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/cancel";return s.request(t,r)})},e.commitItemUpload=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.id+"/commit",r=s.appendCustomParams(n,[],{params:c(c({},n.params),i(n.item))});return s.request(t,r)})},e.createFolder=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/createFolder";return r.params=c({title:r.title},r.params),s.request(t,r)})},e.createGroup=function(e){var t=m(e)+"/community/createGroup";return e.params=c(c({},e.params),e.group),s.request(t,e)},e.createGroupNotification=function(e){var t=m(e)+"/community/groups/"+e.id+"/createNotification",r=c({params:c({subject:e.subject,message:e.message,users:e.users,notificationChannelType:e.notificationChannelType||"email",clientId:e.clientId,silentNotification:e.silentNotification,notifyAll:!e.users||0===e.users.length},e.params)},e);return s.request(t,r)},e.createItem=function(e){return t(c({folderId:null},e))},e.createItemInFolder=t,e.createOrgNotification=function(e){var o,n=m(e)+"/portals/self/createNotification",t=b((o=e).users,o.batchSize||25).map(function(e){return t=e,r=o,(n=Object.assign({},r)).params=c(c({},n.params),{users:t,subject:r.subject,message:r.message,notificationChannelType:n.notificationChannelType}),n;var t,r,n}).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(t).then(M)},e.declineInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId+"/decline",n=c({},e);return s.request(r,n)},e.determineOwner=p,e.ensureMembership=O,e.exportItem=function(t){var r=t.authentication,n=t.id,o=t.title,i=t.exportFormat,u=t.exportParameters;return p(t).then(function(e){return m(t)+"/content/users/"+e+"/export"}).then(function(e){return s.request(e,{httpMethod:"POST",authentication:r,params:{itemId:n,title:o,exportFormat:i,exportParameters:u}})})},e.getGroup=h,e.getGroupCategorySchema=function(e,t){var r=m(t)+"/community/groups/"+e+"/categorySchema",n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getGroupContent=function(e,t){var r=m(t)+"/content/groups/"+e,n=c(c({httpMethod:"GET"},{params:{start:1,num:100}}),t);return t&&t.paging&&(n.params=c({},t.paging)),s.request(r,n)},e.getGroupUsers=function(e,t){var r=m(t)+"/community/groups/"+e+"/users",n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getItem=function(e,t){var r=d(e,t),n=c({httpMethod:"GET"},t);return s.request(r,n)},e.getItemBaseUrl=d,e.getItemData=function(e,t){var r=d(e,t)+"/data",n=c({httpMethod:"GET",params:{}},t);return n.file&&(n.params.f=null),s.request(r,n).catch(function(e){if(!RegExp(/The string did not match the expected pattern|(Unexpected end of (JSON input|data at line 1 column 1))/i).test(e.message))throw e})},e.getItemGroups=function(e,t){var r=d(e,t)+"/groups";return s.request(r,t)},e.getItemInfo=o,e.getItemMetadata=function(e,t){return o(e,c(c({},t),{fileName:"metadata/metadata.xml"}))},e.getItemParts=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/parts";return s.request(t,r)})},e.getItemResource=function(e,t){var r=t.readAs||"blob";return u(e,"/resources/"+t.fileName,r,t)},e.getItemResources=function(e,t){var r=d(e,t)+"/resources",n=c({},t);return n.params=c({num:1e3},n.params),s.request(r,n)},e.getItemStatus=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.id+"/status",r=s.appendCustomParams(n,["jobId","jobType"],{params:c({},n.params)});return s.request(t,r)})},e.getPortal=j,e.getPortalSettings=function(e,t){var r=e||"self",n=m(t)+"/portals/"+r+"/settings",o=c({httpMethod:"GET"},t);return s.request(n,o)},e.getPortalUrl=m,e.getRelatedItems=function(e){var t=d(e.id,e)+"/relatedItems",r=c({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,s.request(t,r)},e.getSelf=function(e){return j(null,e)},e.getSharingUrl=f,e.getUser=R,e.getUserContent=function(t){var e=t.folderId,r=t.start,n=void 0===r?1:r,o=t.num,i=void 0===o?10:o,u=t.authentication,a=e?"/"+e:"";return p(t).then(function(e){return m(t)+"/content/users/"+e+a}).then(function(e){return s.request(e,{httpMethod:"GET",authentication:u,params:{start:n,num:i}})})},e.getUserInvitation=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/invitations/"+e.invitationId,n={httpMethod:"GET"},n=c(c({},e),n);return s.request(r,n)},e.getUserInvitations=function(e){var t={httpMethod:"GET"},r=encodeURIComponent(e.authentication.username),n=m(e)+"/community/users/"+r+"/invitations",t=c(c({},e),t);return s.request(n,t)},e.getUserMembership=v,e.getUserNotifications=function(e){var t={httpMethod:"GET"},r=encodeURIComponent(e.authentication.username),n=m(e)+"/community/users/"+r+"/notifications",t=c(c({},e),t);return s.request(n,t)},e.getUserTags=function(e){var t=e.username||e.authentication.username,r=m(e)+"/community/users/"+encodeURIComponent(t)+"/tags";return s.request(r,e)},e.getUserUrl=function(e){return m(e)+"/community/users/"+encodeURIComponent(e.username)},e.inviteGroupUsers=function(e){var o,t=e.id,n=m(e)+"/community/groups/"+t+"/invite",r=b((o=e).users,25).map(function(e){return t=e,r=o,(n=Object.assign({},r)).params=c(c({},n.params),{users:t,role:n.role,expiration:n.expiration}),n;var t,r,n}).map(function(e){return t=n,r=e,s.request(t,r).catch(function(e){return{errors:[e]}});var t,r});return Promise.all(r).then(C)},e.isItemOwner=l,e.isItemSharedWithGroup=x,e.isOrgAdmin=g,e.joinGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/join";return s.request(t,e)},e.leaveGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/leave";return s.request(t,e)},e.moveItem=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/items/"+n.itemId+"/move",r=(r=n.folderId)||"/";return n.params=c({folder:r},n.params),s.request(t,n)})},e.protectGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/protect";return s.request(t,e)},e.protectItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/protect";return s.request(t,r)})},e.reassignItem=function(n){return g(n).then(function(e){if(!e)throw Error("Item "+n.id+" can not be reassigned because current user is not an organization administrator.");var t=m(n)+"/content/users/"+n.currentOwner+"/items/"+n.id+"/reassign",r={params:{targetUsername:n.targetUsername,targetFolderName:n.targetFolderName},authentication:n.authentication};return s.request(t,r)})},e.removeFolder=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+encodeURIComponent(e)+"/"+r.folderId+"/delete";return s.request(t,r)})},e.removeGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/delete",r=c({},e);return s.request(t,r)},e.removeGroupUsers=P,e.removeItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/delete";return s.request(t,r)})},e.removeItemRelationship=function(n){return p(n).then(function(e){var t=m(n)+"/content/users/"+e+"/deleteRelationship",r=s.appendCustomParams(n,["originItemId","destinationItemId","relationshipType"],{params:c({},n.params)});return s.request(t,r)})},e.removeItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/removeResources";return r.params=c(c({},r.params),{resource:r.resource}),s.request(t,r)})},e.removeNotification=function(e){var t=encodeURIComponent(e.authentication.username),r=m(e)+"/community/users/"+t+"/notifications/"+e.id+"/delete";return s.request(r,e)},e.scrubControlChars=a,e.searchGroupContent=function(e){return q(e,"groupContent")},e.searchGroupUsers=function(e,t){var r=m(t)+"/community/groups/"+e+"/userlist",n=s.appendCustomParams(t||{},["name","num","start","sortField","sortOrder","joined","memberType"],{httpMethod:"GET"});return s.request(r,n)},e.searchGroups=function(e){return q(e,"group")},e.searchItems=w,e.searchUsers=function(e){return q(e,"user")},e.serializeItem=i,e.setItemAccess=function(t){var r=f(t);return l(t)?E(r,t):g(t).then(function(e){if(e)return E(r,t);throw Error("This item can not be shared by "+t.authentication.username+". They are neither the item owner nor an organization admin.")})},e.shareItemWithGroup=function(i){return x(i).then(function(e){if(e)return{itemId:i.id,shortcut:!0,notSharedWith:[]};var t=i.authentication.username,r=i.owner,o=i.confirmItemControl,n=r||t;return n!==t?Promise.all([R({username:t,authentication:i.authentication}),R({username:n,authentication:i.authentication}),v(i)]).then(function(e){var t=e[0],r=e[1],n=e[2];return function(e,t,r,n,o,i){var u=[];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.");u.push(O(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),O(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)u.push(O(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 u}(t,!!o,n,"org_admin"===t.role&&!t.roleId,r,i)}).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 N(i)}).then(function(e){return r(e)})}):N(i)}).then(function(e){if(e.notSharedWith.length)throw Error("Item "+i.id+" could not be shared to group "+i.groupId+".");return e})},e.unprotectGroup=function(e){var t=m(e)+"/community/groups/"+e.id+"/unprotect";return s.request(t,e)},e.unprotectItem=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/unprotect";return s.request(t,r)})},e.unshareItemWithGroup=function(a){return x(a).then(function(e){if(!e)return Promise.resolve({itemId:a.id,shortcut:!0,notUnsharedFrom:[]});var i=a.authentication.username,u=a.owner;return Promise.all([v(a),R({username:i,authentication:a.authentication})]).then(function(e){var t=e[0],r=e[1],n=(u||i)===i,o="org_admin"===r.role&&!r.roleId;if(!n&&!o&&["admin","owner"].indexOf(t)<0)throw Error("This item can not be unshared from group "+a.groupId+" by "+i+" 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=m(e)+"/content/items/"+e.id+"/unshare";r===t&&(n=m(e)+"/content/users/"+r+"/items/"+e.id+"/unshare");return e.params={groups:e.groupId},s.request(n,e)}(a)}).then(function(e){if(e.notUnsharedFrom.length)throw Error("Item "+a.id+" could not be unshared to group "+a.groupId);return e})})},e.updateGroup=function(e){var t=m(e)+"/community/groups/"+e.group.id+"/update";return e.params=c(c({},e.params),e.group),s.request(t,e)},e.updateItem=r,e.updateItemInfo=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/updateinfo";return r.params=c({folderName:r.folderName,file:r.file},r.params),s.request(t,r)})},e.updateItemResource=function(r){return p(r).then(function(e){var t=m(r)+"/content/users/"+e+"/items/"+r.id+"/updateResources";return r.params=c({file:r.resource,fileName:r.name,text:r.content},r.params),void 0!==r.private&&(r.params.access=r.private?"private":"inherit"),s.request(t,r)})},e.updateUser=function(e){var t=e.user.username||e.authentication.username,r=m(e)+"/community/users/"+encodeURIComponent(t)+"/update";return e.params=c(c({},e.user),e.params),delete e.user,s.request(r,e)},e.updateUserMemberships=S,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
//# sourceMappingURL=portal.umd.min.js.map |
{ | ||
"name": "@esri/arcgis-rest-portal", | ||
"version": "2.19.0", | ||
"version": "2.19.1", | ||
"description": "ArcGIS Online and Enterprise content and user helpers for @esri/arcgis-rest-request", | ||
@@ -16,8 +16,8 @@ "main": "dist/node/index.js", | ||
"dependencies": { | ||
"@esri/arcgis-rest-types": "^2.19.0", | ||
"@esri/arcgis-rest-types": "^2.19.1", | ||
"tslib": "^1.13.0" | ||
}, | ||
"devDependencies": { | ||
"@esri/arcgis-rest-auth": "^2.19.0", | ||
"@esri/arcgis-rest-request": "^2.19.0" | ||
"@esri/arcgis-rest-auth": "^2.19.1", | ||
"@esri/arcgis-rest-request": "^2.19.1" | ||
}, | ||
@@ -24,0 +24,0 @@ "peerDependencies": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
940258
0.25%11136
0.08%