@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
1 lines • 2.54 kB
JavaScript
;(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5804],{15804(e,t,s){s.d(t,{addOrUpdateResources:()=>c,bg:()=>f,cL:()=>p,fetchResources:()=>n,removeAllResources:()=>u,removeResource:()=>l});var r=s(11254),o=s(49186),a=s(84952);async function n(e,t={},s){await e.load(s);const r=(0,a.fj)(e.itemUrl,"resources"),{start:o=1,num:n=10,sortOrder:c="asc",sortField:l="resource"}=t,u={query:{start:o,num:n,sortOrder:c,sortField:l,token:e.apiKey},signal:s?.signal},i=await e.portal.request(r,u);return{total:i.total,nextStart:i.nextStart,resources:i.resources.map(({created:t,size:s,resource:r})=>({created:new Date(t),size:s,resource:e.resourceFromPath(r)}))}}async function c(e,t,s,r){const n=new Map;for(const{resource:e,content:r,compress:a,access:c}of t){if(!e.hasPath())throw new o.A(`portal-item-resource-${s}:invalid-path`,"Resource does not have a valid path");const[t,l]=i(e.path),u=`${t}/${a??""}/${c??""}`;n.has(u)||n.set(u,{prefix:t,compress:a,access:c,files:[]}),n.get(u).files.push({fileName:l,content:r})}await e.load(r);const c=(0,a.fj)(e.userItemUrl,"add"===s?"addResources":"updateResources");for(const{prefix:t,compress:s,access:o,files:a}of n.values()){const n=25;for(let l=0;l<a.length;l+=n){const u=a.slice(l,l+n),i=new FormData;t&&"."!==t&&i.append("resourcesPrefix",t),s&&i.append("compress","true"),o&&i.append("access",o);let p=0;for(const{fileName:e,content:t}of u)i.append("file"+ ++p,t,e);i.append("f","json"),await e.portal.request(c,{method:"post",body:i,signal:r?.signal})}}}async function l(e,t,s){if(!t.hasPath())throw new o.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(s);const r=(0,a.fj)(e.userItemUrl,"removeResources");await e.portal.request(r,{method:"post",query:{resource:t.path},signal:s?.signal}),t.portalItem=null}async function u(e,t){await e.load(t);const s=(0,a.fj)(e.userItemUrl,"removeResources");return e.portal.request(s,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function i(e){const t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function p(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,r.A)(e.url,{responseType:"blob"})).data}function f(e,t){if(!e.hasPath())return null;const[s,,r]=function(e){const[t,s]=function(e){const t=(0,a.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[r,o]=i(t);return[r,o,s]}(e.path);return e.portalItem.resourceFromPath((0,a.fj)(s,t+r))}}}]);