@vertigis/workflow 5.49.0 → 5.50.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/Collections.d.ts +27 -27
- package/Collections.js +1 -1
- package/EnumUtils.d.ts +5 -5
- package/EnumUtils.js +1 -1
- package/Errors.d.ts +27 -27
- package/Hooks.d.ts +2 -2
- package/IActivityHandler.d.ts +14 -14
- package/ProgramInspectorFacility.d.ts +1 -1
- package/ProgramInspectorFacility.js +1 -1
- package/Task.d.ts +3 -3
- package/Task.js +1 -1
- package/TemplateUtils.d.ts +2 -2
- package/Validation.d.ts +10 -1
- package/Validation.js +1 -1
- package/activities/app/GetApplicationData.d.ts +1 -1
- package/activities/app/GetApplicationData.js +1 -1
- package/activities/app/RemoveApplicationData.d.ts +1 -1
- package/activities/app/RemoveApplicationData.js +1 -1
- package/activities/app/SetApplicationData.d.ts +1 -1
- package/activities/app/SetApplicationData.js +1 -1
- package/activities/arcgis/AddFeatures.d.ts +7 -4
- package/activities/arcgis/AddFeatures.js +1 -1
- package/activities/arcgis/AreaEngineTask.d.ts +1 -1
- package/activities/arcgis/AreaEngineTask.js +1 -1
- package/activities/arcgis/BufferEngineTask.d.ts +1 -1
- package/activities/arcgis/BufferEngineTask.js +1 -1
- package/activities/arcgis/CastGeometry.d.ts +4 -4
- package/activities/arcgis/CompareGeometries.d.ts +1 -1
- package/activities/arcgis/CompareGeometries.js +1 -1
- package/activities/arcgis/DeleteFeatures.d.ts +7 -3
- package/activities/arcgis/DeleteFeatures.js +1 -1
- package/activities/arcgis/DifferenceEngineTask.d.ts +1 -1
- package/activities/arcgis/DifferenceEngineTask.js +1 -1
- package/activities/arcgis/FlipEngineTask.d.ts +1 -1
- package/activities/arcgis/FlipEngineTask.js +1 -1
- package/activities/arcgis/GenerateArcGisToken.d.ts +2 -2
- package/activities/arcgis/GeoprocessingAsync.d.ts +2 -2
- package/activities/arcgis/GetAttributeValue.d.ts +1 -0
- package/activities/arcgis/GetAttributeValues.d.ts +1 -0
- package/activities/arcgis/GetCurrentPosition.d.ts +28 -28
- package/activities/arcgis/GetFeatureGeometries.d.ts +2 -2
- package/activities/arcgis/GetFeatureSetExtent.d.ts +2 -2
- package/activities/arcgis/GetFormElementItemsFromFeatures.d.ts +2 -2
- package/activities/arcgis/GetFormElementItemsFromFeatures.js +1 -1
- package/activities/arcgis/GetGeometryExtent.d.ts +2 -2
- package/activities/arcgis/LengthEngineTask.d.ts +1 -1
- package/activities/arcgis/LengthEngineTask.js +1 -1
- package/activities/arcgis/MapProvider.d.ts +92 -92
- package/activities/arcgis/MapProvider.js +1 -1
- package/activities/arcgis/NearestCoordinateEngineTask.d.ts +6 -6
- package/activities/arcgis/NearestVertexEngineTask.d.ts +6 -6
- package/activities/arcgis/NearestVerticesEngineTask.d.ts +6 -6
- package/activities/arcgis/ProjectServiceTask.js +1 -1
- package/activities/arcgis/ResetLayerDefinitionExpression.d.ts +2 -2
- package/activities/arcgis/RunPrint.d.ts +1 -1
- package/activities/arcgis/RunPrint.js +1 -1
- package/activities/arcgis/RunReport.js +1 -1
- package/activities/arcgis/RunWorkflow.d.ts +4 -4
- package/activities/arcgis/RunWorkflow.js +1 -1
- package/activities/arcgis/SetImageryLayerOptions.d.ts +2 -2
- package/activities/arcgis/SetLayerDefinitionExpression.d.ts +2 -2
- package/activities/arcgis/SetLayerProperty.d.ts +2 -2
- package/activities/arcgis/SetLayerVisibility.d.ts +2 -2
- package/activities/arcgis/SetViewExtent.d.ts +4 -4
- package/activities/arcgis/SetViewpoint.d.ts +2 -2
- package/activities/arcgis/TypeChecking.d.ts +3 -3
- package/activities/arcgis/UpdateFeatures.d.ts +6 -3
- package/activities/arcgis/UpdateFeatures.js +1 -1
- package/activities/arcgis/libs/arcGisRestApi.d.ts +4 -4
- package/activities/arcgis/libs/shared.d.ts +9 -0
- package/activities/arcgis/libs/shared.js +1 -0
- package/activities/arcgis/printing.d.ts +14 -14
- package/activities/arcgis/runUtils.d.ts +2 -2
- package/activities/arcgis/runUtils.js +1 -1
- package/activities/arcgis/shared.d.ts +9 -2
- package/activities/arcgis/shared.js +1 -1
- package/activities/core/CalculateDate.d.ts +1 -1
- package/activities/core/CalculateDate.js +1 -1
- package/activities/core/ChannelProvider.d.ts +42 -42
- package/activities/core/ChannelProvider.js +1 -1
- package/activities/core/ForEach.d.ts +4 -4
- package/activities/core/FormatDate.d.ts +21 -21
- package/activities/core/FormatDate.js +1 -1
- package/activities/core/GetFirstItem.d.ts +1 -0
- package/activities/core/GetItemAtIndex.d.ts +1 -0
- package/activities/core/GetLastItem.d.ts +1 -0
- package/activities/core/GetWorkflowInputs.d.ts +6 -2
- package/activities/core/Log.d.ts +1 -1
- package/activities/core/Log.js +1 -1
- package/activities/core/Loop.d.ts +2 -2
- package/activities/core/ParseJson.d.ts +1 -0
- package/activities/core/WebRequest.d.ts +2 -2
- package/activities/csv/ParseCsv.d.ts +1 -0
- package/activities/essentials/GetEssentialsSite.d.ts +2 -2
- package/activities/essentials/RunEssentialsWorkflow.d.ts +2 -2
- package/activities/essentials/RunEssentialsWorkflow.js +1 -1
- package/activities/forms/DisplayForm.d.ts +6 -6
- package/activities/forms/DisplayForm.js +1 -1
- package/activities/forms/FormActor.d.ts +22 -22
- package/activities/forms/FormRenderer.d.ts +2 -2
- package/activities/forms/FormRenderer.js +1 -1
- package/activities/forms/GetFormElementItemsFromCollection.d.ts +7 -7
- package/activities/forms/GetFormElementItemsFromCollection.js +1 -1
- package/activities/math/Max.d.ts +1 -1
- package/activities/math/Max.js +1 -1
- package/activities/math/Min.d.ts +1 -1
- package/activities/math/Min.js +1 -1
- package/activities/server/RunApplication.d.ts +2 -2
- package/activities/server/RunPython.d.ts +4 -4
- package/activities/ui/DialogContent.d.ts +6 -6
- package/activities/ui/DialogProvider.d.ts +5 -5
- package/activities/ui/DialogProvider.js +1 -1
- package/definition/ActivityInput.d.ts +6 -6
- package/definition/ProgramInspector.d.ts +118 -118
- package/definition/ProgramInspector.js +1 -1
- package/definition/Reference.d.ts +2 -2
- package/definition/Resource.d.ts +15 -15
- package/definition/Transition.d.ts +4 -4
- package/diagnostics/ConsoleDebugLogger.d.ts +2 -2
- package/diagnostics/ConsoleDebugLogger.js +1 -1
- package/execution/ActivityContext.d.ts +35 -35
- package/execution/ActivityContext.js +1 -1
- package/execution/ActivityContextProxy.d.ts +7 -7
- package/execution/ActivityContextProxy.js +1 -1
- package/execution/AmbientState.d.ts +29 -29
- package/execution/AmbientState.js +1 -1
- package/execution/AmbientStateProxy.d.ts +10 -10
- package/execution/AmbientStateProxy.js +1 -1
- package/execution/AsyncContext.d.ts +1 -1
- package/execution/AsyncContext.js +1 -1
- package/execution/Engine.d.ts +27 -28
- package/execution/Engine.js +1 -1
- package/execution/IDebugSession.d.ts +10 -10
- package/execution/MonikerFrame.d.ts +2 -2
- package/execution/MonikerFrame.js +1 -1
- package/execution/Proxy.d.ts +1 -1
- package/execution/Proxy.js +1 -1
- package/execution/StepContext.d.ts +1 -1
- package/execution/StepContext.js +1 -1
- package/execution/TransitionContext.d.ts +1 -1
- package/execution/TransitionContext.js +1 -1
- package/forms/ExclusiveTimer.d.ts +2 -2
- package/forms/ExclusiveTimer.js +1 -1
- package/forms/FormComponent.d.ts +7 -7
- package/forms/FormComponent.js +1 -1
- package/forms/FormDefinition.d.ts +42 -42
- package/forms/FormHost.d.ts +148 -148
- package/forms/FormHost.js +1 -1
- package/forms/FormPresenterHost.d.ts +42 -42
- package/forms/MutuallyExclusiveSectionGroup.d.ts +6 -6
- package/forms/MutuallyExclusiveSectionGroup.js +1 -1
- package/forms/NumberParser.d.ts +2 -2
- package/forms/branding/WorkflowColor.d.ts +5 -5
- package/forms/branding/WorkflowColor.js +1 -1
- package/forms/components/Button.js +1 -1
- package/forms/components/DateTimePicker.js +1 -1
- package/forms/components/FormLabelNumberField.d.ts +4 -4
- package/forms/components/GeometryPickerListItem.d.ts +4 -4
- package/forms/components/SignatureDialog.d.ts +2 -2
- package/forms/components/SketchDialog.d.ts +5 -5
- package/forms/components/common.js +1 -1
- package/forms/dateUtilities.d.ts +2 -2
- package/forms/elements/types.d.ts +2 -2
- package/forms/index.d.ts +2 -2
- package/forms/numberFormatter.d.ts +8 -8
- package/forms/numberUtilities.d.ts +1 -1
- package/forms/utils.d.ts +6 -12
- package/libs/version.d.ts +1 -1
- package/libs/version.js +1 -1
- package/package.json +1 -1
- package/ui/UIService.d.ts +2 -2
- package/ui/UIService.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import PopupTemplate from"@arcgis/core/PopupTemplate";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import GraphicsLayer from"@arcgis/core/layers/GraphicsLayer";import GroupLayer from"@arcgis/core/layers/GroupLayer";import SubtypeGroupLayer from"@arcgis/core/layers/SubtypeGroupLayer";import Sublayer from"@arcgis/core/layers/support/Sublayer";import*as TypeChecking from"./TypeChecking.js";import{extentOf}from"./tools.js";export function layerCanChangeDefinitionExpression(e){return["csv","feature","geojson","imagery","scene","stream","subtype-group","wfs"].includes(e.type)}export function sublayerCanChangeDefinitionExpression(e){return"building-component"===e.layer.type||"esri.layers.support.Sublayer"===e.declaredClass&&"tile"!==e.layer.type}export class MapProvider{
|
|
1
|
+
import PopupTemplate from"@arcgis/core/PopupTemplate";import SpatialReference from"@arcgis/core/geometry/SpatialReference";import GraphicsLayer from"@arcgis/core/layers/GraphicsLayer";import GroupLayer from"@arcgis/core/layers/GroupLayer";import SubtypeGroupLayer from"@arcgis/core/layers/SubtypeGroupLayer";import Sublayer from"@arcgis/core/layers/support/Sublayer";import*as TypeChecking from"./TypeChecking.js";import{extentOf}from"./tools.js";export function layerCanChangeDefinitionExpression(e){return["csv","feature","geojson","imagery","scene","stream","subtype-group","wfs"].includes(e.type)}export function sublayerCanChangeDefinitionExpression(e){return"building-component"===e.layer.type||"esri.layers.support.Sublayer"===e.declaredClass&&"tile"!==e.layer.type}export class MapProvider{constructor(e,i,t){this.resetDefinitionExpressions=e=>{const i=this.getInitialDefinitionExpressions(e);for(const e of Object.entries(i)){const[i,t]=e,[r,n]=i.split(";"),o=this.findLayer(r);if(o?.layer)if(n){const e=o.findLayer(n,o.layer);e?.sublayer&&"definitionExpression"in e.sublayer&&(e.sublayer.definitionExpression=t)}else"definitionExpression"in o.layer&&(o.layer.definitionExpression=t)}},null!=i&&(this.map=i.map,this.view=i),this.mapName=t,this.type=e}static create(){return new this(this)}static getOutSR(e){return"number"==typeof e?new SpatialReference({wkid:e}):"string"==typeof e?new SpatialReference({wkt:e}):e}static register(e){e.factories.push(e=>this.type===e?this:void 0)}static setPopup(e,i){if(!i||!e)return;const t=new PopupTemplate(e);for(const e of i)e.popupTemplate=t}addFeatures(e,i){const t=this.map||void 0;if(void 0===t)return[];let r=this.layer||void 0;return void 0===r&&(r=new GraphicsLayer({id:i.toString()}),t.add(r)),TypeChecking.isGraphicsLayer(r)&&r.addMany(e),TypeChecking.isGraphicsLayer(r)?r.graphics.toArray():[]}clearFeatures(){const e=this.layer;return!(null==e||!TypeChecking.isGraphicsLayer(e))&&(e.removeAll(),!0)}clone(){const e=new this.type(this.type,this.view||this.map,this.mapName);return e.layer=this.layer,e.sublayer=this.sublayer,e}findLayer(e,i){if(null!=i){const t=new Number(e).valueOf();let r;if(i instanceof SubtypeGroupLayer?r=i.findSublayerForSubtypeCode(t):TypeChecking.isLayerWithSublayers(i)&&(r=i.findSublayerById(t)),r){const e=this.clone();return e.layer=i,e.sublayer=r,e}return}const t=this.map;if(null==t)return;const r=e.toString();let n=t.findLayerById(r)||void 0;if(void 0===n&&(n=t.allLayers.find(e=>e.title===r)||void 0),void 0!==n){const e=this.clone();return e.layer=n,e.sublayer=void 0,e}}findTable(e,i){if(!e)return;const t=this.map;if(!t)return;const r=e.toLowerCase(),n=t.allTables.find(e=>void 0!==e.id&&null!==e.id&&e.id.toLowerCase()===r);if(n){const e=this.clone();return e.layer=n,e.sublayer=void 0,e}}getCenter(){const e=this.view;if(null!=e){const i=e.center;if(null!=i)return i}const i=this.map||void 0;if(void 0!==i){const e=i.extent;if(null!=e)return e.center}}getDefinitionExpression(){const{layer:e,sublayer:i}=this;if(e){if(i){if("definitionExpression"in i){const e=i.definitionExpression;return"string"==typeof e?e:void 0}return}if("definitionExpression"in e){const i=e.definitionExpression;return"string"==typeof i?i:void 0}}}getExtent(){const e=this.view;if(null!=e){const i=e.extent;if(null!=i)return i.clone()}const i=this.map;if(null!=i){const e=i.extent;if(null!=e)return e.clone()}}getFeatures(){const e=this.layer||void 0;if(void 0!==e&&TypeChecking.isGraphicsLayer(e))return e.graphics.toArray()}getInitialDefinitionExpression(e,i){return""}getInitialDefinitionExpressions(e){return{}}getProperty(e){const i=this.layer;if(null!=i)return i[e]}getScale(){const e=this.view;if(null!=e){const i=e.scale;if("number"==typeof i)return i}}getSpatialReference(){const e=this.view;if(null!=e)return e.spatialReference}getViewpoint(){const e=this.view;if(null!=e)return e.viewpoint}getVisible(){const e=this.layer||void 0;if(void 0!==e){const i=this.sublayer||void 0;return void 0!==i?i.visible:e.visible}return!1}load(){return this.loadLayer()||this.loadView()||this.loadMap()||Promise.resolve()}redraw(){const e=this.layer||void 0;void 0!==e&&TypeChecking.isLayerWithRedraw(e)&&e.redraw()}removeFeatures(e){const i=this.layer;if(null!=i&&TypeChecking.isGraphicsLayer(i))return i.removeMany(e),!0}removeLayer(){const e=this.map||void 0;if(void 0===e)return!1;const i=this.layer||void 0;if(void 0===i)return!1;let t=e.remove(i);return!!t||(i.parent instanceof GroupLayer&&(t=i.parent.remove(i)),!!t)}resetDefinitionExpression(){const{layer:e,sublayer:i}=this;if(e){if(i)return i instanceof Sublayer&&sublayerCanChangeDefinitionExpression(i)&&"definitionExpression"in i?(i.definitionExpression=this.getInitialDefinitionExpression(e.id,i.id),i.definitionExpression):void 0;if(layerCanChangeDefinitionExpression(e)&&"definitionExpression"in e)return e.definitionExpression=this.getInitialDefinitionExpression(e.id),e.definitionExpression}}setDefinitionExpression(e){const{layer:i,sublayer:t}=this;if(i){if(t)return t instanceof Sublayer&&sublayerCanChangeDefinitionExpression(t)&&"definitionExpression"in t?(t.definitionExpression=e,t.definitionExpression===e):void 0;if(layerCanChangeDefinitionExpression(i)&&"definitionExpression"in i)return i.definitionExpression=e,i.definitionExpression===e}}setExtent(e,i){let t;const r=extentOf(e)||void 0;void 0!==r&&(t=r.center);const n=this.view||void 0;if(void 0!==n){if(void 0!==t&&"number"==typeof i)return n.goTo({center:t,scale:i});if(void 0!==r)return n.goTo(r);if(void 0!==t)return n.goTo(t)}return Promise.resolve()}setInitialDefinitionExpression(e,i,t){}setPopup(e){const i=this.layer;if(!i||!e)return;const t=new PopupTemplate(e);TypeChecking.isLayerWithPopupTemplate(i)&&(i.popupTemplate=t)}setProperty(e,i){const t=this.layer||void 0;return void 0!==t&&(t.set(e,i),this.getProperty(e)===i)}setViewpoint(e,i){let t;const r=extentOf(e)||void 0;void 0!==r&&(t=r.center);const n=this.view;if(null!=n){if(void 0!==t&&null!=i)return n.goTo(i).then(()=>n.goTo(t));if(void 0!==r)return n.goTo(r);if(void 0!==t)return n.goTo(t)}return Promise.resolve()}setVisible(e){const i=this.layer||void 0;if(void 0!==i){const t=this.sublayer||void 0;return void 0!==t?(t.visible=!0===e,t.visible===(!0===e)):(i.visible=!0===e,i.visible===(!0===e))}return!1}showPopup(e){if(!e||!e.length)return;const i=e.filter(e=>e.geometry)[0],t=i?extentOf([i.geometry]):this.map.extent,r=this.view?.popup;r&&r.open({features:e,location:t?.center})}formatSubLayerId(e){return e}loadLayer(){const e=this.layer||void 0;if(void 0!==e){if(e.loaded)return Promise.resolve();const i=e.loadError||void 0;return void 0!==i?Promise.reject(i):e.load().then(()=>{})}}loadMap(){}loadView(){const e=this.view;if(null!=e){if(e.isFulfilled())return Promise.resolve();const i=()=>{};return e.when(i)}}}MapProvider.type="5B3643D6-5FF4-4B30-B439-39C70AD68DE3:MapProvider";
|
|
@@ -6,16 +6,16 @@ export interface NearestCoordinateEngineTaskInputs {
|
|
|
6
6
|
}
|
|
7
7
|
/** Defines outputs to the NearestCoordinate activity. */
|
|
8
8
|
export interface NearestCoordinateEngineTaskOutputs {
|
|
9
|
-
/** @description The result point. */
|
|
10
|
-
point: __esri.Point;
|
|
11
9
|
/** @description The distance to the point. */
|
|
12
10
|
distance: number;
|
|
13
|
-
/** @description Whether the point is on the left or right of the line-segment. */
|
|
14
|
-
side?: "left" | "right" | string;
|
|
15
|
-
/** @description The index of the vertex. */
|
|
16
|
-
index: number;
|
|
17
11
|
/** @description Whether the result is empty. */
|
|
18
12
|
empty: boolean;
|
|
13
|
+
/** @description The index of the vertex. */
|
|
14
|
+
index: number;
|
|
15
|
+
/** @description The result point. */
|
|
16
|
+
point: __esri.Point;
|
|
17
|
+
/** @description Whether the point is on the left or right of the line-segment. */
|
|
18
|
+
side?: "left" | "right" | string;
|
|
19
19
|
}
|
|
20
20
|
export declare class NearestCoordinateEngineTask implements IActivityHandler {
|
|
21
21
|
static readonly action = "gcx:wf:arcgis::NearestCoordinateEngineTask";
|
|
@@ -6,16 +6,16 @@ export interface NearestVertexEngineTaskInputs {
|
|
|
6
6
|
}
|
|
7
7
|
/** Defines outputs to the NearestCoordinateOrVertex activity. */
|
|
8
8
|
export interface NearestVertexEngineTaskOutputs {
|
|
9
|
-
/** @description The result point. */
|
|
10
|
-
point: __esri.Point;
|
|
11
9
|
/** @description The distance to the point. */
|
|
12
10
|
distance: number;
|
|
13
|
-
/** @description Whether the point is on the left or right of the line-segment. */
|
|
14
|
-
side?: "left" | "right" | string;
|
|
15
|
-
/** @description The index of the vertex. */
|
|
16
|
-
index: number;
|
|
17
11
|
/** @description Whether the result is empty. */
|
|
18
12
|
empty: boolean;
|
|
13
|
+
/** @description The index of the vertex. */
|
|
14
|
+
index: number;
|
|
15
|
+
/** @description The result point. */
|
|
16
|
+
point: __esri.Point;
|
|
17
|
+
/** @description Whether the point is on the left or right of the line-segment. */
|
|
18
|
+
side?: "left" | "right" | string;
|
|
19
19
|
}
|
|
20
20
|
export declare class NearestVertexEngineTask implements IActivityHandler {
|
|
21
21
|
static readonly action = "gcx:wf:arcgis::NearestVertexEngineTask";
|
|
@@ -7,16 +7,16 @@ export interface NearestVerticesEngineTaskInputs {
|
|
|
7
7
|
maxVertices?: number;
|
|
8
8
|
}
|
|
9
9
|
export interface NearestVertex {
|
|
10
|
-
/** @description The result point. */
|
|
11
|
-
point?: __esri.Point;
|
|
12
10
|
/** @description The distance to the point. */
|
|
13
11
|
distance?: number;
|
|
14
|
-
/** @description Whether the point is on the left or right of the line-segment. */
|
|
15
|
-
side?: "left" | "right" | string;
|
|
16
|
-
/** @description The index of the vertex. */
|
|
17
|
-
index?: number;
|
|
18
12
|
/** @description Whether the result is empty. */
|
|
19
13
|
empty?: boolean;
|
|
14
|
+
/** @description The index of the vertex. */
|
|
15
|
+
index?: number;
|
|
16
|
+
/** @description The result point. */
|
|
17
|
+
point?: __esri.Point;
|
|
18
|
+
/** @description Whether the point is on the left or right of the line-segment. */
|
|
19
|
+
side?: "left" | "right" | string;
|
|
20
20
|
}
|
|
21
21
|
/** Defines outputs for the NearestVertices activity. */
|
|
22
22
|
export interface NearestVerticesEngineTaskOutputs {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{executeMany as executeManyProject,isLoaded,load}from"@arcgis/core/geometry/operators/projectOperator";import{getTransformations}from"@arcgis/core/geometry/operators/support/geographicTransformationUtils";import{project as serviceProject}from"@arcgis/core/rest/geometryService";import ProjectParameters from"@arcgis/core/rest/support/ProjectParameters";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";async function projectClient(e,r){const t=validation.array("geometry",e.geometry,validation.never),o=setGeographicTransformation(e.transformation),a=r.getOutSR(e.outSpatialReference);let i;if(
|
|
1
|
+
import{__decorate}from"tslib";import{executeMany as executeManyProject,isLoaded as projectOperator_isLoaded,load as projectOperator_load}from"@arcgis/core/geometry/operators/projectOperator";import{getTransformations,isLoaded as geographicTransformationUtils_isLoaded,load as geographicTransformationUtils_load}from"@arcgis/core/geometry/operators/support/geographicTransformationUtils";import{project as serviceProject}from"@arcgis/core/rest/geometryService";import ProjectParameters from"@arcgis/core/rest/support/ProjectParameters";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{MapProvider}from"./MapProvider.js";async function projectClient(e,r){const t=validation.array("geometry",e.geometry,validation.never),o=setGeographicTransformation(e.transformation),a=r.getOutSR(e.outSpatialReference);let i;if(projectOperator_isLoaded()||await projectOperator_load(),o){const r=validation.boolean("reverse",e.reverse,!1);geographicTransformationUtils_isLoaded()||await geographicTransformationUtils_load();const s=getTransformations(t[0].spatialReference,a);for(const e of s)if(e.steps[0].isInverse===r){if(e.steps[0].wkid&&o.wkid&&e.steps[0].wkid===o.wkid){i=e;break}if(e.steps[0].wkt&&o.wkt&&e.steps[0].wkt===o.wkt){i=e;break}}}return executeManyProject(t,a,{geographicTransformation:i})}async function projectServer(e,r,t,o){const a=validation.array("geometry",r.geometry,validation.never),i=setGeographicTransformation(r.transformation),s=!r.reverse,c=o.getOutSR(r.outSpatialReference),n=new ProjectParameters({geometries:a,transformation:i,transformForward:s,outSpatialReference:c}),p={signal:t.cancellationToken.signal};return serviceProject(e,n,p)}function setGeographicTransformation(e){return"number"==typeof e?{wkid:e}:"string"==typeof e?{wkt:e}:"object"==typeof e?e:null}let ProjectServiceTask=class{async execute(e,r,t){const o=e.url;let a;return a=o?await projectServer(o,e,r,t):await projectClient(e,t),{geometry:a[0],results:a}}};ProjectServiceTask.action="gcx:wf:arcgis::ProjectServiceTask",ProjectServiceTask.suite="gcx:wf:builtin",ProjectServiceTask=__decorate([activate(MapProvider)],ProjectServiceTask);export{ProjectServiceTask};
|
|
@@ -7,10 +7,10 @@ export interface ResetLayerDefinitionExpressionInputs {
|
|
|
7
7
|
}
|
|
8
8
|
/** Defines outputs for the SetLayerDefinitionExpression activity. */
|
|
9
9
|
export interface SetLayerDefinitionExpressionOutputs {
|
|
10
|
-
/** @description The previous layer definition expression. */
|
|
11
|
-
oldExpression?: string;
|
|
12
10
|
/** @description The new (original) layer definition expression. */
|
|
13
11
|
newExpression?: string;
|
|
12
|
+
/** @description The previous layer definition expression. */
|
|
13
|
+
oldExpression?: string;
|
|
14
14
|
}
|
|
15
15
|
export declare class ResetLayerDefinitionExpression implements IActivityHandler {
|
|
16
16
|
static readonly action = "gcx:wf:arcgis::ResetLayerDefinitionExpression";
|
|
@@ -24,8 +24,8 @@ export declare class RunPrint implements IActivityHandler {
|
|
|
24
24
|
static readonly action = "gcx:wf:geocortex::RunPrint";
|
|
25
25
|
static readonly suite = "gcx:wf:builtin";
|
|
26
26
|
execute(inputs: RunPrintInputs, context: IActivityContext, ChannelProviderType: typeof ChannelProvider, MapProviderType: typeof MapProvider): Promise<RunPrintOutputs>;
|
|
27
|
-
getWebmapParameters(mapProvider: MapProvider, mapName: string, inputScale: number | undefined, inputExtent: __esri.Extent | undefined): Promise<JobParameter[]>;
|
|
28
27
|
getWebmap(printType: PrintType, mapProvider: MapProvider, scale?: number): Promise<ExportWebMap>;
|
|
28
|
+
getWebmapParameters(mapProvider: MapProvider, mapName: string, inputScale: number | undefined, inputExtent: __esri.Extent | undefined): Promise<JobParameter[]>;
|
|
29
29
|
getWgs84Extent(extent: __esri.Extent): Promise<__esri.Extent>;
|
|
30
30
|
prepareWebmapParameters(mapName: string, webmap: ExportWebMap, scale: number, extent?: __esri.Extent): JobParameter[];
|
|
31
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var RunPrint_1;import{__decorate}from"tslib";import{submitJob}from"@arcgis/core/rest/geoprocessor";import{ActivityInputError,ActivityNotImplementedError,GenericActivityError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{ENGINE_TASK_ASYNC_POLLING_INTERVAL_MS,ENGINE_TASK_PARAM_ADDITIONAL_SETTINGS,ENGINE_TASK_PARAM_ADDITIONAL_WEB_MAPS,ENGINE_TASK_PARAM_FORMAT,ENGINE_TASK_PARAM_LAYOUT_TEMPLATE,ENGINE_TASK_PARAM_RETURN_ADDITIONAL_LAYOUT_INFO,ENGINE_TASK_PARAM_WEB_MAP,ENGINE_VGS_LAYOUT_REF_PREFEX,MapFrameElementName,getWebMapOverviewPrintScale}from"./printing.js";import{getAutoValueInfo,LayoutFieldTranslations}from"./printingFields.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunPrint=RunPrint_1=class{async execute(t,e,r,o){const n=validation.string("url",t.url,validation.never),i=validation.string("exportFormat",t.exportFormat,"PDF"),a=validation.number("scale",t.scale,void 0),s=validation.number("resolution",t.resolution,96),l=validation.string("resultFileName",t.resultFileName,"Print");if(void 0!==a&&a<=0)throw new ActivityInputError("scale","Scale must be greater than zero.");const
|
|
1
|
+
var RunPrint_1;import{__decorate}from"tslib";import{submitJob}from"@arcgis/core/rest/geoprocessor";import{ActivityInputError,ActivityNotImplementedError,GenericActivityError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{ENGINE_TASK_ASYNC_POLLING_INTERVAL_MS,ENGINE_TASK_PARAM_ADDITIONAL_SETTINGS,ENGINE_TASK_PARAM_ADDITIONAL_WEB_MAPS,ENGINE_TASK_PARAM_FORMAT,ENGINE_TASK_PARAM_LAYOUT_TEMPLATE,ENGINE_TASK_PARAM_RETURN_ADDITIONAL_LAYOUT_INFO,ENGINE_TASK_PARAM_WEB_MAP,ENGINE_VGS_LAYOUT_REF_PREFEX,MapFrameElementName,getWebMapOverviewPrintScale}from"./printing.js";import{getAutoValueInfo,LayoutFieldTranslations}from"./printingFields.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunPrint=RunPrint_1=class{async execute(t,e,r,o){const n=validation.string("url",t.url,validation.never),i=validation.string("exportFormat",t.exportFormat,"PDF"),a=validation.number("scale",t.scale,void 0),s=validation.number("resolution",t.resolution,96),l=validation.string("resultFileName",t.resultFileName,"Print");if(void 0!==a&&a<=0)throw new ActivityInputError("scale","Scale must be greater than zero.");const c=await(async()=>{const t=parsePortalItemUrl(n);if(!t||!t.itemId)throw new GenericActivityError(void 0,`Unable to parse url for print layout or template '${n}.`);let e,r;if(t&&(r=await getAuthenticationToken(t.portalUrl),e=getPortalDataUrl(t,r)),!e)throw new GenericActivityError(void 0,`Unable to get item URL for print layout or template '${n}.`);return{itemUrl:e,portalItemUrlInfo:t,token:r}})(),{itemUrl:p,portalItemUrlInfo:m}=c;let{token:u}=c;const A=o.create(),_=t.extent,E=e.cancellationToken,d=await getPortalItem(p,r,E),g=(d.tags||[]).find(t=>t.startsWith(ENGINE_VGS_LAYOUT_REF_PREFEX)),v=async(t,o)=>{const n=new URL("./Get%20Layout%20Templates%20Info%20Task",t).toString(),i={portal_layout_items:{authentication:o,ids:[g]}},a=await submitJob(n,{[ENGINE_TASK_PARAM_RETURN_ADDITIONAL_LAYOUT_INFO]:!0,[ENGINE_TASK_PARAM_ADDITIONAL_SETTINGS]:JSON.stringify(i)},void 0,{method:"post"});if(a){let t;try{t=await a.waitForJobCompletion({interval:ENGINE_TASK_ASYNC_POLLING_INTERVAL_MS,signal:e.cancellationToken.signal})}catch(t){throw new GenericActivityError(void 0,"Error encountered awaiting completion of a layout info task: "+t.toString())}if(t){const e=await(async t=>{const{jobStatus:e}=t;if("job-succeeded"!==e)throw new GenericActivityError(void 0,`Layout task failed. Job status: ${e}`);const o=r.create(void 0,"arcgis");if(o.request.method="POST",o.request.headers={"Content-Type":"application/json"},o.request.url=`${t.sourceUrl}/jobs/${t.jobId}/results/Output_JSON?f=json`,!await o.send())throw console.error("Unable to get layout info output.",o.response.message),new GenericActivityError(void 0,"Unable to get layout info output.");return o.getResponseData(o.response.payload).value})(t);return e[0]}}},N=async()=>{const e=r.create();E.finally(function(){e.cancel()});const o=getServiceUrl(d.url,"printing");let n;"public"!==d.access&&(u||(u=await getAuthenticationToken(m.portalUrl,!0)),u&&(n=await getServiceToken(o,m.portalUrl,u,e)));const i=[];if(t.parameters)for(const e of Object.keys(t.parameters)){const r=t.parameters[e];if(r){const t=r instanceof Array;i.push({name:e,containsMultipleValues:t,value:t?void 0:r,values:t?r:void 0})}}const c=await getMapControlNames(m,o,n,e,E);if(c?.length){const t=c[0],e=await this.getWebmapParameters(A,t,a,_);if(e?.length)for(const t of e)i.push(t)}const p={template:{itemId:m.itemId,portalUrl:m.portalUrl,title:l},parameters:i,dpi:s},g=(await runJob(o,n,p,e)).response.ticket;return{href:await checkResult(o,n,g,1e3,e,E)}};return g?(async()=>{await A.load();let o=e.ambient.printingServiceUrl;if(!o)throw new GenericActivityError(void 0,"No printing service configured for performing a gen2 print. This must be provided to the Workflow engine by the host application.");o.endsWith("/")||(o+="/"),o.toLowerCase().endsWith("/gpserver/")||(o+="GPServer/");const n=validation.number("rotation",t.rotation);u||(u=await getAuthenticationToken(m.portalUrl,!0));const l={anonymous:!1,portal_url:m.portalUrl,token:u},c=await v(o,l);let p,E,d;if(c){const{layoutOptions:t,webMapFrameElements:e}=c;p=t.customTextElements,E=e?.find(t=>t.name===MapFrameElementName.WEBMAP_MAP_FRAME),d=e?.find(t=>t.name===MapFrameElementName.OVERVIEW)}const N=a??A.getScale(),f=_??A.getExtent(),w=await this.getWebmap("layout",A,N);if(!w)throw new GenericActivityError(void 0,"No map available. Unable to print.");const T=[];if(d){const t=N?getWebMapOverviewPrintScale(N,d,E):void 0;w.mapOptions.scale=t,T.push({name:MapFrameElementName.OVERVIEW,Map_As_JSON:w})}const I=JSON.stringify(T);if(p){const r=p.map(t=>Object.keys(t)[0]),o=[];w.layoutOptions.customTextElements=o;const n=e.ambient.environment.strings;for(const e of r){const r=LayoutFieldTranslations[e];if(r){o.push({[e]:n[r]||r});continue}const i=getAutoValueInfo(e);if(i.isAutoValue&&!i.isClientValue)continue;const a=t.parameters?.[e];if(a){o.push({[e]:a});continue}const s=p.find(t=>Object.keys(t)[0]===e)[e]||"";s.startsWith("<")&&s.endsWith(">")?o.push({[e]:""}):o.push({[e]:s})}}w.exportOptions=w.exportOptions??{},w.exportOptions.dpi=s,f&&(w.mapOptions.extent={xmin:f.xmin,ymin:f.ymin,xmax:f.xmax,ymax:f.ymax,spatialReference:f.spatialReference}),void 0!==n&&(w.mapOptions.rotation=-1*n),w.mapOptions.scale=N;const y=await submitJob(new URL("./VertiGIS%20Print%20Task",o).toString(),{[ENGINE_TASK_PARAM_ADDITIONAL_SETTINGS]:JSON.stringify({authentication:l}),[ENGINE_TASK_PARAM_ADDITIONAL_WEB_MAPS]:I,[ENGINE_TASK_PARAM_FORMAT]:i,[ENGINE_TASK_PARAM_LAYOUT_TEMPLATE]:g,[ENGINE_TASK_PARAM_WEB_MAP]:JSON.stringify(w)},void 0,{method:"post"});let P;try{P=await y.waitForJobCompletion({interval:ENGINE_TASK_ASYNC_POLLING_INTERVAL_MS,signal:e.cancellationToken.signal})}catch(t){throw new GenericActivityError(void 0,"Error encountered awaiting completion of a layout print task: "+t.toString())}return(async t=>{const{jobStatus:e}=t;if("job-succeeded"!==e)throw new GenericActivityError(void 0,`Layout print failed. Job status: ${e}`);const o=r.create(void 0,"arcgis");o.request.method="POST",o.request.headers={"Content-Type":"application/json"},o.request.url=`${y.sourceUrl}/jobs/${y.jobId}/results/Output_File?f=json`;if(!await o.send())throw console.error("Unable to get print output.",o.response.message),new GenericActivityError(void 0,"Unable to get print output.");return{href:o.getResponseData(o.response.payload).value.url}})(P)})():N()}async getWebmap(t,e,r){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}async getWebmapParameters(t,e,r,o){if(await t.load(),!t.map)throw new GenericActivityError(void 0,"No map available. Unable to generate webmap parameters.");const n=r||t.getScale(),i=o||t.getExtent(),a=await this.getWebmap("template",t,n),s=await this.getWgs84Extent(i),l=r||0;return this.prepareWebmapParameters(e,a,l,s)}async getWgs84Extent(t){throw console.warn("getWgs84Extent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}prepareWebmapParameters(t,e,r,o){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunPrint_1.action)}};RunPrint.action="gcx:wf:geocortex::RunPrint",RunPrint.suite="gcx:wf:builtin",RunPrint=RunPrint_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunPrint);export{RunPrint};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var RunReport_1;import{__decorate}from"tslib";import{ActivityNotImplementedError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunReport=RunReport_1=class{async execute(e,t,r
|
|
1
|
+
var RunReport_1;import{__decorate}from"tslib";import{ActivityNotImplementedError}from"../../Errors.js";import{activateTwo}from"../../Hooks.js";import{validation}from"../../Validation.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{MapProvider}from"./MapProvider.js";import{checkResult,getMapControlNames,getServiceToken,runJob,getServiceUrl}from"./runUtils.js";import{getAuthenticationToken,getPortalDataUrl,getPortalItem,parsePortalItemUrl}from"./shared.js";let RunReport=RunReport_1=class{async execute(e,t,a,r){const o=validation.string("url",e.url,validation.never),n=validation.boolean("includeMap",e.includeMap,!1),i=parsePortalItemUrl(o),l=validation.array("webmapParameters",e.webmapParameters,[]),s=validation.string("resultFileName",e.resultFileName,"Report"),p=validation.array("dataSources",e.dataSources),m=validation.string("language",e.language),c=validation.string("format",e.format),u=validation.number("resolution",e.resolution,96);let d,g;if(i&&(g=await getAuthenticationToken(i.portalUrl),d=getPortalDataUrl(i,g)),!i||!i.itemId)throw new Error(`Unable to get item ID for report '${o}.`);if(!d)throw new Error(`Unable to get item URL for report '${o}.`);const v=t.cancellationToken,f=await getPortalItem(d,a,v),b=a.create();v.finally(function(){b.cancel()});const w=getServiceUrl(f.url,"reporting");let R;"public"!==f.access&&(g||(g=await getAuthenticationToken(i.portalUrl,!0)),g&&(R=await getServiceToken(w,i.portalUrl,g,b)));const h=[{name:"FeatureIds",containsMultipleValues:!0,value:void 0,values:e.featureIds||[]}];if(e.parameters)for(const t of Object.keys(e.parameters)){const a=e.parameters[t];if(a){const e=a instanceof Array;h.push({name:t,containsMultipleValues:e,value:e?void 0:a,values:e?a:void 0})}}if(l.length)for(const e of l){const t=this.prepareWebmapParameters(e.mapName,e.webmap,e.scale,e.extent);for(const e of t)h.push(e)}else if(n){const e=await getMapControlNames(i,w,R,b,v);if(e?.length){const a=await this.getWebmapParameters(r,e[0],t.ambient.trivia);if(a?.length)for(const e of a)h.push(e)}}const P={template:{itemId:i.itemId,portalUrl:i.portalUrl,title:s},parameters:h,data:p,dpi:u,culture:m||t.ambient.locale,format:c},y=(await runJob(w,R,P,b)).response.ticket;return{href:await checkResult(w,R,y,1e3,b,v)}}async getWebmap(e,t,a){throw console.warn("getWebmap needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapExtent(e){throw console.warn("getWebmapExtent needs to be overridden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}async getWebmapParameters(e,t,a){const r=e.create();await r.load();const o=await this.getWebmap(r,r.getScale(),a),n=await this.getWebmapExtent(r);return this.prepareWebmapParameters(t,o,0,n)}prepareWebmapParameters(e,t,a,r){throw console.warn("prepareWebmapParameters needs to be overriden by a client implementation."),new ActivityNotImplementedError(RunReport_1.action)}};RunReport.action="gcx:wf:geocortex::RunReport",RunReport.suite="gcx:wf:builtin",RunReport=RunReport_1=__decorate([activateTwo(ChannelProvider,MapProvider)],RunReport);export{RunReport};
|
|
@@ -14,8 +14,8 @@ export declare class RunWorkflow implements IActivityHandler {
|
|
|
14
14
|
static readonly action = "gcx:wf:core::RunWorkflow";
|
|
15
15
|
static readonly suite = "gcx:wf:builtin";
|
|
16
16
|
execute(inputs: RunWorkflowInputs, context: IActivityContext, ChannelProviderType: typeof ChannelProvider): Promise<RunWorkflowOutputs>;
|
|
17
|
-
private
|
|
18
|
-
private
|
|
17
|
+
private checkJobStatus;
|
|
18
|
+
private delay;
|
|
19
19
|
/**
|
|
20
20
|
* Use a WebSocket to retrieve the result of the job from the server.
|
|
21
21
|
* @param serverUrl The url of the instance of Workflow Server that is running the workflow.
|
|
@@ -25,7 +25,7 @@ export declare class RunWorkflow implements IActivityHandler {
|
|
|
25
25
|
*/
|
|
26
26
|
private getResult;
|
|
27
27
|
private getWebSocketUrl;
|
|
28
|
-
private
|
|
28
|
+
private isServerWorkflow;
|
|
29
29
|
/**
|
|
30
30
|
* Repeatedly checks the job status until it is done.
|
|
31
31
|
* @param serverUrl The url of the instance of Workflow Server that is running the workflow.
|
|
@@ -36,6 +36,6 @@ export declare class RunWorkflow implements IActivityHandler {
|
|
|
36
36
|
* @returns A promise for the result of the workflow. Throws an error in some cases.
|
|
37
37
|
*/
|
|
38
38
|
private pollResult;
|
|
39
|
-
private checkJobStatus;
|
|
40
39
|
private runClientWorkflow;
|
|
40
|
+
private runServerWorkflow;
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__decorate}from"tslib";import{ActivityCancellationError}from"../../Errors.js";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{oldDefaultServerVirtualPath,defaultServerVirtualPath}from"../constants.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{runJob,getServiceToken}from"./runUtils.js";import{getAuthenticationToken,parsePortalItemUrl,getPortalItem,getPortalDataUrl}from"./shared.js";let RunWorkflow=class{async execute(t,e,r){const o=validation.string("url",t.url,validation.never),l=parsePortalItemUrl(o);if(l){
|
|
1
|
+
import{__decorate}from"tslib";import{ActivityCancellationError}from"../../Errors.js";import{activate}from"../../Hooks.js";import{validation}from"../../Validation.js";import{oldDefaultServerVirtualPath,defaultServerVirtualPath}from"../constants.js";import{ChannelProvider}from"../core/ChannelProvider.js";import{runJob,getServiceToken}from"./runUtils.js";import{getAuthenticationToken,parsePortalItemUrl,getPortalItem,getPortalDataUrl}from"./shared.js";let RunWorkflow=class{async execute(t,e,r){const o=validation.string("url",t.url,validation.never),l=parsePortalItemUrl(o);if(l){let o=await getAuthenticationToken(l.portalUrl);const n=getPortalDataUrl(l,o),a=e.cancellationToken,s=await getPortalItem(n,r,a),i=r.create();if(a.finally(function(){i.cancel()}),this.isServerWorkflow(s))return o||(o=await getAuthenticationToken(l.portalUrl,!0)),this.runServerWorkflow(s,t.arguments,i,a,l.portalUrl,o)}return this.runClientWorkflow(o,t.arguments,e)}async checkJobStatus(t,e,r,o){r=r.new(),o.finally(function(){r.cancel()}),r.request.url=`${t}/job/artifacts?ticket=${e}`;if(!await r.send())throw console.error("Unable to check workflow status by polling.",r.response.message),new Error("Unable to check workflow status by polling.");const l=JSON.parse(r.response.content);if(console.debug(l),l.results?.some(t=>"JobQuit"===t.$type)){const r=l.results.filter(t=>"JobResult"===t.$type)[0];if(r)return r.outputs;{const r=`${t}/job/logs?ticket=${e}&`;throw console.error("Server workflow failed.",r),new Error("Server workflow failed.")}}return null}async delay(t){return new Promise(e=>setTimeout(e,t))}async getResult(t,e,r){return new Promise(o=>{const l=this.getWebSocketUrl(`${t}/job/artifacts?ticket=${e}`),n=new WebSocket(l);r.finally(function(){n.close()}),n.addEventListener("open",()=>{n.send("")}),n.addEventListener("message",r=>{const l=JSON.parse(r.data);if(console.debug(l),l.results?.some(t=>"JobQuit"===t.$type)){const r=l.results.filter(t=>"JobResult"===t.$type)[0];if(r)o(r.outputs||{});else{const r=`${t}/job/logs?ticket=${e}`;console.error("Server workflow failed.",r),o(null)}}}),n.addEventListener("error",t=>{console.log("Unable to check workflow status using WebSocket.",t),o(null)}),n.addEventListener("close",t=>{t.wasClean||(console.log("WebSocket connection died.",t),o(null))})})}getWebSocketUrl(t){const e=new URL(t),r=e.protocol;let o="";switch(r){case"https:":o="wss:";break;case"http:":o="ws:";break;default:o=r}return e.protocol=o,e.toString()}isServerWorkflow(t){if(null==t)return!1;const e=t.properties;if(null==e)return!1;const r=e.isServerWorkflow,o=e.serverUrl;return!(!0!==r||!o)}async pollResult(t,e,r,o,l){const n=await this.checkJobStatus(t,e,o,l);return n||(await this.delay(r),this.pollResult(t,e,1.1*r,o,l))}async runClientWorkflow(t,e,r){const o=r.ambient.trivia,l=r.ambient.activityContexts,n=l?l.$$form:void 0;try{const r=n?{$$form:n}:{};return{result:await o.runWorkflow(t,e,r,o.isDescendantOf)}}catch(t){if(t instanceof ActivityCancellationError)return r.ambient.reject(t),{result:{}};throw t}}async runServerWorkflow(t,e,r,o,l,n){let a,s=t.properties.serverUrl;if(s=s.replace(/\/+$/,""),n&&"public"!==t.access)try{a=await getServiceToken(s,l,n,r)}catch(t){if(!oldDefaultServerVirtualPath.test(s))throw t;s=s.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),a=await getServiceToken(s,l,n,r)}const i={workflow:{id:t.id},inputs:e};let c;try{c=await runJob(s,a,i,r)}catch(t){if(!oldDefaultServerVirtualPath.test(s))throw t;s=s.replace(oldDefaultServerVirtualPath,defaultServerVirtualPath),c=await runJob(s,a,i,r)}const u=c.ticket;let f=await this.getResult(s,u,o);return f||(f=await this.pollResult(s,u,1e3,r,o)),{result:f||{}}}};RunWorkflow.action="gcx:wf:core::RunWorkflow",RunWorkflow.suite="gcx:wf:builtin",RunWorkflow=__decorate([activate(ChannelProvider)],RunWorkflow);export{RunWorkflow};
|
|
@@ -12,12 +12,12 @@ export interface SetImageryLayerOptionsInputs {
|
|
|
12
12
|
export interface SetImageryLayerOptionsOutputs {
|
|
13
13
|
/** @description The mosaic rule used. */
|
|
14
14
|
mosaicRule?: __esri.MosaicRule;
|
|
15
|
+
/** @description The pixel function used. */
|
|
16
|
+
pixelFilter?: __esri.PixelFilterFunction;
|
|
15
17
|
/** @description The raster function used. */
|
|
16
18
|
rasterFunction?: __esri.RasterFunction;
|
|
17
19
|
/** @description The rendering rule used. */
|
|
18
20
|
renderingRule?: __esri.RasterFunction;
|
|
19
|
-
/** @description The pixel function used. */
|
|
20
|
-
pixelFilter?: __esri.PixelFilterFunction;
|
|
21
21
|
}
|
|
22
22
|
export declare class SetImageryLayerOptions implements IActivityHandler {
|
|
23
23
|
static readonly action = "gcx:wf:arcgis::SetImageryLayerOptions";
|
|
@@ -8,10 +8,10 @@ export interface SetLayerDefinitionExpressionInputs {
|
|
|
8
8
|
}
|
|
9
9
|
/** Defines outputs for the SetLayerDefinitionExpression activity. */
|
|
10
10
|
export interface SetLayerDefinitionExpressionOutputs {
|
|
11
|
-
/** @description The previous layer definition expression. */
|
|
12
|
-
oldExpression?: string;
|
|
13
11
|
/** @description The new layer definition expression. */
|
|
14
12
|
newExpression?: string;
|
|
13
|
+
/** @description The previous layer definition expression. */
|
|
14
|
+
oldExpression?: string;
|
|
15
15
|
}
|
|
16
16
|
export declare class SetLayerDefinitionExpression implements IActivityHandler {
|
|
17
17
|
static readonly action = "gcx:wf:arcgis::SetLayerDefinitionExpression";
|
|
@@ -8,10 +8,10 @@ export interface SetLayerPropertyInputs {
|
|
|
8
8
|
}
|
|
9
9
|
/** Defines outputs for the SetLayerProperty activity. */
|
|
10
10
|
export interface SetLayerPropertyOutputs {
|
|
11
|
-
/** @description The previous property value. */
|
|
12
|
-
oldValue: any;
|
|
13
11
|
/** @description The new property value. */
|
|
14
12
|
newValue: any;
|
|
13
|
+
/** @description The previous property value. */
|
|
14
|
+
oldValue: any;
|
|
15
15
|
}
|
|
16
16
|
export declare class SetLayerProperty implements IActivityHandler {
|
|
17
17
|
static readonly action = "gcx:wf:arcgis::SetLayerProperty";
|
|
@@ -8,10 +8,10 @@ export interface SetLayerVisibilityInputs {
|
|
|
8
8
|
}
|
|
9
9
|
/** Defines outputs for the SetLayerVisibility activity. */
|
|
10
10
|
export interface SetLayerVisibilityOutputs {
|
|
11
|
-
/** @description Whether the layer was originally visible. */
|
|
12
|
-
wasVisible?: boolean;
|
|
13
11
|
/** @description Whether the layer was visible at the time of completing the activity. */
|
|
14
12
|
nowVisible?: boolean;
|
|
13
|
+
/** @description Whether the layer was originally visible. */
|
|
14
|
+
wasVisible?: boolean;
|
|
15
15
|
}
|
|
16
16
|
export declare class SetLayerVisibility implements IActivityHandler {
|
|
17
17
|
static readonly action = "gcx:wf:arcgis::SetLayerVisibility";
|
|
@@ -8,14 +8,14 @@ export interface SetViewExtentInputs {
|
|
|
8
8
|
}
|
|
9
9
|
/** Defines outputs for the SetViewExtent activity. */
|
|
10
10
|
export interface SetViewExtentOutputs {
|
|
11
|
-
/** @description The previous extent. */
|
|
12
|
-
oldExtent?: __esri.Extent;
|
|
13
|
-
/** @description The previous scale. */
|
|
14
|
-
oldScale?: number;
|
|
15
11
|
/** @description The extent of the view. */
|
|
16
12
|
newExtent?: __esri.Extent;
|
|
17
13
|
/** @description The new scale at the current extent. */
|
|
18
14
|
newScale?: number;
|
|
15
|
+
/** @description The previous extent. */
|
|
16
|
+
oldExtent?: __esri.Extent;
|
|
17
|
+
/** @description The previous scale. */
|
|
18
|
+
oldScale?: number;
|
|
19
19
|
}
|
|
20
20
|
export declare class SetViewExtent implements IActivityHandler {
|
|
21
21
|
static readonly action = "gcx:wf:arcgis::SetViewExtent";
|
|
@@ -8,10 +8,10 @@ export interface SetViewpointInputs {
|
|
|
8
8
|
}
|
|
9
9
|
/** Defines outputs for the SetViewpoint activity. */
|
|
10
10
|
export interface SetViewpointOutputs {
|
|
11
|
-
/** @description The previous viewpoint. */
|
|
12
|
-
oldViewpoint?: __esri.Viewpoint;
|
|
13
11
|
/** @description The updated viewpoint. */
|
|
14
12
|
newViewpoint?: __esri.Viewpoint;
|
|
13
|
+
/** @description The previous viewpoint. */
|
|
14
|
+
oldViewpoint?: __esri.Viewpoint;
|
|
15
15
|
}
|
|
16
16
|
export declare class SetViewpoint implements IActivityHandler {
|
|
17
17
|
static readonly action = "gcx:wf:arcgis::SetViewpoint";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export interface GraphicsLayer {
|
|
2
|
-
addMany(graphics: __esri.Graphic[])
|
|
2
|
+
addMany: (graphics: __esri.Graphic[]) => void;
|
|
3
3
|
graphics: any;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
removeAll: () => void;
|
|
5
|
+
removeMany: (graphics: __esri.Graphic[]) => void;
|
|
6
6
|
}
|
|
7
7
|
export interface LayerWithSublayers {
|
|
8
8
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ApplyEditsResponse } from "./libs/arcGisRestApi";
|
|
2
2
|
import type { IActivityHandler, IActivityContext } from "../../IActivityHandler";
|
|
3
|
+
import type { EditResult } from "./libs/shared";
|
|
3
4
|
/** Defines inputs for the UpdateFeatures activity. */
|
|
4
5
|
export interface UpdateFeaturesInputs {
|
|
5
6
|
url?: string;
|
|
@@ -10,7 +11,7 @@ export interface UpdateFeaturesInputs {
|
|
|
10
11
|
}
|
|
11
12
|
export interface UpdateFeaturesOutputs {
|
|
12
13
|
/** @description The results of the update operation. */
|
|
13
|
-
results:
|
|
14
|
+
results: EditResult[];
|
|
14
15
|
/** @description Whether the update operation completed successfully. */
|
|
15
16
|
success: boolean;
|
|
16
17
|
}
|
|
@@ -19,5 +20,7 @@ export declare class UpdateFeatures implements IActivityHandler {
|
|
|
19
20
|
static readonly suite = "gcx:wf:builtin";
|
|
20
21
|
execute(inputs: UpdateFeaturesInputs, context: IActivityContext): Promise<UpdateFeaturesOutputs>;
|
|
21
22
|
/** Called after the apply edit operation completes. */
|
|
22
|
-
protected onApplyEditsComplete(
|
|
23
|
+
protected onApplyEditsComplete(result: __esri.EditsResult | ApplyEditsResponse): void;
|
|
24
|
+
private updateUsingLayer;
|
|
25
|
+
private updateUsingRestEndpoint;
|
|
23
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{validation}from"../../Validation.js";import{addToPath,post}from"./tools.js";export class UpdateFeatures{async execute(
|
|
1
|
+
import FeatureLayer from"@arcgis/core/layers/FeatureLayer";import SubtypeGroupLayer from"@arcgis/core/layers/SubtypeGroupLayer";import SubtypeSublayer from"@arcgis/core/layers/support/SubtypeSublayer";import{ActivityInputError}from"../../Errors.js";import{validation}from"../../Validation.js";import{addToPath,post}from"./tools.js";export class UpdateFeatures{async execute(e,r){const t=validation.layer(e),a=validation.string("gdbVersion",e.gdbVersion),s=validation.array("features",e.features,validation.never);if(t instanceof FeatureLayer||t instanceof SubtypeGroupLayer||t instanceof SubtypeSublayer)return await t.load({signal:r.cancellationToken.signal}),t.capabilities?.operations?.supportsUpdate?this.updateUsingLayer(t,s,a):this.updateUsingRestEndpoint(e,s,a,r);throw new ActivityInputError("layer","Layer is not a supported type.")}onApplyEditsComplete(e){}async updateUsingLayer(e,r,t){const a=await e.applyEdits({updateFeatures:r},{gdbVersion:t}),{updateFeatureResults:s}=a,o=s.map(e=>({error:e.error?{message:e.error.message,name:e.error.name}:void 0,globalId:e.globalId??void 0,objectId:e.objectId??void 0,success:!e.error}));return this.onApplyEditsComplete(a),{results:o,success:o.every(e=>e.success)}}async updateUsingRestEndpoint(e,r,t,a){const s=validation.number("timeout",e.timeout);let o=validation.urlOrLayer(e);o=addToPath(o,"applyEdits");const i=r.map(e=>{if(e.geometry)return e;{const r=e.toJSON();return delete r.geometry,r}}),n=post(o,{updates:i,gdbVersion:t},s,a.cancellationToken.signal),p=await n;this.onApplyEditsComplete(p);const u=!!p.updateResults?.every(e=>e.success);return{results:p.updateResults.map(e=>({error:e.error?{message:e.error.description,name:e.error.code+""}:void 0,globalId:e.globalId??void 0,objectId:e.objectId??void 0,success:!e.error})),success:u}}}UpdateFeatures.action="gcx:wf:arcgis::UpdateFeatures",UpdateFeatures.suite="gcx:wf:builtin";
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
export interface ApplyEditResult {
|
|
2
|
-
objectId: number;
|
|
3
|
-
globalId: string;
|
|
4
|
-
success: boolean;
|
|
5
2
|
error?: {
|
|
6
3
|
code: number;
|
|
7
4
|
description: string;
|
|
8
5
|
};
|
|
6
|
+
globalId: string;
|
|
7
|
+
objectId: number;
|
|
8
|
+
success: boolean;
|
|
9
9
|
}
|
|
10
10
|
export interface ApplyEditsResponse extends __esri.RequestResponse {
|
|
11
11
|
addResults: ApplyEditResult[];
|
|
12
|
-
updateResults: ApplyEditResult[];
|
|
13
12
|
deleteResults: ApplyEditResult[];
|
|
13
|
+
updateResults: ApplyEditResult[];
|
|
14
14
|
}
|
|
15
15
|
export interface AttachmentInfosResponse extends __esri.RequestResponse {
|
|
16
16
|
attachmentInfos: object[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -80,8 +80,8 @@ export interface LayoutInfo {
|
|
|
80
80
|
webMapFrameSize?: number[];
|
|
81
81
|
}
|
|
82
82
|
export interface AdditionalMap {
|
|
83
|
-
name: string;
|
|
84
83
|
Map_As_JSON: ExportWebMap;
|
|
84
|
+
name: string;
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
87
|
* The name of a Map Frame element within a layout.
|
|
@@ -91,15 +91,15 @@ export declare enum MapFrameElementName {
|
|
|
91
91
|
OVERVIEW = "OVERVIEW"
|
|
92
92
|
}
|
|
93
93
|
interface ExportSpatialReference {
|
|
94
|
-
wkid: number | null | undefined;
|
|
95
94
|
latestWkid?: number;
|
|
95
|
+
wkid: number | null | undefined;
|
|
96
96
|
}
|
|
97
97
|
export interface ExportExtent {
|
|
98
|
-
|
|
99
|
-
ymin: number;
|
|
98
|
+
spatialReference: ExportSpatialReference;
|
|
100
99
|
xmax: number;
|
|
100
|
+
xmin: number;
|
|
101
101
|
ymax: number;
|
|
102
|
-
|
|
102
|
+
ymin: number;
|
|
103
103
|
}
|
|
104
104
|
interface ExportMapOptions {
|
|
105
105
|
/**
|
|
@@ -146,21 +146,21 @@ interface ExportMapOptions {
|
|
|
146
146
|
interface ExportOperationalLayer {
|
|
147
147
|
id?: string;
|
|
148
148
|
layerType: "ArcGISFeatureLayer" | "ArcGISImageServiceLayer" | "ArcGISMapServiceLayer" | "ArcGISTiledImageServiceLayer" | "ArcGISTiledMapServiceLayer" | "VectorTileLayer" | "WebTiledLayer" | "WFS" | "WMS" | "KML";
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
title?: string;
|
|
149
|
+
maxScale?: number;
|
|
150
|
+
minScale?: number;
|
|
152
151
|
opacity?: number;
|
|
152
|
+
title?: string;
|
|
153
|
+
token?: string;
|
|
154
|
+
url?: string;
|
|
153
155
|
visibility?: boolean;
|
|
154
|
-
minScale?: number;
|
|
155
|
-
maxScale?: number;
|
|
156
156
|
}
|
|
157
157
|
interface ExportBaseMapLayer {
|
|
158
|
-
url: string;
|
|
159
158
|
opacity?: number;
|
|
159
|
+
url: string;
|
|
160
160
|
}
|
|
161
161
|
interface ExportBaseMap {
|
|
162
|
-
title: string;
|
|
163
162
|
baseMapLayers: ExportBaseMapLayer[];
|
|
163
|
+
title: string;
|
|
164
164
|
}
|
|
165
165
|
interface ExportOptions {
|
|
166
166
|
dpi?: number;
|
|
@@ -170,9 +170,9 @@ interface ExportOptions {
|
|
|
170
170
|
* @product This is intended for internal use only within VertiGIS Studio products.
|
|
171
171
|
*/
|
|
172
172
|
export interface ExportWebMap {
|
|
173
|
-
baseMap: ExportBaseMap;
|
|
174
173
|
/** The base layers. */
|
|
175
174
|
baseLayers?: any[];
|
|
175
|
+
baseMap: ExportBaseMap;
|
|
176
176
|
/** */
|
|
177
177
|
exportOptions?: ExportOptions;
|
|
178
178
|
/** The ground layers. */
|
|
@@ -183,8 +183,8 @@ export interface ExportWebMap {
|
|
|
183
183
|
copyrightText?: string;
|
|
184
184
|
customTextElements?: Record<string, string>[];
|
|
185
185
|
legendOptions?: {
|
|
186
|
-
operationalLayersAutoSet: false;
|
|
187
186
|
operationalLayers: Record<string, string>[];
|
|
187
|
+
operationalLayersAutoSet: false;
|
|
188
188
|
};
|
|
189
189
|
titleText?: string;
|
|
190
190
|
};
|
|
@@ -6,16 +6,16 @@ import type { ChannelProvider } from "../core/ChannelProvider";
|
|
|
6
6
|
* @product This is intended for internal use only within VertiGIS Studio products.
|
|
7
7
|
*/
|
|
8
8
|
export interface JobParameter {
|
|
9
|
-
name: string;
|
|
10
9
|
containsMultipleValues?: boolean;
|
|
11
10
|
containsSingleValue?: boolean;
|
|
12
11
|
description?: string;
|
|
13
12
|
item?: any;
|
|
14
13
|
itemData?: any;
|
|
14
|
+
name: string;
|
|
15
15
|
purpose?: string;
|
|
16
16
|
value?: any;
|
|
17
|
-
values?: any;
|
|
18
17
|
valueType?: string;
|
|
18
|
+
values?: any;
|
|
19
19
|
visible?: boolean;
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const DEV_SERVICE_URL="http://localhost:3000/";async function checkJobStatus(e,t,o,n
|
|
1
|
+
const DEV_SERVICE_URL="http://localhost:3000/";async function checkJobStatus(e,t,r,o,n){const s=o.new();n.finally(function(){s.cancel()}),s.request.url=`${e}/job/artifacts?ticket=${r}`,t&&(s.request.headers.Authorization=`Bearer ${t}`);if(!await s.send())throw console.error("Unable to check job status.",s.response.message),new Error("Unable to check job status.");const a=JSON.parse(s.response.content);if(console.debug(a),a.results?.some(e=>"JobQuit"===e.$type)){const t=a.results.filter(e=>"JobResult"===e.$type)[0];if(t){return`${e}/job/result?ticket=${r}&tag=${t.tag}`}throw console.error("Job failed."),new Error("Job failed.")}return null}export async function checkResult(e,t,r,o,n,s){const a=await checkJobStatus(e,t,r,n,s);return a||(await delay(o),await checkResult(e,t,r,1.1*o,n,s))}async function delay(e){return new Promise(t=>setTimeout(t,e))}export async function getMapControlNames(e,t,r,o,n){const s=[],a=await getTemplateMetadata(e,t,r,o,n);if(a?.response&&a.response.controls)for(const e of a.response.controls)if("Map"===e.controlType){const t=e.purpose;s.push(t.substring(0,t.indexOf(".")))}return s}export async function getServiceToken(e,t,r,o){const n=o.new();if(n.request.url=`${e}/auth/token/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},n.request.json={accessToken:r,portalUrl:t},!await n.send())throw console.error("Unable to generate run token.",n.response.message),new Error("Unable to generate run token");const s=JSON.parse(n.response.content);return s.response?s.response.token:s.token}async function getTemplateMetadata(e,t,r,o,n){const s=o.new();n.finally(function(){s.cancel()}),s.request.url=`${t}/job/metadata`,s.request.method="POST",s.request.json={template:{itemId:e.itemId,portalUrl:e.portalUrl}},s.request.headers["Content-Type"]="application/json",r&&(s.request.headers.Authorization=`Bearer ${r}`);if(!await s.send())throw console.error("Unable to retrieve template metadata.",s.response.message),new Error("Unable to retrieve template metadata.");const a=JSON.parse(s.response.content);return console.debug(a),a}export async function runJob(e,t,r,o){const n=o.new();if(n.request.url=`${e}/job/run`,n.request.method="POST",n.request.headers={"Content-Type":"application/json"},t&&(n.request.headers.Authorization=`Bearer ${t}`),n.request.json=r,!await n.send())throw console.error("Unable to run job.",n.response.message),new Error("Unable to run job");const s=JSON.parse(n.response.content);if(console.debug("job/run",s),s.error)throw console.error("Error running job.",s.error.message),new Error("Error running job.");return s}export function getServiceUrl(e,t){let r=e;if(r)if(0===r.toLowerCase().indexOf(DEV_SERVICE_URL))r="http://localhost:43222/";else{const e=r.indexOf("#");-1!==e&&(r=r.substring(0,e))}else r=`https://apps.vertigisstudio.com/${t}/`;return r+="/"===r.slice(-1)?"service":"/service",r}
|
|
@@ -3,8 +3,15 @@ import type { ChannelProvider } from "../core/ChannelProvider";
|
|
|
3
3
|
/**
|
|
4
4
|
* Gets the authentication token, if any, for the supplied portal.
|
|
5
5
|
* @param portalUrl
|
|
6
|
+
* @param forceOAuthForIWA If true, forces an OAuth sign in for IWA secured
|
|
7
|
+
* portals if an OAuth token isn't already available. If you do not need a token
|
|
8
|
+
* when working with IWA secured portals, like in most use cases when accessing
|
|
9
|
+
* portal resources normally, do not set this to true. This is only really
|
|
10
|
+
* needed for cases where we are forwarding the token to a backend server that
|
|
11
|
+
* requires it to access secured resources on the portal (server workflow,
|
|
12
|
+
* reporting, printing, etc.).
|
|
6
13
|
*/
|
|
7
|
-
export declare function getAuthenticationToken(portalUrl: string): string
|
|
14
|
+
export declare function getAuthenticationToken(portalUrl: string, forceOAuthForIWA?: boolean): Promise<string>;
|
|
8
15
|
export declare function parsePortalItemUrl(url: string): PortalItemUrlInfo | undefined;
|
|
9
16
|
export declare function getPortalDataUrl(portalItemUrlInfo: PortalItemUrlInfo, token: string): string;
|
|
10
17
|
/**
|
|
@@ -18,8 +25,8 @@ export declare function getPortalDataUrl(portalItemUrlInfo: PortalItemUrlInfo, t
|
|
|
18
25
|
*/
|
|
19
26
|
export declare function getPortalItem(itemUrl: string, ChannelProviderType: typeof ChannelProvider, cancellationToken: Task<void>): Promise<any>;
|
|
20
27
|
export interface PortalItemUrlInfo {
|
|
21
|
-
portalUrl: string;
|
|
22
28
|
itemId: string;
|
|
29
|
+
portalUrl: string;
|
|
23
30
|
}
|
|
24
31
|
/**
|
|
25
32
|
* This method ensures that the value is enclosed in `{}` characters.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import esriId from"@arcgis/core/identity/IdentityManager";export function getAuthenticationToken(e){const
|
|
1
|
+
import esriId from"@arcgis/core/identity/IdentityManager";export async function getAuthenticationToken(e,t){const n=esriId.findCredential(e);return t&&await handleOAuthForIWA(n),n?.token||""}async function handleOAuthForIWA(e){let t,n;if(null!=e&&"portal"===e.scope&&null==e.token&&(t=esriId.findServerInfo(e.server))?.webTierAuth&&null!=(n=esriId.findOAuthInfo(e.server)))if(null==esriId.oAuthSignIn)console.warn("IWA portal token fetch failed: oAuthSignIn method not found.");else{const r=await esriId.oAuthSignIn(e.server,t,n,{oAuthPopupConfirmation:!1});null!=r&&(e.token=r.token,e.oAuthState=r.oAuthState,e.expires=r.expires,e._oAuthCred=r._oAuthCred)}}export function parsePortalItemUrl(e){const t=e.match(/^(.*?)\/home\/item\.html\?id=(.*?)(#.*)?$/);if(t)return{portalUrl:t[1],itemId:t[2]}}export function getPortalDataUrl(e,t){return`${e.portalUrl}/sharing/rest/content/items/${e.itemId}?f=json&token=${t}`}export async function getPortalItem(e,t,n){const r=t.create(void 0,"arcgis");n.finally(function(){r.cancel()}),r.request.url=e;if(!await r.send())throw console.error("Unable to get portal item.",r.response.message),new Error("Unable to get portal item.");return r.getResponseData(r.response.payload)}export function formatGlobalId(e){return"{"!=e[0]&&(e="{"+e),"}"!=e[e.length-1]&&(e+="}"),e}export function combineGlobalIds(e){return`[${e.map(e=>`"${formatGlobalId(e)}"`).join(",")}]`}export function equalsIgnoreCase(e,t){return e===t||null!=e&&(null!=t&&e.toLowerCase()===t.toLowerCase())}export function getFieldName(e,t){return Object.keys(t).find(t=>equalsIgnoreCase(e,t))}export function containsIgnoreCase(e,t){return e.some(e=>equalsIgnoreCase(e,t))}export function calculateOrigin(e,t){if(t)return t;switch(e.type){case"extent":return e.center;case"point":return e;case"mesh":case"multipoint":case"polygon":case"polyline":return e.extent.center}}
|