UNPKG

@arcgis/workflow-manager

Version:

ArcGIS Workflow Manager JavaScript API

292 lines (291 loc) 8.45 kB
import { AssignedType, CurrentStep, JobAttachment } from '../job'; import { ExtendedPropertyDomainType, ExtendedPropertyTableRelationshipType, PortalType } from '../extendedPropertyDefinition'; import { AssignmentMethod, CommentEnabledStep, GeometryType, MethodType, StepMode, SurveyMode, SurveyRecordType } from '../shared'; import { SpatialAssignmentOptions, UserDefinedAssignmentOptions } from '../steps/advancedAssignment'; export type AbstractNotificationMessage = NotificationMessage | ItemNotificationMessage; export interface NotificationMessage { msgType: string; message: MessageDetails; timestamp?: number; token?: string; } export interface ItemNotificationMessage { msgType: string; message: MessageDetailsWithItemId; timestamp?: number; token?: string; } export interface MessageDetails { jobId: string; } export interface HeldStepMessageDetails extends MessageDetails { scheduledRelease?: Date; dependency?: boolean; setBy?: string; } export interface JobUpdatedMessageDetails extends MessageDetails { properties: JobUpdatedPropertyDetails; } export interface JobUpdatedPropertyDetails { jobProperties?: UpdatedPropertyDetails[]; extendedProperties?: UpdatedExtendedPropertyDetails[]; relatedProperties?: any[]; } export interface UpdatedPropertyDetails { propertyName: string; value: string; } export interface UpdatedExtendedPropertyDetails { tableName: string; properties: UpdatedPropertyDetails[]; } export interface JobAttachmentUpdatedMessageDetails extends MessageDetails { adds?: JobAttachment[]; updates?: JobAttachment[]; deletes?: string[]; } export interface JobCommentMessage { jobId: string; comment: string; commentId: string; lastModifiedBy: string; lastModified: Date; } export interface JobCommentUpdatedMessageDetails extends MessageDetails { adds?: JobCommentMessage[]; updates?: JobCommentMessage[]; deletes?: string[]; } export interface MultiStepId extends MessageDetails { stepIds: string[]; } export interface StepInfo extends MultiStepId { jobStatus?: string; currentSteps?: CurrentStep[]; } export interface StepStartedInfo extends StepInfo { autoRun?: boolean; } export declare enum AllowedActions { None = 0, Cancel = 1, Pause = 2, Finish = 4, Refresh = 8 } export interface ProgressInfo extends MultiStepId { msgCode: string; msg: string; allowedActions: AllowedActions; } export interface StepMessageInfo extends MessageDetails { stepId: string; msgCode: string; msg: string; proceed: boolean; } export interface MessageInfo extends MultiStepId { msgCode: string; msg: string; } export interface JobStateStep { stepId: string; assignedTo: string; assignedType: AssignedType; stepName: string; canSkip: boolean; message?: NotificationMessage; } export interface StepReassignedMessage extends MessageDetails { stepId: string; assignedType: AssignedType; assignedTo?: string; } export interface JobStateMessage extends MessageDetails { jobStatus: string; percentComplete: number; jobTemplateName: string; diagramId: string; diagramVersion: number; stepStates: JobStateStep[]; closed: boolean; } export interface StepInfoRequiredMessage extends MessageDetails { stepId: string; msgCode: string; msg: string; allowedActions: AllowedActions; helpText?: string; helpLink?: string; } export interface OpenAppStepInfoRequiredMessage extends StepInfoRequiredMessage { appUrl: string; openInNewBrowser: boolean; } export interface DefineLocationStepInfoRequiredMessage extends StepInfoRequiredMessage { geometryType: GeometryType; prompt: string; webMapUrl: string; methodType: MethodType; zoomToSearchText?: string; } export interface QuestionStepInfoRequiredMessage extends StepInfoRequiredMessage, CommentEnabledStep { question: string; questionResponses: QuestionMessageResponse[]; } export interface JobPropertiesStepInfoRequiredMessage extends StepInfoRequiredMessage, CommentEnabledStep { jobTemplateId: string; prompt: string; properties: JobPropertyDetails[]; stepMode?: StepMode; } export interface ExecuteGPStepInfoRequiredMessage extends StepInfoRequiredMessage { jobTemplateId: string; prompt: string; visibleParameters: JobPropertyDetails[]; properties: JobPropertyDetails[]; } export interface ManualStepInfoRequiredMessage extends StepInfoRequiredMessage, CommentEnabledStep { userPrompt?: string; } export interface Survey123StepInfoRequiredMessage extends StepInfoRequiredMessage { surveyId: string; name: string; portalType: PortalType; portalUrl?: string; surveyMode: SurveyMode; surveyRecordType: SurveyRecordType; relationshipType: ExtendedPropertyTableRelationshipType; isExpandedView: boolean; globalId: string; } export declare enum AttachmentLinkType { FILE = "File", TEXT = "Text", URL = "Url" } export interface AttachmentDetails { alias?: string; attachmentId: string; lastModified?: Date; uri?: string; } export interface AttachmentStepInfoRequiredMessage extends StepInfoRequiredMessage { userPrompt: string; folder: string; acceptEmbedded: boolean; acceptLinked: boolean; acceptedFileTypes?: string; acceptedLinkType?: AttachmentLinkType; viewExisting: boolean; editExisting: boolean; attachments: AttachmentDetails[]; } export interface AdvancedAssignmentResponse { username: string; comment?: string; } export interface AdvancedAssignmentStepInfo extends BaseStepInfo { assignmentResponse: string; comment?: string; } export interface AdvancedAssignmentStepInfoRequiredMessage extends StepInfoRequiredMessage, CommentEnabledStep { userPrompt: string; assignmentMethod: AssignmentMethod; userDefinedAssignmentOptions?: UserDefinedAssignmentOptions; spatialData?: SpatialAssignmentOptions; } export declare enum DataType { String = "String", Integer = "Integer", Double = "Double", Boolean = "Boolean", DateTime = "DateTime", Unknown = "Unknown" } export interface PropertyDetails { identifier: string; alias: string; required: boolean; value: string; dataType: DataType; order: number; fieldLength?: number; editable: boolean; } export interface JobPropertyDetails extends PropertyDetails { domainType?: ExtendedPropertyDomainType; uniqueId?: string; } export interface PropertyResponse { identifier: string; value: string; uniqueId?: string; } export interface QuestionMessageResponse { name: string; value: number; } export interface QuestionResponse { value: number; comment?: string; } export interface BaseStepInfo { jobId: string; stepId: string; } export interface SurveyResponse { surveyId: string; portalUrl?: string; portalType: PortalType; surveyMode: SurveyMode; surveyRecordType: SurveyRecordType; globalId: string; success: boolean; } export interface SurveyStepInfo extends BaseStepInfo { surveyResponse: SurveyResponse; } export interface QuestionStepInfo extends BaseStepInfo { questionResponse: number; } export interface OpenAppStepInfo extends BaseStepInfo { openAppResponse: boolean; url: string; } export interface PropertyStepResponse { propertyResponses: PropertyResponse[]; comment?: string; } export interface PropertyStepInfo extends BaseStepInfo { propertyResponses: PropertyResponse[]; comment?: string; } export declare enum SubscriptionType { Subscribe = "subscribe", Unsubscribe = "unsubscribe" } export declare enum MessageType { StepInfoRequiredError = "StepInfoRequiredError" } export interface SubscribeMessage { msgType: SubscriptionType; jobIds: string[]; } export interface MessageDetailsWithItemId { itemId: string; } export interface ExportCompletedMessageDetails extends MessageDetailsWithItemId { exportId: string; } export interface ExportFailedMessageDetails extends MessageDetailsWithItemId { exportId: string; msg: string; msgCode: string; } export interface ImportCompletedMessageDetails extends MessageDetailsWithItemId { } export interface ImportFailedMessageDetails extends MessageDetailsWithItemId { msg: string; msgCode: string; }