{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/store/modules/groups.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ConnectorOutputParametersProps.js","webpack:///./src/assets/properties-panel/lib/helper/InputOutputHelper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ListenerFieldInjectionProps.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/NameProps.js","webpack:///./src/components/admin.vue?c6be","webpack:///./src/views/BuildReport.vue?2166","webpack:///./src/store/modules/admin.js","webpack:///./src/assets/properties-panel/lib/helper/CategoryHelper.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/TimerEventDefinition.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ListenerDetailProps.js","webpack:///./src/components/viewreport.vue?c15c","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Properties.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/services/handleLegacyScopes.js","webpack:///./src/components/external.vue?821c","webpack:///./src/assets/properties-panel/lib/helper/ExtensionElementsHelper.js","webpack:///./src/components/navbar.vue?8f0b","webpack:///./src/assets/properties-panel/lib/handlers/index.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/ElementTemplates.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/JobRetryTimeCycle.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/IdProps.js","webpack:///./src/assets/properties-panel/lib/factory/CollapsibleEntryFactory.js","webpack:///./src/assets/properties-panel/lib/helper/ParticipantHelper.js","webpack:///src/components/external.vue","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/index.js","webpack:///./src/assets/properties-panel/index.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Tasklist.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/InputParameters.js","webpack:///./src/assets/properties-panel/lib/factory/ToggleSwitchEntryFactory.js","webpack:///./src/assets/properties-panel/lib/factory/CheckboxEntryFactory.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/FieldInjection.js","webpack:///./src/assets/properties-panel/lib/helper/CmdHelper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/VariableMappingProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ExternalTaskConfigurationProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ExternalTaskPriority.js","webpack:///./src/assets/properties-panel/lib/PropertiesActivator.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ExtensionElements.js","webpack:///./src/assets/properties-panel/lib/helper/EventDefinitionHelper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ConnectorDetailProps.js","webpack:///./src/components/viewtask.vue?3cc9","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/OutputParametersProps.js","webpack:///./src/components/viewtable.vue?fd34","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/ExecutableProps.js","webpack:///./src/store/modules/reports.js","webpack:///./src/store/index.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/Helper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Listener.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ServiceTaskDelegateProps.js","webpack:///./src/assets/properties-panel/lib/handlers/UpdateBusinessObjectListHandler.js","webpack:///./src/assets/properties-panel/lib/factory/ValidationAwareTextInput.js","webpack:///./src/locales sync [A-Za-z0-9-_,\\s]+\\.json$/","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/JobPriority.js","webpack:///./src/components/alltasks.vue?49b0","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/CustomProps.js","webpack:///./src/assets/properties-panel/lib/factory/LinkEntryFactory.js","webpack:///./src/assets/properties-panel/lib/handlers/UpdateBusinessObjectHandler.js","webpack:///./src/components/mytasks.vue?33b1","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ConditionalProps.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/UpdateModdlePropertiesHandler.js","webpack:///./src/assets/process-builder/lib/base/BaseServices.js","webpack:///./src/assets/properties-panel/lib/factory/EntryFieldDescription.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/VersionTagProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/JobConfigurationProps.js","webpack:///./src/assets/properties-panel/lib/factory/EntryFactory.js","webpack:///./src/App.vue?b5eb","webpack:///./src/components/navbar.vue?2a93","webpack:///src/components/navbar.vue","webpack:///./src/components/navbar.vue?99c4","webpack:///./src/components/navbar.vue","webpack:///src/App.vue","webpack:///./src/App.vue?60d0","webpack:///./src/App.vue","webpack:///./src/plugins/vuetify.js","webpack:///./src/plugins/i18n.js","webpack:///./src/main.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/ChooserProps.js","webpack:///./src/assets/properties-panel/lib/handlers/CreateAndReferenceHandler.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/handlers/ChangeElementTemplateHandler.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/SignalEventDefinition.js","webpack:///./src/components/processdesigner.vue?7685","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Callable.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ConnectorInputParametersProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/PropertiesProps.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/EventDefinitionReference.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ScriptTaskProps.js","webpack:///./src/assets/properties-panel/lib/helper/FormHelper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/MultiInstanceLoopCharacteristics.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/OutputParametersProps.js","webpack:///./src/components/buildform.vue?7d22","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ErrorEventDefinition.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/CustomElementsPropertiesActivator.js","webpack:///./src/assets/properties-panel/lib/factory/LabelFactory.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/TasklistProps.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/ProcessProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/AsynchronousContinuationProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/services/elementTemplatesValidator.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/DescriptionProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/CreateHelper.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/EscalationEventDefinition.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/FieldInjectionProps.js","webpack:///./src/views/ViewReport.vue?603f","webpack:///./src/assets/properties-panel/lib/helper/ImplementationTypeHelper.js","webpack:///./src/store/modules/files.js","webpack:///./src/assets/properties-panel/lib/factory/ComboEntryFactory.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/StartEventInitiator.js","webpack:///./src/store/modules/tables.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/services/extractProcessVariables.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/ConditionalEventDefinition.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ProcessVariablesProps.js","webpack:///./src/components/unassignedtasks.vue?2a27","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/CandidateStarterProps.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/LinkProps.js","webpack:///./src/store/modules/users.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ErrorEventProps.js","webpack:///./src/assets/properties-panel/lib/helper/ElementHelper.js","webpack:///./src/assets/properties-panel/lib/factory/TextInputEntryFactory.js","webpack:///./src/assets/properties-panel/lib/factory/TextBoxEntryFactory.js","webpack:///./src/components/buildprocess.vue?1d83","webpack:///./src/views/BuildForm.vue?5788","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/MultiInstanceLoopProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ResultVariable.js","webpack:///./src/components/login.vue?5e59","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ProcessVariables.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/CandidateStarter.js","webpack:///./src/views/Login.vue?0772","webpack:///./src/components/login.vue?c02c","webpack:///src/components/login.vue","webpack:///./src/components/login.vue?4498","webpack:///./src/components/login.vue","webpack:///src/views/Login.vue","webpack:///./src/views/Login.vue?5d79","webpack:///./src/views/Login.vue","webpack:///./src/views/Home.vue?2a46","webpack:///./src/components/dashboard.vue?1a77","webpack:///src/components/dashboard.vue","webpack:///./src/components/dashboard.vue?04a2","webpack:///./src/components/dashboard.vue","webpack:///src/views/Home.vue","webpack:///./src/views/Home.vue?73d4","webpack:///./src/views/Home.vue","webpack:///./src/views/StartNewCase.vue?fbd9","webpack:///./src/components/startnewcase.vue?1210","webpack:///src/components/startnewcase.vue","webpack:///./src/components/startnewcase.vue?250b","webpack:///./src/components/startnewcase.vue","webpack:///src/views/StartNewCase.vue","webpack:///./src/views/StartNewCase.vue?8dd7","webpack:///./src/views/StartNewCase.vue","webpack:///./src/views/RunningCases.vue?705b","webpack:///./src/components/runningcases.vue?0b5c","webpack:///src/components/runningcases.vue","webpack:///./src/components/runningcases.vue?ef36","webpack:///./src/components/runningcases.vue","webpack:///src/views/RunningCases.vue","webpack:///./src/views/RunningCases.vue?43d2","webpack:///./src/views/RunningCases.vue","webpack:///./src/views/MyTasks.vue?8a8b","webpack:///./src/components/mytasks.vue?3fa3","webpack:///./src/assets/process-builder/lib/components/labelElements/LabelService.js","webpack:///./src/assets/process-builder/lib/compose/ComposerService.js","webpack:///./src/assets/process-builder/lib/compose/Composer.js","webpack:///./src/assets/process-builder/lib/compose/TextComposer.js","webpack:///./src/assets/process-builder/lib/compose/PathMap.js","webpack:///./src/assets/process-builder/lib/compose/index.js","webpack:///./src/assets/process-builder/lib/import/ImportService.js","webpack:///./src/assets/process-builder/lib/import/Import.js","webpack:///./src/assets/process-builder/lib/import/index.js","webpack:///./src/assets/process-builder/lib/base/index.js","webpack:///./src/assets/process-builder/lib/import/TreeTraversal.js","webpack:///./src/assets/process-builder/lib/import/ImportDiagram.js","webpack:///./src/assets/process-builder/lib/base/BaseViewer.js","webpack:///./src/assets/process-builder/lib/Viewer.js","webpack:///./src/assets/process-builder/lib/NavViewer.js","webpack:///src/components/mytasks.vue","webpack:///./src/components/mytasks.vue?1922","webpack:///./src/components/mytasks.vue","webpack:///src/views/MyTasks.vue","webpack:///./src/views/MyTasks.vue?b0f9","webpack:///./src/views/MyTasks.vue","webpack:///./src/views/TeamTasks.vue?fe61","webpack:///./src/components/teamtasks.vue?ff05","webpack:///src/components/teamtasks.vue","webpack:///./src/components/teamtasks.vue?b25c","webpack:///./src/components/teamtasks.vue","webpack:///src/views/TeamTasks.vue","webpack:///./src/views/TeamTasks.vue?431f","webpack:///./src/views/TeamTasks.vue","webpack:///./src/views/UnassignedTasks.vue?3b08","webpack:///./src/components/unassignedtasks.vue?a1e3","webpack:///src/components/unassignedtasks.vue","webpack:///./src/components/unassignedtasks.vue?16c6","webpack:///./src/components/unassignedtasks.vue","webpack:///src/views/UnassignedTasks.vue","webpack:///./src/views/UnassignedTasks.vue?b373","webpack:///./src/views/UnassignedTasks.vue","webpack:///./src/views/AllTasks.vue?fc8a","webpack:///./src/components/alltasks.vue?d302","webpack:///src/components/alltasks.vue","webpack:///./src/components/alltasks.vue?0ecd","webpack:///./src/components/alltasks.vue","webpack:///src/views/AllTasks.vue","webpack:///./src/views/AllTasks.vue?7a20","webpack:///./src/views/AllTasks.vue","webpack:///./src/views/HistoricCases.vue?abc2","webpack:///./src/components/historiccases.vue?4de3","webpack:///src/components/historiccases.vue","webpack:///./src/components/historiccases.vue?f3d4","webpack:///./src/components/historiccases.vue","webpack:///src/views/HistoricCases.vue","webpack:///./src/views/HistoricCases.vue?444f","webpack:///./src/views/HistoricCases.vue","webpack:///./src/views/ViewTask.vue?3e12","webpack:///./src/components/viewtask.vue?9e62","webpack:///./src/components/viewtask.vue?23c0","webpack:///./src/components/viewtask.vue","webpack:///src/views/ViewTask.vue","webpack:///./src/views/ViewTask.vue?01f2","webpack:///./src/views/ViewTask.vue","webpack:///./src/views/ViewCaseHistory.vue?236e","webpack:///./src/components/viewcasehistory.vue?57fb","webpack:///src/components/viewcasehistory.vue","webpack:///./src/components/viewcasehistory.vue?9e8c","webpack:///./src/components/viewcasehistory.vue","webpack:///src/views/ViewCaseHistory.vue","webpack:///./src/views/ViewCaseHistory.vue?ff9a","webpack:///./src/views/ViewCaseHistory.vue","webpack:///./src/views/Admin.vue?749f","webpack:///./src/components/admin.vue?cc8a","webpack:///src/components/admin.vue","webpack:///./src/components/admin.vue?dac5","webpack:///./src/components/admin.vue","webpack:///src/views/Admin.vue","webpack:///./src/views/Admin.vue?ca30","webpack:///./src/views/Admin.vue","webpack:///./src/views/FormBuilder.vue?51e2","webpack:///./src/components/formbuilder.vue?dc16","webpack:///src/components/formbuilder.vue","webpack:///./src/components/formbuilder.vue?1af6","webpack:///./src/components/formbuilder.vue","webpack:///src/views/FormBuilder.vue","webpack:///./src/views/FormBuilder.vue?80c6","webpack:///./src/views/FormBuilder.vue","webpack:///./src/views/BuildForm.vue?73ff","webpack:///./src/components/buildform.vue?50ec","webpack:///src/components/buildform.vue","webpack:///./src/components/buildform.vue?8aa9","webpack:///./src/components/buildform.vue","webpack:///src/views/BuildForm.vue","webpack:///./src/views/BuildForm.vue?79aa","webpack:///./src/views/BuildForm.vue","webpack:///./src/views/ProcessDesigner.vue?8485","webpack:///./src/components/processdesigner.vue?8649","webpack:///src/components/processdesigner.vue","webpack:///./src/components/processdesigner.vue?5a8f","webpack:///./src/components/processdesigner.vue","webpack:///src/views/ProcessDesigner.vue","webpack:///./src/views/ProcessDesigner.vue?3e82","webpack:///./src/views/ProcessDesigner.vue","webpack:///./src/views/BuildProcess.vue?01f6","webpack:///./src/components/buildprocess.vue?b5c4","webpack:///./src/assets/process-builder/lib/base/BaseModeler.js","webpack:///./src/assets/process-builder/lib/components/locateElements/LocateElementsService.js","webpack:///./src/assets/process-builder/lib/components/locateElements/LocateElements.js","webpack:///./src/assets/process-builder/lib/components/locateElements/index.js","webpack:///./src/assets/process-builder/lib/components/resizeElements/ResizeElements.js","webpack:///./src/assets/process-builder/lib/components/resizeElements/ResizeElementsBase.js","webpack:///./src/assets/process-builder/lib/components/resizeElements/index.js","webpack:///./src/assets/process-builder/lib/components/copyPasteElements/CopyPasteElements.js","webpack:///./src/assets/process-builder/lib/components/copyPasteElements/ModdleCopy.js","webpack:///./src/assets/process-builder/lib/components/copyPasteElements/index.js","webpack:///./src/assets/process-builder/lib/components/replaceElements/ReplaceElements.js","webpack:///./src/assets/process-builder/lib/components/replaceElements/index.js","webpack:///./src/assets/process-builder/lib/components/popupMenu/services/TypeService.js","webpack:///./src/assets/process-builder/lib/components/replaceElements/ReplaceOptions.js","webpack:///./src/assets/process-builder/lib/components/popupMenu/PopupMenu.js","webpack:///./src/assets/process-builder/lib/components/popupMenu/index.js","webpack:///./src/assets/process-builder/lib/components/modelElements/services/LaneService.js","webpack:///./src/assets/process-builder/lib/components/contextMenu/ContextMenu.js","webpack:///./src/assets/process-builder/lib/components/contextMenu/index.js","webpack:///./src/assets/process-builder/lib/components/distributionCheck/DistributionCheck.js","webpack:///./src/assets/process-builder/lib/components/distributionCheck/index.js","webpack:///./src/assets/process-builder/lib/components/registerActions/RegisterActions.js","webpack:///./src/assets/process-builder/lib/components/registerActions/index.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/SnapToGrid.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/actions/LocateElementsAction.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/actions/CreateParticipantAction.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/actions/LayoutConnectionAction.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/actions/index.js","webpack:///./src/assets/process-builder/lib/components/snapToGrid/index.js","webpack:///./src/assets/process-builder/lib/components/hitZones/HitZones.js","webpack:///./src/assets/process-builder/lib/components/hitZones/index.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/CategoryService.js","webpack:///./src/assets/process-builder/lib/components/labelElements/LabelElements.js","webpack:///./src/assets/process-builder/lib/components/labelElements/LabelElementsPreview.js","webpack:///./src/assets/process-builder/lib/components/labelElements/index.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/AppendAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/AssociationAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/AttachEventAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/BoundaryEventAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/RootElementAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/CreateAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/FixHoverAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/CreateDataObjectAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/CreateParticipantAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DataInputAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/UpdateSemanticParentHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DataStoreAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DeleteDefaultFlowAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DeleteLaneAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DetachEventAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/DropOnFlowAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ElementCollapseAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/EventBasedGatewayAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/GroupAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/LineIntersectService.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ImportDockingFix.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/IsHorizontalFix.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/GeometricService.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/LineAttachmentService.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/LabelLayoutService.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/LabelAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/LabelPositioningAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/MessageFlowAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ModelError.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/RemoveElementAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/RemoveParticipantAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ReplaceConnectionAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ReplaceElementAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/services/ResizeService.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ResizeAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/ResizeLaneAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/SpaceToolAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/SubProcessStartEventAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/UnclaimModelIdAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/UpdateFlowNodeRefsAction.js","webpack:///./src/assets/process-builder/lib/components/modelElements/actions/index.js","webpack:///./src/assets/process-builder/lib/components/snapActions/SnappingService.js","webpack:///./src/assets/process-builder/lib/components/modelRules/ModelRules.js","webpack:///./src/assets/process-builder/lib/components/modelRules/index.js","webpack:///./src/assets/process-builder/lib/components/reorderElements/ReorderElements.js","webpack:///./src/assets/process-builder/lib/components/reorderElements/index.js","webpack:///./src/assets/process-builder/lib/components/orderElements/OrderElements.js","webpack:///./src/assets/process-builder/lib/components/orderElements/index.js","webpack:///./src/assets/process-builder/lib/components/modelElements/BpmnFactory.js","webpack:///./src/assets/process-builder/lib/components/modelElements/BpmnUpdater.js","webpack:///./src/assets/process-builder/lib/components/modelElements/ElementFactory.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/UpdatePropertiesHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/UpdateCanvasRootHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/AddLaneHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/SplitLaneHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/ResizeLaneHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/UpdateFlowNodeRefsHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/IdClaimHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/handlers/SetColorHandler.js","webpack:///./src/assets/process-builder/lib/components/labelElements/handlers/UpdateLabelHandler.js","webpack:///./src/assets/process-builder/lib/components/modelElements/Modeling.js","webpack:///./src/assets/process-builder/lib/components/modelElements/BpmnLayouter.js","webpack:///./src/assets/process-builder/lib/components/modelElements/index.js","webpack:///./src/assets/process-builder/lib/components/elementPalette/ElementPalette.js","webpack:///./src/assets/process-builder/lib/components/elementPalette/index.js","webpack:///./src/assets/process-builder/lib/components/replaceElementsPreview/ReplaceElementsPreview.js","webpack:///./src/assets/process-builder/lib/components/replaceElementsPreview/index.js","webpack:///./src/assets/process-builder/lib/components/snapActions/ConnectSnappingAction.js","webpack:///./src/assets/process-builder/lib/components/snapActions/CreateMoveSnappingAction.js","webpack:///./src/assets/process-builder/lib/components/snapActions/index.js","webpack:///./src/assets/process-builder/lib/Modeler.js","webpack:///./src/assets/bpmn/newDiagram.bpmn","webpack:///src/components/buildprocess.vue","webpack:///./src/components/buildprocess.vue?e413","webpack:///./src/components/buildprocess.vue","webpack:///src/views/BuildProcess.vue","webpack:///./src/views/BuildProcess.vue?05e7","webpack:///./src/views/BuildProcess.vue","webpack:///./src/views/Templates.vue?3c91","webpack:///./src/components/templates.vue?d6b0","webpack:///src/components/templates.vue","webpack:///./src/components/templates.vue?903c","webpack:///./src/components/templates.vue","webpack:///src/views/Templates.vue","webpack:///./src/views/Templates.vue?0fa4","webpack:///./src/views/Templates.vue","webpack:///./src/views/TemplateEditor.vue?f0c7","webpack:///./src/components/templateeditor.vue?0652","webpack:///src/components/templateeditor.vue","webpack:///./src/components/templateeditor.vue?c14d","webpack:///./src/components/templateeditor.vue","webpack:///src/views/TemplateEditor.vue","webpack:///./src/views/TemplateEditor.vue?595c","webpack:///./src/views/TemplateEditor.vue","webpack:///./src/views/Documents.vue?eaf2","webpack:///./src/components/documents.vue?7180","webpack:///src/components/documents.vue","webpack:///./src/components/documents.vue?171f","webpack:///./src/components/documents.vue","webpack:///src/views/Documents.vue","webpack:///./src/views/Documents.vue?1c35","webpack:///./src/views/Documents.vue","webpack:///./src/views/DatabaseTables.vue?130d","webpack:///./src/components/databasetables.vue?8832","webpack:///./src/components/gulper.vue?6445","webpack:///src/components/gulper.vue","webpack:///./src/components/gulper.vue?43af","webpack:///./src/components/gulper.vue","webpack:///src/components/databasetables.vue","webpack:///./src/components/databasetables.vue?f882","webpack:///./src/components/databasetables.vue","webpack:///src/views/DatabaseTables.vue","webpack:///./src/views/DatabaseTables.vue?795a","webpack:///./src/views/DatabaseTables.vue","webpack:///./src/views/ViewTable.vue?f2c5","webpack:///./src/components/viewtable.vue?06a9","webpack:///src/components/viewtable.vue","webpack:///./src/components/viewtable.vue?e3e8","webpack:///./src/components/viewtable.vue","webpack:///src/views/ViewTable.vue","webpack:///./src/views/ViewTable.vue?35b3","webpack:///./src/views/ViewTable.vue","webpack:///./src/views/External.vue?4ec3","webpack:///./src/components/external.vue?19b0","webpack:///./src/components/external.vue?20b4","webpack:///./src/components/external.vue","webpack:///src/views/External.vue","webpack:///./src/views/External.vue?92e6","webpack:///./src/views/External.vue","webpack:///./src/views/ThankYou.vue?04c3","webpack:///./src/components/thankyou.vue?c387","webpack:///src/components/thankyou.vue","webpack:///./src/components/thankyou.vue?bf84","webpack:///./src/components/thankyou.vue","webpack:///src/views/ThankYou.vue","webpack:///./src/views/ThankYou.vue?a8fe","webpack:///./src/views/ThankYou.vue","webpack:///./src/views/OAuthCallback.vue?890c","webpack:///./src/components/oauthcallback.vue?0ce9","webpack:///src/components/oauthcallback.vue","webpack:///./src/components/oauthcallback.vue?982d","webpack:///./src/components/oauthcallback.vue","webpack:///src/views/OAuthCallback.vue","webpack:///./src/views/OAuthCallback.vue?37d9","webpack:///./src/views/OAuthCallback.vue","webpack:///./src/views/Reports.vue?7d1e","webpack:///./src/components/reports.vue?a05c","webpack:///src/components/reports.vue","webpack:///./src/components/reports.vue?ae18","webpack:///./src/components/reports.vue","webpack:///src/views/Reports.vue","webpack:///./src/views/Reports.vue?e806","webpack:///./src/views/Reports.vue","webpack:///./src/views/BuildReport.vue?f88e","webpack:///./src/components/buildreport.vue?072c","webpack:///src/components/buildreport.vue","webpack:///./src/components/buildreport.vue?028e","webpack:///./src/components/buildreport.vue","webpack:///src/views/BuildReport.vue","webpack:///./src/views/BuildReport.vue?c76e","webpack:///./src/views/BuildReport.vue","webpack:///./src/views/ViewReport.vue?6542","webpack:///./src/components/viewreport.vue?e447","webpack:///src/components/viewreport.vue","webpack:///./src/components/viewreport.vue?9c85","webpack:///./src/components/viewreport.vue","webpack:///src/views/ViewReport.vue","webpack:///./src/views/ViewReport.vue?3aae","webpack:///./src/views/ViewReport.vue","webpack:///./src/views/Support.vue?45b7","webpack:///./src/components/support.vue?59ae","webpack:///src/components/support.vue","webpack:///./src/components/support.vue?b8a9","webpack:///./src/components/support.vue","webpack:///src/views/Support.vue","webpack:///./src/views/Support.vue?8699","webpack:///./src/views/Support.vue","webpack:///./src/views/ChangePassword.vue?93d6","webpack:///./src/components/changepw.vue?b8a9","webpack:///src/components/changepw.vue","webpack:///./src/components/changepw.vue?c361","webpack:///./src/components/changepw.vue","webpack:///src/views/ChangePassword.vue","webpack:///./src/views/ChangePassword.vue?2aaf","webpack:///./src/views/ChangePassword.vue","webpack:///./src/router/index.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/CompensateEventDefinition.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/ElementReferenceProperty.js","webpack:///./src/assets/properties-panel/lib/Utils.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/index.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/Name.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/Validator.js","webpack:///src/components/viewtask.vue","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/Helper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/FormProps.js","webpack:///./src/store/modules/processes.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/HarlequinPropertiesProvider.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ErrorsEntries.js","webpack:///./src/assets/properties-panel/lib/handlers/CreateBusinessObjectListHandler.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/ElementTemplatesLoader.js","webpack:///./src/components/buildreport.vue?910e","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/OutputParameters.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Errors.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/External.js","webpack:///./src/components/dashboard.vue?68e6","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/ImplementationType.js","webpack:///./src/views/ViewTable.vue?ee92","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Delegate.js","webpack:///./src/assets/properties-panel/lib/factory/SelectEntryFactory.js","webpack:///./src/store/modules/auth.js","webpack:///./src/assets/properties-panel/lib/factory/AutoSuggestTextBoxFactory.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/EventProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/handlers/index.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/HistoryTimeToLiveProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/HistoryTimeToLive.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/AsyncContinuation.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/InputOutputParameter.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ListenerProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/ErrorsProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/ReplaceBehavior.js","webpack:///./src/assets/properties-panel/lib/helper/AsyncCapableHelper.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/UserTaskProps.js","webpack:///./src/assets/process-builder/lib/components/modelElements/services/ModelingService.js","webpack:///./src/assets/properties-panel/lib/PropertiesPanel.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/ErrorEventDefinition.js","webpack:///./src/components/teamtasks.vue?f4e2","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/implementation/Script.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/implementation/MessageEventDefinition.js","webpack:///./src/assets/properties-panel/lib/handlers/MultiCommandHandler.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/ErrorsProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/element-templates/parts/InputParametersProps.js","webpack:///./src/assets/properties-panel/lib/factory/TableEntryFactory.js","webpack:///./src/store/modules/tasks.js","webpack:///./src/assets/properties-panel/lib/provider/bpmn/parts/DocumentationProps.js","webpack:///./src/assets/properties-panel/lib/index.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/InputParametersProps.js","webpack:///./src/assets/properties-panel/lib/provider/harlequin/parts/CallActivityProps.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","baseURL","process","tenant","apiUsername","apiPassword","apiToken","Buffer","from","toString","state","allGroups","allRoles","deletedGroup","remoteDeletedGroup","addedGroup","remoteAddedGroup","updatedGroup","addedToRole","remoteAddedToRole","newUserRole","addedToGroup","removedFromGroup","usersGroups","remoteGroupTenants","remoteUpdatedGroup","groupExists","getters","actions","getAllGroups","commit","axios","headers","store","token","then","catch","error","Error","getAllRoles","roles","id","remoteGroupTenantCheck","payload","groupTenantInfo","PromiseArr","tenants","engineUrl","tenantId","groupId","resp","Promise","resolve","all","res","forEach","item","index","engineId","tenantName","remoteGroupCheck","enginePayload","groupPayload","status","deleteGroup","delete","remoteDeleteGroup","addGroup","post","put","remoteAddGroup","engineName","tenantSelected","selectedId","tenantInfo","k","allHqConns","ID","URL","ENGINE_NAME","remoteCheckPayload","dispatch","res2","msg","updateGroup","remoteUpdateGroup","addUserToRole","userId","remoteAddUserToRole","rolePayload","updateUserRole","removeRole","addRole","remoteUpdateUserRole","addUsersToGroup","users","updatePayload","remoteAddUsersToGroup","removeUsersFromGroup","remoteRemoveUsersFromGroup","getUsersGroups","currentUser","mutations","ALL_GROUPS","ALL_ROLES","DELETED_GROUP","REMOTE_DELETED_GROUP","ADDED_GROUP","REMOTE_ADDED_GROUP","UPDATED_GROUP","REMOTE_UPDATED_GROUP","ADDED_TO_ROLE","REMOTE_ADDED_TO_ROLE","NEW_USER_ROLE","ADDED_TO_GROUP","REMOVED_FROM_GROUP","USERS_GROUPS","REMOTE_GROUP_TENANTS","GROUP_EXISTS","outputParameters","require","group","element","bpmnFactory","translate","outputParametersEntry","idPrefix","insideConnector","entries","concat","ModelUtil","is","getBusinessObject","extensionElementsHelper","implementationTypeHelper","InputOutputHelper","getElements","bo","type","prop","elems","getExtensionElements","getParameters","inputOutput","getInputOutput","connector","this","getConnector","getServiceTaskLikeBusinessObject","getInputParameters","getOutputParameters","getInputParameter","idx","getOutputParameter","isInputOutputSupported","areOutputParametersSupported","loopCharacteristics","assign","fieldInjection","options","insideListener","fieldInjectionEntry","nameEntryFactory","createCategoryValue","canvas","initializeCategory","semantic","rootElement","getRootElement","definitions","$parent","categoryValue","categoryValueRef","setGroupName","values","cmd","context","newLabel","getGroupName","nameOptions","label","modelProperty","set","allTenants","storageDetails","savedStorageDetails","serverDetails","savedServerDetails","ssoDetails","savedSsoDetails","samlMetadata","availableLdapUsers","availableLdapGroups","availableLdapTree","ldapStoreStatus","ldapGetStatus","ldapSelectStatus","ldapSyncUserData","ldapSyncGroupData","ldapSelectedData","ldapGroupUserAdded","ldapUserAdded","ldapGroupUsersAdded","savedTemplate","templateId","templateName","templateKey","templateType","templateAction","templateData","lastTab","allDocTemplates","allEmailTemplates","deletedTemplate","allExtDbs","dbConnAdded","dbConnEdited","dbConnDeleted","checkEngine","hqConnAdded","hqConnEdited","hqConnDeleted","tenantsAdded","remoteTenants","allApis","apiAdded","apiUpdated","apiDeleted","operationLog","operationLogError","operationLogUpdated","errorLog","errorLogError","promoteTemplateData","promoteTemplateRes","licenseStartDate","licenseExpiryDate","licenseKeyUpdated","enableProcessUndeploy","enableProcessDeletion","enablePentestMode","supportRequest","supportEmail","resetKeyCreated","resetKeyRemoved","resetUid","getAllTenants","getLicense","variables","startDate","expiryDate","setLicense","processSettings","action","enableUndeploy","enableDeletion","enablePentest","saveStorageDetails","localEnabled","officeEnabled","officeTenantId","officeClientId","officeClientSecret","officeGroupName","officeUploadPath","getStorageDetails","JSON","parse","storageSettings","storageKeys","keys","skey","getExternalStorageDetails","saveServerDetails","emailType","emailGraphClientId","emailGraphClientSecret","emailGraphEmailId","emailGraphTenantId","emailHost","emailPort","emailTls","emailSender","emailUsername","emailPassword","getServerDetails","serverSettings","saveSsoDetails","spUrl","location","href","replace","msalEnabled","msalClientId","msalAuthority","msalRedirectUri","msalAuthState","samlEnabled","samlIpId","samlIpSls","samlIpSos","samlSpAcs","samlSpId","samlSpSls","samlIpEmailAttr","samlIpFirstAttr","samlIpLastAttr","samlIpCfr","samlSigAlg","samlIpCert","ldapEnabled","ldapLoginEnabled","ldapServer","ldapPort","ldapUsername","ldapPassword","ldapBaseDn","ldapIdentifier","ldapUsersCn","ldapGroupsCn","ldapTls","saveAutoSyncDetails","ldapAutoSync","ldapAutoSyncTime","getSsoDetails","ssoSettings","ssoKeys","getSamlMetadata","ldapSelect","selectStatus","userData","allUsers","groupData","treeData","itemId","ouList","dn","distinguishedName","dnParts","split","previousOu","currentItem","reverse","dnType","substring","ouData","itemExists","findItemNested","arr","itemName","nestingKey","reduce","a","itemFound","prevItem","children","cn","getCurrentLdapSelection","currentLdapGroupsSelected","currentLdapUsersSelected","groupUsers","member","objectGUID","guid","sAMAccountName","acc","user","username","memberOf","givenName","sn","mail","retPayload","saveLdapItems","ldapUsers","ldapGroups","storeStatus","getLdapItems","getStatus","ldapSyncGroups","retData","groupUser","grpPayload","ldapAddGroup","rootState","groups","ldapAddUser","firstName","lastName","email","userExists","uName","str","chars","charAt","Math","floor","random","ldapAddUsersToGroup","inGroup","assignedUsers","usersToAdd","ldapSyncUsers","removeLdapUsers","ldapUsersToRemove","removeUser","removeLdapGroups","ldapGroupsToRemove","role","removeLdapUserFromGroup","removeFromGroup","groupCn","usersToRemove","getAllTemplates","docTemplates","emailTemplates","getTemplateData","saveTemplate","deleteTemplate","promoteTemplatesCheck","promotes","engine","promoteTemplates","getAllConnections","addDbConnection","dbConnType","dbName","dbIpAddr","dbPort","dbUser","dbPass","connectionTest","editDbConnection","dbConnId","deleteDbConnection","hqUrl","getAllHqConnections","addHqConnection","hqName","tenantData","hqConnId","editHqConnection","deleteHqConnection","addRemoteTenants","stringify","getAllRemoteTenants","refreshRemoteTenants","getAllApis","addApi","authType","basicUser","basicPass","apiKey","apiValue","grantType","clientId","clientSecret","endpoint","editApi","deleteApi","apiId","updateOpLog","logData","category","caseId","processName","taskName","operation","dateTime","updateExternalOpLog","getOpLog","dateFrom","dateTo","opLog","getErrorLog","sendSupportRequest","to","body","fileData","fileName","mimeType","supportSettings","createLookupKey","success","getLookupKey","uid","removeLookupKey","ALL_TENANTS","STORAGE_DETAILS","SAVED_STORAGE_DETAILS","SERVER_DETAILS","SAVED_SERVER_DETAILS","SSO_DETAILS","SAVED_SSO_DETAILS","SAML_METADATA","LDAP_USER_DATA","LDAP_GROUP_DATA","LDAP_TREE_DATA","LDAP_STORE_STATUS","LDAP_GET_STATUS","LDAP_SELECT_STATUS","LDAP_SYNC_USER_DATA","LDAP_SYNC_GROUP_DATA","LDAP_SELECTED_DATA","LDAP_GROUP_USER_ADDED","LDAP_USER_ADDED","LDAP_GROUP_USERS_ADDED","SAVED_TEMPLATE","UPDATE_TEMPLATE_ID","UPDATE_TEMPLATE_NAME","UPDATE_TEMPLATE_KEY","UPDATE_TEMPLATE_TYPE","UPDATE_TEMPLATE_ACTION","UPDATE_LAST_TAB","TEMPLATE_DATA","DOC_TEMPLATES","EMAIL_TEMPLATES","DELETED_TEMPLATE","EXT_DB_CONNECTIONS","DB_CONN_ADDED","DB_CONN_EDITED","DB_CONN_DELETED","CHECK_ENGINE","HQ_CONNECTIONS","TENANT_INFO","HQ_CONN_ADDED","HQ_CONN_EDITED","HQ_CONN_DELETED","TENANTS_ADDED","REMOTE_TENANTS","ALL_APIS","API_ADDED","API_UPDATED","API_DELETED","OP_LOG","OP_LOG_UPDATED","OP_LOG_ERROR_MSG","ERROR_LOG","ERROR_LOG_ERROR_MSG","PROMOTE_TEMPLATE_DATA","PROMOTE_TEMPLATE_RES","LICENSE_START_DATE","LICENSE_EXPIRY_DATE","LICENSE_KEY_UPDATED","ENABLE_PROCESS_UNDEPLOY","ENABLE_PROCESS_DELETION","ENABLE_PENTEST_MODE","SUPPORT_REQUEST","SUPPORT_EMAIL","RESET_KEY_CREATED","RESET_KEY_REMOVED","RESET_UID","collectionAdd","add","CategoryHelper","elementHelper","cmdHelper","entryFactory","getTimerDefinitionType","timer","timeDate","timeCycle","timeDuration","getTimerDefinition","timerOrFunction","node","createFormalExpression","parent","undefined","createElement","TimerEventDefinition","timerEventDefinition","selectOptions","prefix","createTimerEventDefinition","selectBox","emptyParameter","timerDefinition","timerDefinitionType","props","newType","oldType","definition","updateBusinessObject","hidden","textField","validate","find","ImplementationTypeHelper","scriptImplementation","timerImplementation","isTimeoutTaskListener","listener","eventType","event","getTimerEventDefinition","eventDefinitions","LISTENER_TYPE_LABEL","class","expression","delegateExpression","script","getSelectedListener","classProp","expressionProp","delegateExpressionProp","scriptProp","executionListenerEventTypeOptions","isSequenceFlow","taskListenerEventTypeOptions","isSelected","eventTypeOptions","selectedListener","isTaskListener","isExecutionListener","listenerId","update","listenerType","getImplementationType","dataValueLabel","listenerValueLabel","listenerValue","html","template","isScript","timerEventDefinitionHandler","timerOptions","factory","utils","generatePropertyId","nextId","getPropertyValues","properties","getPropertiesElement","isExtensionElements","getPropertiesElementInsideExtensionElements","extensionElements","elem","getParent","modelProperties","createParent","addLabel","addElement","commands","addAndRemoveElementsFromList","propertyProps","indexOf","addElementsTolist","updateElement","validationError","isIdValid","removeElement","propertyValues","currentProperty","removeElementsFromList","removeEntry","table","isObject","scopes","scopesAsArray","scopeName","ExtensionElementsHelper","elements","extensionValues","filter","entry","HANDLERS","CommandInitializer","eventBus","commandStack","on","handler","registerHandler","$inject","__init__","flatten","isString","isUndefined","getTemplateId","getTemplateVersion","isAny","ElementTemplates","_templates","version","templates","getDefault","getAll","appliesTo","isDefault","map","self","asyncCapableHelper","eventDefinitionHelper","isAsyncBefore","isAsyncAfter","getFailedJobRetryTimeCycle","removeFailedJobRetryTimeCycle","createExtensionElements","createFailedJobRetryTimeCycle","cycle","labelPrefix","retryTimeCycleEntry","retryTimeCycle","newCycle","validationAwareTextField","description","getProperty","setProperty","labelTarget","updateProperties","idValue","idError","escapeHTML","domQuery","query","Collapsible","title","open","onToggle","noop","onRemove","cssClasses","collapsibleEntry","toggle","isOpen","setOpen","entryNode","_commands","scope","classList","scheduleCommands","input","actionId","ParticipantHelper","modifyProcessBusinessObject","getProcessBusinessObject","propertyName","chkeys","checkReqKey","ckey","fileSize","Date","ref","$store","uploadKey","uploadedKeys","checkValidation","formData","__depends__","default","customElementsPropertiesActivator","elementTemplates","elementTemplatesLoader","replaceBehavior","isStartableInTasklistEntry","checkbox","isStartableInTasklist","inputOutputHelper","entryFieldDescription","InputOutputParameter","getParametersHeading","createInputOutput","inputParameters","newElem","createParameter","generateElementId","_","getInputParameterEntries","params","param","currentEntryId","dataset","inputParameter","parentElement","append","array","items","Array","arrays","parametersOptions","domify","toggleSwitch","defaultParameters","resource","canBeHidden","isOn","descriptionOn","descriptionOff","labelOn","labelOff","document","createDocumentFragment","appendChild","show","shouldShow","arguments","isOff","canBeDisabled","disabled","isDisabled","isHidden","extensionElementsEntry","DEFAULT_PROPS","HARLEQUIN_FIELD_EXTENSION_ELEMENT","businessObject","getSelectedField","selected","fieldEntry","getSelected","parentNode","fields","getHarlequinFields","getHarlequinListenerFields","getFieldType","fieldType","expressionValue","stringValue","string","setOptionLabelValue","option","harlequinFields","field","text","newElement","newFieldElem","idGeneration","createExtensionElement","removeExtensionElement","selectedField","fieldName","validation","nameValue","containsSpace","fieldTypeOptions","textBox","fieldValue","CmdHelper","newProperties","listPropertyName","objectsToAdd","objectsToPrepend","currentObject","referencePropertyName","objectsToRemove","setList","updatedObjectList","getHarlequinInOutMappings","signalEventDefinition","getSignalEventDefinition","getVariableMappings","harlequinMappings","mapping","businessKey","getInOutType","inOutType","source","sourceExpression","HARLEQUIN_IN_EXTENSION_ELEMENT","HARLEQUIN_OUT_EXTENSION_ELEMENT","WHITESPACE_REGEX","inOutTypeOptions","selection","inEntry","parameter","outEntry","variableMappings","mappingValue","target","mappingType","variablesMappings","resizable","onSelectionChange","deselect","showLabel","sourceLabel","toLowerCase","test","selectedMapping","local","externalTaskPriority","externalTaskPriorityEntry","taskPriority","DEFAULT_PRIORITY","PropertiesActivator","priority","tab","isEntryVisible","isPropertyEditable","domClosest","closest","getSelectBox","currentTab","selectedIndex","CREATE_EXTENSION_ELEMENT_ACTION","REMOVE_EXTENSION_ELEMENT_ACTION","canCreate","canRemove","hideElements","hideExtensionElements","defaultSize","size","reference","selectionChanged","createOption","initSelectionSize","optionsLength","extensionElementValue","__action","createListEntryTemplate","setControlValue","generatedId","lastChild","removeChild","scopeNode","disableRemove","selectElement","EventDefinitionHelper","getEventDefinition","eventDefinition","getMessageEventDefinition","getErrorEventDefinition","getEscalationEventDefinition","getCompensateEventDefinition","getLinkEventDefinition","getConditionalEventDefinition","isConnector","connectorId","findExtension","findOutputParameter","createOutputParameter","domClasses","classes","domEvent","HARLEQUIN_OUTPUT_PARAMETER_TYPE","MAX_DESCRIPTION_LENGTH","EMPTY_PARAMETER","createDescriptionEntry","descriptionText","toggleExpanded","expanded","textContent","expand","remove","descriptionShortened","removeOutputParameter","binding","updates","outputParameter","createNewOutputParameter","outputEntries","collapsible","renderOutputParameter","templateProperty","parameterEntries","getParameter","assignmentIsOn","isActive","variableName","participantHelper","executableEntry","allReports","reportAction","rTitle","rDesc","rSql","rGroups","rData","reportId","reportSqlData","savedReport","reportLocked","reportLockedUser","lockedReports","copiedReport","deletedReport","fieldsReady","editingReport","promoteReportData","promoteReportRes","getAllReports","reports","getReport","lockedBy","reportTitle","reportDesc","reportSql","reportGroups","reportData","copyReport","createdOn","createdBy","deleteReport","reportLockCheck","checkType","runReport","sqlData","saveReport","updatedBy","updatedOn","lastId","promoteReportsCheck","promoteReports","ALL_REPORTS","REPORT_TITLE","REPORT_DESC","REPORT_SQL","REPORT_GROUPS","REPORT_DATA","UPDATE_REPORT_ACTION","UPDATE_REPORT_ID","SAVED_REPORT","REPORT_SQL_DATA","REPORT_LOCK_CHECK","REPORT_LOCK_CHECK_ALL","COPIED_REPORT","DELETED_REPORT","FIELDS_READY","EDITING_REPORT","PROMOTE_REPORT_DATA","PROMOTE_REPORT_RES","Vue","use","Vuex","getDefaultState","auth","admin","files","tables","tasks","adminUsersSortField","adminUsersSortOrder","adminGroupsSortField","adminGroupsSortOrder","adminExtDbSortField","adminExtDbSortOrder","adminHqConnSortField","adminHqConnSortOrder","adminApiSortField","adminApiSortOrder","adminOpLogSortField","adminOpLogSortOrder","refreshInterval","allTasksSortField","allTasksSortOrder","databaseTablesSortField","databaseTablesSortOrder","documentsSortField","documentsSortOrder","formBuilderSortField","formBuilderSortOrder","historicCasesSortField","historicCasesSortOrder","myTasksSortField","myTasksSortOrder","designSortField","designSortOrder","deployedSortField","deployedSortOrder","reportSortField","reportSortOrder","runningCasesSortField","runningCasesSortOrder","startCaseSortField","startCaseSortOrder","teamTasksSortField","teamTasksSortOrder","docTemplateSortField","docTemplateSortOrder","emailTemplateSortField","emailTemplateSortOrder","unnasignedTasksSortField","unassignedTasksSortOrder","viewTableSortOrder","viewTableSortField","taskCompleteInt","currentUserFullname","currentUserEmail","randomKey","xAuthToken","extAuthToken","currentRole","isAdmin","isDeveloper","isSupervisor","isManager","isLoggedIn","msalSsoEnabled","samlSsoEnabled","userGroups","setAdminUsersSortField","setAdminUsersSortOrder","setAdminGroupsSortField","setAdminGroupsSortOrder","setAdminExtDbSortField","setAdminExtDbSortOrder","setAdminHqConnSortField","setAdminHqConnSortOrder","setAdminApiSortField","setAdminApiSortOrder","setAdminOpLogSortField","setAdminOpLogSortOrder","setRefreshInterval","setAllTasksSortField","setAllTasksSortOrder","setDatabaseTablesSortField","setDatabaseTablesSortOrder","setDocumentsSortField","setDocumentsSortOrder","setFormBuilderSortField","setFormBuilderSortOrder","setHistoricCasesSortField","setHistoricCasesSortOrder","setMyTasksSortField","setMyTasksSortOrder","setDesignSortField","setDesignSortOrder","setDeployedSortField","setDeployedSortOrder","setReportSortField","setReportSortOrder","setRunningCasesSortField","setRunningCasesSortOrder","setStartCaseSortField","setStartCaseSortOrder","setTeamTasksSortField","setTeamTasksSortOrder","setDocTemplateSortField","setDocTemplateSortOrder","setEmailTemplateSortField","setEmailTemplateSortOrder","setUnnasignedTasksSortField","setUnassignedTasksSortOrder","setViewTableSortOrder","setViewTableSortField","setTaskCompleteInt","setToken","setCurrentUser","setCurrentUserFullname","setCurrentUserEmail","setTenant","setEngineUrl","setRandomKey","setXAuthToken","setExtAuthToken","setCurrentRole","setIsAdmin","setIsDeveloper","setIsSupervisor","setIsManager","setIsLoggedIn","setMsalSsoEnabled","setSamlSsoEnabled","setLdapEnabled","setUserGroups","reset","defaultState","clearAll","Store","plugins","createPersistedState","storage","sessionStorage","reducer","TEMPLATE_ID_ATTR","TEMPLATE_VERSION_ATTR","e","findExtensions","types","findHarlequinInOut","matcher","isInOut","findHarlequinProperty","harlequinProperties","findInputParameter","parameters","scriptFormat","findHarlequinErrorEventDefinition","bindingErrorRef","errorEventDefinitions","errorRef","getListeners","HARLEQUIN_EXECUTION_LISTENER_ELEMENT","HARLEQUIN_TASK_LISTENER_ELEMENT","executionListenerEntry","taskListenerEntry","listeners","initialEvent","processRef","triggerClickEvent","implementationType","delegate","external","callable","resultVariable","isDmnCapable","isExternalCapable","isServiceTaskLike","getTabNode","el","containerEl","hasDmnSupport","hasExternalSupport","hasServiceTaskLikeSupport","hideResultVariable","getCallableType","link","buttonLabel","handleClick","connectorTabEl","showLink","innerHTML","UpdateBusinessObjectListHandler","elementRegistry","_elementRegistry","_bpmnFactory","ensureNotNull","execute","changed","objectList","previousList","listCopy","parentObject","revert","__lastInvalidValue","validationErrors","propertyValue","webpackContext","req","webpackContextResolve","code","jobPriorityEntry","jobPriority","createHarlequinProperty","createInputParameter","createHarlequinIn","createHarlequinOut","createHarlequinInWithBusinessKey","createHarlequinFieldInjection","createHarlequinErrorEventDefinition","createError","handleLegacyScopes","getRoot","PROPERTY_TYPE","HARLEQUIN_PROPERTY_TYPE","HARLEQUIN_INPUT_PARAMETER_TYPE","HARLEQUIN_IN_TYPE","HARLEQUIN_OUT_TYPE","HARLEQUIN_IN_BUSINESS_KEY_TYPE","HARLEQUIN_EXECUTION_LISTENER_TYPE","HARLEQUIN_FIELD","HARLEQUIN_ERROR_EVENT_DEFINITION","BASIC_MODDLE_TYPES","EXTENSION_BINDING_TYPES","IO_BINDING_TYPES","IN_OUT_BINDING_TYPES","propertyGetter","getPropertyValue","objectWithKey","propertySetter","setPropertyValue","propertyValidator","validateValue","harlequinProperty","ioParameter","ioElement","executionListener","errorEventDefinition","bindingType","bindingName","findScopeElement","fieldInjections","unknownPropertyBinding","existingHarlequinProperty","newHarlequinProperty","existingIoParameter","newIoParameter","existingInOut","newInOut","language","moddlePropertyDescriptor","$descriptor","propertiesByName","moddleType","parseInt","isNaN","existingFieldInjections","newFieldInjections","existingErrorEventDefinition","newError","newEventDefinition","console","warn","constraints","notEmpty","isEmpty","maxLength","minLength","message","pattern","matchesPattern","propertyWithScope","scopeId","obj","regexp","RegExp","getDefaultType","renderCustomField","propertyType","entryOptions","choices","customFieldsGroup","scopeType","idScopeName","customScopeFieldsGroup","propertyId","scopedProperty","UpdateBusinessObjectHandler","getProperties","propertyNames","setProperties","rootElements","referenceType","referenceProperty","oldProperties","conditionalEventDefinition","isConditionalSource","conditionExpression","condition","conditionType","conditionLanguage","containerElement","conditionOrConditionExpression","conditionProps","validationResult","isExpression","inputNode","clear","canClear","CONDITIONAL_SOURCES","UpdateModdlePropertiesHandler","getModdleProperties","moddleElement","setModdleProperties","getAllDataObjectReferences","dataObject","dataObjectRef","getVisualReferences","DEFAULT_LABEL_SIZE","width","height","FLOW_LABEL_INDENT","wrapForCompatibility","api","argLen","isFunction","callback","argsWithoutCallback","firstKey","err","warnings","isExpanded","di","isInterrupting","isEventSubProcess","triggeredByEvent","hasEventDefinition","hasErrorEventDefinition","hasEscalationEventDefinition","hasCompensateEventDefinition","isLabelExternal","hasExternalLabel","isLabel","getFlowLabelPosition","waypoints","mid","firstIndex","secondIndex","ceil","first","second","position","getWaypointsMid","angle","atan","y","x","abs","PI","getExternalLabelMid","isGroup","isDefaultLabelPosition","getExternalLabelBounds","bounds","max","$instanceOf","escapeText","match","escaped","exec","join","encodeURI","versionTagEntry","processBo","versionTag","jobRetryTimeCycle","textInputField","checkboxField","selectBoxField","comboBoxField","textBoxField","validationAwareTextInputField","tableField","labelEntry","autoSuggestTextBoxField","setDefaultParameters","defaultGet","defaultSet","defaultValidate","EntryFactory","comboBox","autoSuggest","_vm","_h","$createElement","_c","_self","staticClass","attrs","staticRenderFns","mini","model","$$v","drawer","hqLogo","_l","includes","icon","route","editingForm","editingProcess","$event","clearData","content","_v","_s","_e","$t","currentYear","stopPropagation","setWidth","staticStyle","$route","meta","loggedInUser","authenticatedUser","openSettings","logout","settingsDialog","changePw","supportedLanguages","selectedLanguage","changeLanguage","snackColor","scopedSlots","_u","fn","_b","snack","snackText","changePwDialog","passwordPolicy","isFormValid","showPass","rules","password","password1","showPass2","required","passMatch","password2","cancelChangePw","confirmChangePw","logoutTimer","clearTimeout","timeOutObj","setTimeout","computed","$i18n","locale","fab","counterInterval","samlAuthInterval","autoLogoutTime","navItem","getFullYear","created","storedLanguage","browserLanguage","onreadystatechange","readyState","addEventListener","unsubscribe","subscribe","beforeDestroy","mounted","methods","refreshHqConnections","$refs","changePwForm","resetValidation","localStorage","setItem","refreshNotifications","setInterval","getCounters","clearInterval","checkSamlAuth","setAttribute","setBadges","myTasksCount","unassignedTasksCount","snackPwSuccess","snackTimeout","snackPwError","updateLog","component","VAppBar","VAppBarNavIcon","VBadge","VBtn","VCard","VCardActions","VCardText","VCardTitle","VCol","VDialog","VForm","VIcon","VImg","VList","VListItem","VListItemAction","VListItemTitle","VNavigationDrawer","VRow","VSelect","VSnackbar","VSpacer","VTextField","VToolbar","VToolbarTitle","components","navbar","VApp","VContainer","VMain","Vuetify","VCardSubtitle","VTooltip","VAutocomplete","VTextarea","VCheckbox","VCombobox","VSwitch","VBtnToggle","VFileInput","VSlider","VRadio","VRadioGroup","VDatePicker","VTimePicker","VMenu","VSubheader","directives","Ripple","Intersect","Touch","Resize","ClickOutside","icons","iconfont","theme","themes","light","primary","colors","orange","darken2","secondary","blue","loadLocaleMessages","locales","messages","matched","VueI18n","VUE_APP_I18N_LOCALE","fallbackLocale","VUE_APP_I18N_FALLBACK_LOCALE","globalInjection","config","productionTip","router","vuetify","i18n","render","h","App","$mount","getOption","getOptions","ELEMENT_TEMPLATE_OPTION_EMPTY","isNull","pick","applyTemplate","newTemplate","oldTemplate","elementTemplateOption","optionId","CreateAndReferenceElementHandler","referencingObject","newObject","newObjectContainer","newObjectParent","referencedObject","previousReference","createHarlequinExecutionListenerScript","HARLEQUIN_SERVICE_TASK_LIKE","ChangeElementTemplateHandler","modeling","_commandStack","_modeling","findOldBusinessObject","oldProperty","oldBinding","oldBindingType","oldBusinessObject","findOldProperty","newProperty","newBinding","newBindingName","newBindingType","oldBindingName","newBindingRef","oldBindingRef","findOldScopeElement","scopeTemplate","errorEventDefinitionBinding","findErrorEventDefinitionBinding","isRootElementScope","findOldScopeTemplate","templateErrorId","propertyChanged","oldPropertyValue","preExecute","_updateHarlequinModelerTemplate","_updateProperties","_updateHarlequinExecutionListenerProperties","_updateHarlequinFieldProperties","_updateHarlequinInOutProperties","_updateHarlequinInputOutputParameterProperties","_updateHarlequinPropertyProperties","_updateHarlequinErrorEventDefinitionProperties","newScopeTemplate","_updateScopeProperties","_getOrCreateExtensionElements","oldErrorEventDefinitions","oldEventDefinition","oldExecutionListeners","newExecutionListeners","oldFields","oldField","oldInsAndOuts","newInOrOut","oldInOurOut","newPropertyValue","oldInputs","oldOutputs","newInputOrOutput","oldInputOrOutput","oldHarlequinProperties","oldHarlequinProperty","_updateConditionExpression","changedElement","harlequinServiceTaskLikeProperty","scopeElement","oldScopeTemplate","eventDefinitionReference","elementReferenceProperty","elementName","elementType","newElementIdPrefix","shouldValidate","attributeInfo","bpmn","cmmn","dmn","mapDecisionResultOptions","delegateVariableMappingOptions","getHarlequinInWithBusinessKey","harlequinIn","harlequinInParams","setBusinessKey","harlequinInWithBusinessKey","deleteBusinessKey","harlequinInExtensions","isSupportedCallableType","bindingOptions","getAttribute","getCallActivityBindingValue","attr","getDelegateVariableMappingType","boVariableMappingClass","boVariableMappingDelegateExpression","delegateVariableMappingType","callableElementRef","callableElementLabel","newCallableElementRef","elementRef","bindingOption","callableBinding","attrVer","attrVerTag","callableVersion","callableBusinessKey","mapDecisionResult","delegateVariableMapping","delegateVariableMappingLabel","inputParametersEntry","propertiesEntry","labels","domAttr","selector","findElementById","findRootElementsByType","isShown","updateOptionsDropDown","selectedElement","root","optionTemplate","insertBefore","firstChild","boResultVariable","scriptResultVariable","FormHelper","getFormData","getFormFields","getFormField","formFields","getConstraints","formField","getEnumValues","getLoopCharacteristics","getBody","getLoopCardinality","getLoopCardinalityValue","loopCardinality","getCompletionCondition","getCompletionConditionValue","completionCondition","getCollection","getElementVariable","updateFormalExpression","newValue","expressionProps","existingExpression","isValid","notification","collection","elementVariable","showErrorCodeVariable","showErrorMessageVariable","getValue","modelPropertyValue","setValue","targetValue","errorCodeVariable","errorMessageVariable","inherits","isBoolean","isNumber","HIGHER_PRIORITY","CustomElementsPropertiesActivator","isEntryEditable","CUSTOM_PROPERTIES_PATTERN","DEFAULT_ENTRIES_VISIBLE","_all","isCustomEntry","entryId","entriesVisible","defaultVisible","entryVisible","editable","idxAsNumber","throwError","idxOrScope","entryParts","findScopeForName","divider","labelText","tasklist","processIdDescription","idEntry","processId","processIdError","processNameEntry","asyncContinuation","minDash","escapedChars","A_CODE","charCodeAt","pointers","line","column","pos","bigint","BigInt","_parse","ptr","topLevel","whitespace","char","getChar","read","parseString","parseArray","parseObject","backChar","parseNumber","unexpectedToken","loop","getCharCode","wasUnexpectedToken","numStr","integer","getDigits","Number","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","itemPtr","loc","getLoc","propPtr","escapeJsonPointer","mapLoc","checkUnexpectedEnd","count","String","fromCharCode","digits","SyntaxError","validType","wsPos","wsColumn","wsLine","space","len","repeat","json","es6","Map","_stringify","_data","lvl","out","quoted","toJSON","isArray","stringifyArray","constructor","BYTES_PER_ELEMENT","stringifyMapSet","Set","stringifyObject","itemLvl","indent","propLvl","isSet","next","done","VALID_TYPES","ESC_QUOTE","ESC_B","ESC_F","ESC_N","ESC_R","ESC_T","ESC_0","ESC_1","jsonSourceMap","fastDeepEqual","equal","b","flags","valueOf","standaloneValidator","validate14","_default","schema17","schema18","pattern0","obj0","validate16","dataPath","vErrors","parentData","parentDataProperty","rootData","errors","key0","err0","keyword","schemaPath","emErrs0","err1","emUsed","err2","emErrs1","err3","data1","data2","len0","i0","data3","_errs12","valid7","_errs13","err4","err5","_valid0","_errs15","err6","missingProperty","emErrs2","err7","err8","emErrs3","err9","err10","failingKeyword","_errs17","valid9","_errs18","err11","data5","err12","err13","_valid1","_errs21","data7","err14","allowedValues","allOf","enum","emErrs4","err15","err16","emErrs5","err17","err18","_errs24","valid13","_errs25","err19","data8","err20","err21","_valid2","_errs28","err22","emErrs6","err23","err24","emErrs7","err25","err26","_errs31","valid17","_errs32","err27","data11","err28","data12","err29","_valid3","_errs35","data13","err30","emErrs8","err31","err32","emErrs9","err33","err34","_errs38","valid21","_errs39","err35","data14","err36","data15","err37","_valid4","_errs42","data16","err38","emErrs10","err39","err40","emErrs11","err41","err42","err43","data17","err44","err45","err46","err47","err48","data22","len1","i1","data23","err49","err50","err51","err52","err53","emErrs12","err54","err55","emErrs13","err56","err57","data26","_errs65","valid30","_errs66","err58","data27","err59","_valid5","_errs68","err60","emErrs14","err61","err62","emErrs15","err63","err64","_errs70","valid32","_errs71","err65","err66","_valid6","_errs73","err67","emErrs16","err68","err69","emErrs17","err70","err71","_errs75","valid34","_errs76","err72","err73","_valid7","_errs78","_errs79","valid36","passing0","_errs80","err74","_valid8","_errs81","err75","err76","passingSchemas","emErrs18","err77","err78","emErrs19","err79","err80","_errs83","valid37","_errs84","err81","err82","_valid9","_errs86","_errs87","valid39","passing1","_errs88","err83","_valid10","_errs89","err84","_errs90","err85","err86","emErrs20","err87","err88","emErrs21","err89","err90","_errs92","valid40","_errs93","err91","err92","_valid11","_errs95","_errs96","valid42","passing2","_errs97","err93","_valid12","err94","emErrs22","err95","err96","emErrs23","err97","err98","err99","data32","err100","err101","emErrs24","err102","err103","emErrs25","err104","err105","err106","err107","err108","err109","err110","data39","err111","err112","err113","err114","data41","err115","err116","err117","data45","_errs125","valid45","passing3","_errs126","err118","err119","err120","_valid13","_errs132","err121","err122","err123","err124","emPropParams0","emParamsErrors0","emErrors0","templates0","err125","key1","keyProp0","tmpl0","err126","errorMessage","emErrs26","err127","err128","err129","err130","schema21","validate18","data0","_errs4","valid3","_errs5","_errs7","data4","_errs16","valid10","_errs19","valid12","_errs22","data6","valid16","_errs29","data9","valid20","_errs36","valid24","_errs43","_errs46","data18","len2","i2","data24","_errs69","valid33","data28","_errs72","_errs74","valid35","_errs77","_errs82","_errs85","_errs91","_errs94","valid43","_errs99","_errs100","_errs101","data33","emErrs27","data40","data42","data46","_errs129","valid48","_errs130","_valid14","_errs136","err131","err132","err133","err134","err135","err136","emErrs28","err137","err138","err139","emPropParams1","emParamsErrors1","emErrors1","templates1","err140","keyProp1","tmpl1","err141","emErrs29","err142","err143","validate15","_errs26","_errs27","data10","_errs30","_errs33","_errs34","_errs37","_errs40","_errs41","_errs44","_errs47","_errs48","data19","data20","_errs51","data21","data31","_errs98","_errs102","_errs104","_errs105","_errs106","data37","data44","data50","_errs134","_errs135","_errs141","metadata","data53","data54","_errs146","valid47","passing4","_errs147","_errs148","data55","emErrors2","templates2","err144","key2","err145","err146","_errs0","valid0","_errs1","_errs2","getSchemaVersion","dataPointerMap","generateDataPointerMap","valid","wrapRawErrors","ignoreSupportiveErrors","setDataPointer","validateAll","objects","results","allValid","rawErrors","pointer","dataPointer","getVersionOrDateFromTemplate","getEventDefinitionType","$type","createTemplateNotFoundEntry","createUpdateTemplateEntry","oldElementTemplate","newElementTemplate","newElementTemplateVersion","findNewestElementTemplate","currentElementTemplate","elementTemplate","newestElementTemplate","dropdown","menu","onClick","eventDefinitionType","replaceElement","select","parameterValue","parameterDefinition","createHarlequinInOutAttrs","newErrorEventDefinition","escalationEventDefinition","showEscalationCodeVariable","codeVariable","escalationCodeVariable","extensionsElementHelper","isListener","messageEventDefinition","decisionRef","connectors","cls","msAuthToken","msGroupId","msParentFolderId","msUploadFolderId","fileBuffer","fileBufferError","uploadedFileData","uploadSuccessful","uploadError","fileDataSaved","imageDataSaved","taskFiles","caseFiles","allFiles","deletedFile","downloadFileName","downloadFileUrl","gulperUrl","gulperFileHeaders","gulperFilePreview","gulped","file","reject","reader","FileReader","onloadend","onerror","readAsArrayBuffer","getMSAuth","qs","grant_type","client_id","client_secret","response","error_description","access_token","uploadFilesToMS","groupName","path","folderExists","folderName","newFolder","arrayBuffer","uploadFile","msUploadSessionUrl","sessionBody","session","msUploadUrl","uploadUrl","webUrl","uploadFileData","cdate","createdDateTime","Intl","DateTimeFormat","day","month","year","hour","minute","hour12","format","storageType","uploadExternalFileData","uploadImageData","uploadGulperData","requestType","headerRow","fileHeaders","filePreview","importGulperData","targetTable","url","columns","getTaskFiles","getCaseFiles","getExternalCaseFiles","getAllFiles","downloadFile","byteCharacters","atob","byteNumbers","byteArray","Uint8Array","blob","Blob","createObjectURL","downloadExternalFile","deleteFile","fileId","deleteExternalFile","deleteLocalFile","deleteExternalLocalFile","MS_AUTH_TOKEN","MS_GROUP_ID","MS_PARENT_FOLDER_ID","MS_UPLOAD_FOLDER_ID","FILE_BUFFER","FILE_BUFFER_ERROR","UPLOADED_FILE_DATA","UPLOAD_SUCCESSFUL","UPLOAD_ERROR","FILE_DATA_SAVED","IMAGE_DATA_SAVED","TASK_FILES","CASE_FILES","ALL_FILES","DOWNLOAD_FILE_NAME","DOWNLOAD_FILE_URL","DELETED_FILE","GULPER_URL","GULPER_FILE_HEADERS","GULPER_FILE_PREVIEW","GULPED","selectEntryFactory","customValue","customName","isCustomValue","isCustom","comboOptions","showCustomInput","modifiedValues","comboBoxEntry","fragment","allDbTables","addedTable","updatedTable","deletedTable","tablePages","tableRows","tableHeaders","tableData","tableId","tableName","addedRow","editedRow","deletedRow","mappedSqlData","runScript","qCount","exportedTableData","checkTableExists","importDataSaved","promoteRes","starterVarsSaved","starterVars","getAllTables","createTable","updateTable","editData","deleteTable","viewTable","tData","dateObj","converted","getMonth","getDate","monthValue","dayOfMonth","viewPaginatedTable","offset","orderBy","pageSize","totalPages","totalRows","addTableRow","rowData","editTableRow","rowId","deleteTableRow","executeSql","connId","theSql","mappedVar","executeSqlOther","executeExternalSql","executeExternalSqlOther","getStarterVars","processKey","setStarterVars","varsSaved","exportTables","exportData","buffer","checkTable","tableExists","importTable","promoteTables","promoteInfo","promoteData","tableKeys","promoted","PromiseArr2","createTables","existingData","promoteTable","createSql","insertData","insertSql","tName","TABLE_NAME","TABLE_DATA","reqData","request","populated","ALL_TABLES","ADDED_TABLE","UPDATED_TABLE","DELETED_TABLE","TABLE_PAGES","TABLE_ROWS","TABLE_HEADERS","UPDATE_TABLE_ID","UPDATE_TABLE_NAME","ADDED_ROW","EDITED_ROW","DELETED_ROW","SQL_DATA","MAPPED_SQL_DATA","ERROR_MESSAGE","RUN_SCRIPT","Q_COUNT","EXPORTED_TABLE_DATA","CHECK_TABLE_EXISTS","IMPORT_DATA_SAVED","PROMOTE_RES","STARTER_VARS_SAVED","STARTER_VARS","getOutMappings","getParents","parents","current","eachElement","depth","unique","canAdd","selfAndFlowElements","maxDepth","processedFlowElements","flowElements","selfAndAllFlowElements","allowDuplicates","getElement","elementId","allElements","addVariableToList","variablesList","newVariable","foundIdx","findIndex","variable","origin","combineArrays","createProcessVariable","flowElement","defaultScope","getScope","globalScope","scopedParent","is$1","hasInputParameter","extractOutputParameters","processVariables","extractResultVariables","getResultVariable","extractFormFields","extractOutMappings","outMappings","getEventDefinitions","is$2","getErrorEventDefinitions","getEscalationEventDefinitions","extractEventDefinitionVariables","addVariable","escalationEventDefinitions","extractors","getProcessVariables","extractor","getVariablesForScope","allVariables","scopeVariables","parentsScopeVariables","combineArrays$1","isConditionalStartEvent","canHaveOverview","processVariablesEntries","candidateStarter","linkEventDefinition","linkEvents","portalTenant","usersList","availableUsers","allUsersSpecial","deletedUser","remoteDeletedUser","addedUser","remoteAddedUser","remoteAddedPortal","updatedUser","updatedUserCreds","reassignList","teamMembers","userErrorMsg","addedPortalUser","allPortalUsers","remoteUserTenants","getUserGroups","getUsersInGroup","callType","getReassignUserList","userList","groupIds","userIds","exists","val","assignedTo","userCheck","getAllUsers","getAllUsersSpecial","remoteUserTenantCheck","userTenantInfo","remoteUserCheck","userPayload","profile","deleteUser","remoteDeleteUser","addUser","remoteAddUser","remoteRolePayload","remoteAddUserToPortal","editUser","updateUserCreds","credData","remoteEditUser","remoteUpdateUserCreds","getUnassignedUsers","found","getTeamMembers","getAllPortalUsers","createPortalUser","targetPortal","addUserToPortal","USERS_LIST","ASSIGNED_USERS","AVAILABLE_USERS","ALL_USERS","ALL_USERS_SPECIAL","DELETED_USER","REMOTE_DELETED_USER","ADDED_USER","REMOTE_ADDED_USER","REMOTE_ADDED_PORTAL","UPDATED_USER","UPDATED_USER_CREDS","REASSIGN_LIST","TEAM_MEMBERS","USER_GROUPS","USER_ERROR_MESSAGE","ADDED_PORTAL_USER","ALL_PORTAL_USERS","REMOTE_USER_TENANTS","USER_EXISTS","errorEvents","isCatchingErrorEvent","ElementHelper","defaultButtonAction","defaultButtonShow","actionName","buttonAction","actionMethod","method","showName","buttonShow","showMethod","canBeShown","multiInstanceLoopCharacteristics","ensureMultiInstanceSupported","resultVariableEntry","groupBy","sortBy","sortByName","populateElementNames","names","canHaveProcessVariables","groupByScope","createdInList","createVariablesList","scopePrefix","variableEntries","createdInHtml","sorted","withNames","byScope","placeholder","candidateStarterGroupsEntry","candidateStarterGroups","candidateStarterUsersEntry","candidateStarterUsers","upperLogo","serverName","hqadmin","ssoLoginError","licenseError","loggingIn","login","requestReset","lowerLogo","resetDialog","resetId","confirmResetRequest","VLayout","goTo","processCount","allTasksCount","allTasksFollowUp","allTasksOverdue","teamTasksCount","myTasksFollowUp","myTasksOverdue","dashboard","search","availableProcesses","sortDesc","loading","row","startProcess","startDialog","startTitle","startText","caseLabel","confirmStart","VDataTable","startnewcase","runningProcesses","deleteInstance","deleteDialog","deleteTitle","deleteText","deleteText2","confirmDelete","instanceId","runningcases","myTasks","setRowStyle","viewProcessMap","openForm","reassignTask","reassignDialog","reassignTitle","reassignText","userText","confirmReassign","processMapDialog","processMapTitle","closeProcessMap","taskInfoDialog","taskInfoTitle","closeTaskInfo","domProps","taskInfoDetails","getLabelAttr","isFlowElement","isParticipant","isLane","isMessageFlow","isDataInput","isDataOutput","isTextAnnotation","getCategoryValue","getLabel","setLabel","isExternal","isTypedEvent","matches","every","some","isThrowEvent","throwEventTypes","isCollection","getDi","getSemantic","getFillColor","defaultColor","bioCColor","getStrokeColor","bioCStroke","getCirclePath","shape","cx","cy","radius","circlePath","componentsToPath","getRoundRectPath","borderRadius","roundRectPath","getDiamondPath","halfWidth","halfHeight","diamondPath","getRectPath","rectPath","COMPOSER_IDS","Ids","TASK_BORDER_RADIUS","INNER_OUTER_DIST","DEFAULT_FILL_OPACITY","HIGH_FILL_OPACITY","ELEMENT_LABEL_DISTANCE","Composer","styles","pathMap","textRenderer","BaseRenderer","defaultFillColor","defaultStrokeColor","rendererId","markers","computeStyle","addMarker","fill","strokeWidth","strokeLinecap","strokeDasharray","scale","marker","svgCreate","svgAttr","svgAppend","viewBox","refX","refY","markerWidth","markerHeight","orient","defs","_svg","colorEscape","stroke","createMarker","sequenceflowEnd","messageflowStart","messageflowEnd","associationStart","associationEnd","conditionalflowMarker","conditionaldefaultflowMarker","drawCircle","parentGfx","fillOpacity","circle","round","drawRect","rect","rx","ry","drawDiamond","x_2","y_2","points","pointsString","point","polygon","drawLine","createLine","drawPath","drawMarker","as","handlers","renderer","renderEventContent","isThrowing","parallelMultiple","renderLabel","createText","svgClasses","renderEmbeddedLabel","align","box","padding","style","renderExternalLabel","fitBox","getExternalStyle","renderLaneLabel","top","transform","createPathFromConnection","connection","pathData","getScaledPath","xScaleFactor","yScaleFactor","containerWidth","containerHeight","mx","my","messagePath","linePathData","rotate","outer","attachTaskMarkers","task","pathDataBG","abspos","fillPathData","pathData2","pathData3","instantiate","headerPathData","businessHeaderPath","headerData","businessPath","innerAttrs","lane","expandedPool","text2","participantMultiplicity","diamond","isMarkerVisible","eventGatewayType","drawEvent","parallelPath","innerCircle","strokeLinejoin","markerEnd","sequenceFlow","markerStart","associationDirection","messageRef","midPoint","getPointAtLength","getTotalLength","markerPathData","messageAttrs","messageVisibleKind","messageBounds","getBBox","labelBounds","translateX","translateY","elementObject","renderDataItemCollection","arrowPathData","getRawPath","DATA_STORE_PATH","elementStore","cancel","cancelActivity","outerAttrs","pointerEvents","textElement","textPathData","markerPath","markerRect","parallel","seq","markerMath","compensation","strokeMiterlimit","adhoc","taskMarkers","subprocess","isForCompensation","isSequential","yPosition","_drawPath","canRender","drawShape","drawConnection","getShapePath","DEFAULT_FONT_SIZE","LINE_HEIGHT_RATIO","MIN_TEXT_ANNOTATION_HEIGHT","TextComposer","defaultStyle","fontFamily","fontSize","fontWeight","lineHeight","externalStyle","textUtil","TextUtil","layoutedDimensions","getDimensions","getTextAnnotationBounds","minHeight","getDefaultStyle","PathMap","heightElements","widthElements","pathId","rawPath","coordinates","heightRatio","widthRatio","heightIndex","widthIndex","tokenRegex","objNotationRegex","replacer","quote","quotedName","isFunc","bpmnRenderer","elementToString","elementData","getWaypoints","waypoint","getMid","notYetDrawn","refSemantic","referenced","Import","elementFactory","_eventBus","_canvas","_elementFactory","_translate","_textRenderer","isPointInsideBBox","bbox","isFrameElement","parentIndex","createRoot","setRootElement","collapsed","isFrame","createShape","_attachBoundary","addShape","_getSource","_getTarget","createConnection","addConnection","fire","boundarySemantic","boundaryElement","hostSemantic","attachedToRef","host","attachers","createLabel","_getEnd","side","_getElement","bpmnImporter","ComposeModule","ImportModule","diRefs","Refs","configurable","findDisplayCandidate","TreeTraversal","handledElements","deferred","contextual","ctx","handled","isHandled","visit","gfx","visitRoot","diagram","visitIfDi","logError","registerDi","bpmnElement","handleDiagram","handlePlane","plane","planeElement","handlePlaneElement","handleDefinitions","diagrams","handleProcess","handleCollaboration","handleUnhandledProcesses","handleDeferred","handleFlowElementsContainer","handleIoSpecification","ioSpecification","handleArtifacts","artifacts","processes","laneSets","handleMessageFlow","messageFlow","handleMessageFlows","messageFlows","handleDataAssociation","association","handleDataInput","dataInput","handleDataOutput","dataOutput","handleArtifact","artifact","dataInputs","dataOutputs","handleSubProcess","subProcess","handleFlowNode","flowNode","childCtx","dataInputAssociations","dataOutputAssociations","handleSequenceFlow","handleDataElement","handleLane","newContext","childLaneSet","handleLaneSet","wireFlowNodeRefs","laneSet","lanes","handleLaneSets","container","handleFlowElements","unshift","handleParticipant","participant","newCtx","collaboration","participants","flowNodeRef","importDiagram","bpmnDiagram","importer","visitor","parentShape","walker","BaseViewer","DEFAULT_OPTIONS","_moddle","_createModdle","_container","_createContainer","_init","addWarningsToError","warningsAry","checkValidationError","Diagram","importXML","xml","ParseCompleteEvent","createEvent","references","elementsById","_emit","fromXML","parseWarnings","importDefinitions","allWarnings","_setDefinitions","bpmnDiagramOrId","_definitions","findBPMNDiagram","saveXML","toXML","saveSVG","svg","contentNode","getDefaultLayer","defsNode","contents","innerSVG","getModules","_modules","getDefinitions","destroy","domRemove","off","attachTo","detach","jquery","resized","moddle","baseModules","additionalModules","staticModules","bpmnjs","diagramModules","diagramOptions","omit","ensureUnit","moddleOptions","_moddleExtensions","moddleExtensions","BpmnModdle","diagramId","Viewer","CoreModule","TranslateModule","SelectionModule","OverlaysModule","NavViewer","_navigationModules","KeyboardMoveModule","MoveCanvasModule","ZoomScrollModule","mytasks","teamTasks","assignee","claimTask","claim","claimTitle","claimText","confirmClaim","taskId","teamtasks","unassignedTasks","unassignedtasks","bulkReassign","filteredItems","singleSelect","setFilter","selectAllCheck","canClaim","bulkReassignDialog","bulkReassignTitle","bulkReassignText","confirmBulkReassign","alltasks","clearDates","bulkDelete","startedBefore","_g","computedStartedBefore","histStartedBefore","save","startedAfter","computedStartedAfter","histStartedAfter","finishedBefore","computedFinishedBefore","histFinishedBefore","finishedAfter","computedFinishedAfter","histFinishedAfter","refreshProcesses","viewInstance","bulkDeleteDialog","bulkDeleteTitle","bulkDeleteText","confirmBulkDelete","historiccases","formCount","preventDefault","formValid","formModel","deployedForm","forms","handleInput","filesAvailable","showUploadedFiles","showFiles","FILE_URL","IS_LOCAL","openFile","deleteFileDialog","deleteFileTitle","deleteFileText","deleteFileName","confirmDeleteFile","saveForm","disableSubmit","submitForm","s1","form","group0","step","refInFor","currentPage","startPage","backClick","finalPage","continueForm","isErrorSnack","VStepper","VStepperContent","VStepperItems","viewtask","historicCaseId","processDefinitionKey","obfuscate","close","startTime","endTime","due","followUp","historicHeaders","historicVars","obfuscateDialog","obfuscateTitle","obfuscateText","obfuscateHeaders","obfuscateItems","obfuscateData","cancelObfuscation","confirmObfuscation","obfuscateConfirmDialog","obfuscateConfirmTitle","obfuscateConfirmText","obfuscateConfirmClose","itemKeys","VTab","VTabItem","VTabs","VTabsItems","viewcasehistory","theCurrentRole","searchUsers","userHeaders","usersSortBy","usersSortDesc","loadingUsers","theCurrentUser","editUserDialog","editUserTitle","editUserText","updateAllInstances","cancelEditUser","confirmEditUser","deleteUserDialog","deleteUserTitle","deleteUserText","confirmDeleteUser","addUserDialog","addUserTitle","addUserText","cancelAddUser","confirmAddUser","addRemoteUserDialog","addRemoteUserTitle","addRemoteUserText","cancelAddRemoteUser","confirmAddRemoteUser","removeRemoteUserDialog","removeRemoteUserTitle","removeRemoteUserText","confirmRemoveRemoteUser","searchGroups","groupHeaders","groupsSortBy","groupsSortDesc","loadingGroups","editGroup","addRemoveUsers","editGroupDialog","editGroupTitle","editGroupText","cancelEditGroup","confirmEditGroup","deleteGroupDialog","deleteGroupTitle","deleteGroupText","confirmDeleteGroup","addGroupDialog","addGroupTitle","addGroupText","cancelAddGroup","confirmAddGroup","addRemoveUsersDialog","addRemoveUsersTitle","addRemoveUsersText","availableSelected","addRemoveUsersHeaders","assignedSelected","cancelAddRemoveUsers","supportEmailAddress","saveSupportEmail","toggleUndeploy","toggleDeletion","mailFormKey","toggleMailType","isMSG","$set","saveEmailServer","disableLocal","toggleStorage","disableOffice","searchHqConns","hqConnHeaders","hqConnSortBy","hqConnSortDesc","loadingConns","editHqConnDialog","editHqConnTitle","editHqConnText","cancelEditHqConnection","confirmEditHqConnection","deleteHqConnDialog","deleteHqConnTitle","deleteHqConnText","confirmDeleteHqConnection","addHqConnDialog","addHqConnTitle","addHqConnText","cancelAddHqConnection","confirmAddHqConnection","searchExternalDbs","extDbHeaders","extDbSortBy","extDbSortDesc","loadingExts","editDbDialog","editDbTitle","editDbText","allDbTypes","cancelEditDbConnection","confirmEditDbConnection","deleteDbDialog","deleteDbTitle","deleteDbText","confirmDeleteDbConnection","addDbDialog","addDbTitle","addDbText","cancelAddDbConnection","confirmAddDbConnection","connCheckDialog","loadingCheckColour","loadingCheck","connCheckStatus","searchApis","apiHeadings","apisSortBy","apisSortDesc","loadingApis","editApiDialog","editApiTitle","editApiText","apiName","allAuthTypes","apiAuthType","allGrantTypes","apiGrantType","apiClientId","apiClientSecret","apiEndpoint","cancelEditApi","confirmEditApi","apiHeaders","deleteApiDialog","deleteApiTitle","deleteApiText","confirmDeleteApi","addApiDialog","addApiTitle","addApiText","cancelAddApi","confirmAddApi","toggleLdap","loadingLdapGroups","loadingLdapUsers","disableLdapLogin","toggleSso","ldapSelectGroupsDialog","ldapTreeSearch","availableLdapGroupsSelected","cancelLdapSelect","confirmLdapSelectGroups","ldapSelectUsersDialog","ldapUserSearch","ldapUsersHeaders","availableLdapUsersSelected","confirmLdapSelectUsers","ldapSyncingDialog","loadingLdapSync","disableMsal","msalDialog","disableSaml","sigAlgorithms","searchOpLog","togglePentest","computedDateFrom","logDateFrom","computedDateTo","logDateTo","refreshOpLog","opLogHeaders","opLogSortBy","opLogSortDesc","loadingOps","searchErrorLog","refreshErrorLog","clearErrorLog","errorLogHeaders","errorLogSortBy","errorLogSortDesc","loadingErrors","licenseStart","licenseExpiry","licenseKey","updateLicense","VSheet","VTreeview","promoteForms","importForm","buildForm","allForms","IS_LOCKED","showLocked","IS_DEPLOYED","viewForm","editForm","copyForm","deleteForm","formId","importFormDialog","importTitle","importText","importedFile","cancelImportForm","confirmImportForm","promoteFormsDialog","promoteFormsTitle","promoteFormsText","promoteHeaders","formPromote","selectedExternalEngine","cancelPromote","confirmPromoteForms","promoteCheckDialog","promoteCheckTitle","promoteCheckText","promoteCheckText2","promoteCheckCancel","promoteOverwrite","promoteCount","promoteCheckConfirm","promoteCheckOverwrite","promoteResultsDialog","promoteResultsTitle","promoteResultsText","showLockedDialog","lockedTitle","lockedText","forceUnlock","showDeployedDialog","deployedTitle","deployedText","formKeys","formNames","formbuilder","resetStyle","buildSchema","formAction","resetForm","exportForm","closeForm","allProcessXml","requiredSelect","loadProcessVars","versionFilter","processVersion","formTitle","queryDialog","openJsEditor","layout","w","varType","isLocked","dragMoved","dragResized","varLabel","editElement","lockElement","addBtn","proxy","addField","newElementDialog","newElementTitle","newElementText","isFieldValid","varFilter","noSpaces","varName","varUrl","varMaxH","varMaxW","minDate","minMenu","maxDate","maxMenu","minTime","maxTime","varIs24","varValue","varIsEmail","varAutocalc","subformList","subform","radioHeaders","radioItems","deleteRow","editRow","moveItemDown","moveItemUp","slot","addNewRow","selectHeaders","selectItems","checkboxHeaders","checkboxItems","comboHeaders","comboItems","gridHeaders","gridItems","allowAdd","allowDelete","enableSql","allDbConns","fieldConnId","fieldSql","radioAsRow","varAllowMultiple","varRequired","varHidden","varDisabled","varBorderSolid","varBorderDashed","cancelNewElement","verifyField","varWidth","varOffset","editElementDialog","editElementTitle","deleteField","currentElementId","editElementText","cancelEditElement","formSchema","jsDialog","extensions","extScript","closeJs","saveJs","queryHeaders","queryItems","deleteQuery","editQuery","addNewQuery","addQueryDialog","addQueryTitle","addQueryText","isElementValid","beforeAfterItems","beforeAfter","pageQueryItems","pageQueryNum","sqlQuery","sqlVar","sqlRunIf","cancelAddQuery","confirmAddQuery","editQueryDialog","editQueryTitle","cancelEditQuery","confirmEditQuery","addRowDialog","addRowTitle","itemValue","gridFieldTypes","itemType","itemWidth","configVarValue","configVarIsEmail","configVarAutocalc","configSelectItems","deleteConfigRow","editConfigRow","addConfigRow","configComboItems","configEnableSql","configFieldConnId","configFieldSql","configVarAllowMultiple","cancelAddRow","confirmAddRow","editRowDialog","editRowTitle","cancelEditRow","confirmEditRow","addConfigRowDialog","addConfigRowTitle","isConfigElementValid","configItemName","configItemValue","configItemWidth","cancelAddConfigRow","confirmAddConfigRow","editConfigRowDialog","editConfigRowTitle","cancelEditConfigRow","confirmEditConfigRow","resetFormDialog","resetFormTitle","resetFormText","confirmResetForm","saveCloseDialog","confirmClose","VSpeedDial","buildform","migrateCases","importProcess","buildProcess","processHeaders","designSortBy","designSortDesc","editProcess","VERSION","allowDeletion","deleteProcessXml","setVariables","setStartVariables","deployedHeaders","allProcesses","deployedSortBy","deployedSortDesc","allowUndeploy","deleteProcess","deleteTextProcess","deleteTextVersion","deleteTextWarning","loadingUndeploy","deleteXmlDialog","confirmDeleteXml","importProcessDialog","cancelImportProcess","confirmImportProcess","migrateDialog","migrateTitle","migrateText","migrateWarning","sourceProcesses","filterTargets","sourceProcess","targetProcesses","targetProcess","instanceHeaders","activeInstances","loadingInstances","targetInstances","closeMigrateCases","confirmMigrateCases","setVarsDialog","setVarsTitle","setVarsText","targetVarTypes","targetVarType","targetVarName","targetVarValue","closeSetVariables","confirmSetVariables","setStartVarsDialog","setStartVarsTitle","setStartVarsText","startVarsHeaders","startVarsItems","resetStartVars","editStartVarDialog","addStartVarTitle","editedStartVarItem","closeEditStartVar","saveEditStartVar","deleteStartVarDialog","closeDeleteStartVar","confirmDeleteStartVar","deleteStartVarItem","editStartVarItem","closeSetStartVariables","confirmSetStartVariables","processdesigner","processAction","saveProcess","checkLocks","closeProcess","downloadSvgImage","downloadDiagram","saveExternalProcess","configureProcess","setUpdateProps","modeStatus","propsDialog","isCallActivity","isSignalThrowEvent","isCollab","filteredEventItems","changeEventType","taskTypes","changeTaskType","taskType","isTask","isServiceTask","isScriptTask","changeSendEmails","sendEmails","changeEmailTemplate","emailTemplate","changeEmailSubject","emailSubject","gatewayTypes","gatewayType","isFlow","hasCondition","conditionTypes","isProcess","collabActive","changeField","participantId","participantName","requestNewProcId","timerDefTypes","timerDefType","isCondThrowEvent","isCondCatchEvent","isCondBoundaryEvent","isCondNonBoundaryEvent","startVarName","startCondition","varEvents","availableSignals","startSignalName","deleteSignal","isStartEvent","processForms","getFormText","formKey","historyTimeToLive","isStartable","candidateUsers","candidateGroups","dueDate","followUpDate","calledElementItems","calledElement","targetApis","targetApi","apiCallTypes","apiCallType","includeGrantType","includeClientId","includeClientSecret","apiParameters","apiUrlQuery","apiPostData","useCaseId","ignoreRules","javaClass","elementNotes","variableHeaders","deleteExtension","editVariable","addVariableDialog","listenerHeaders","listTaskType","editListener","addListenerDialog","multiInstanceCount","closeProps","saveDialog","saveTitle","processExists","saveText","deployName","selectedTenant","deploy","confirmSave","confirmDeploy","saveExternalDialog","saveExternalTitle","saveExternalText","saveExternalText2","cancelExternalSave","confirmExternalSave","lockedFormText","newProcIdDialog","confirmNewProcId","variableInOuts","disableVariableItem","variableInOut","variableTypes","variableType","variableSource","variableTarget","cancelVariable","saveVariable","editVariableDialog","listenerTypes","disableListenerItem","executionEventTypes","executionEventType","taskEventTypes","taskEventType","cancelListener","saveListener","editListenerDialog","apiParamDialog","apiParamHeaders","apiParamItems","deleteParamRow","addParamRow","cancelParams","saveParams","addParamRowDialog","apiParamKey","apiParamValue","apiParamTypes","apiParamType","apiFormData","cancelAddParamRow","confirmAddParamRow","apiHeadersDialog","apiHeaderHeaders","apiHeaderItems","deleteHeaderRow","addHeaderRow","cancelHeaders","saveHeaders","addHeaderRowDialog","apiHeaderKey","apiHeaderValue","cancelAddHeaderRow","confirmAddHeaderRow","jsEditorDialog","jsScript","closeJsEditor","BaseModeler","_collectIds","ids","$model","getNewShapePosition","getTextAnnotationPosition","isDataElement","getDataElementPosition","isFlowNode","getFlowNodePosition","sourceTrbl","asTRBL","sourceMid","horizontalDistance","getConnectedDistance","margin","minDistance","orientation","isBoundaryEvent","getOrientation","right","getVerticalDistance","nextPositionDirection","findFreePosition","generateGetNextPosition","bottom","LocateElements","locateElementsHandler","AutoPlaceModule","locateElements","ResizeElements","injector","invoke","AutoResize","resize","newBounds","hints","resizeFunction","resizeLane","resizeShape","ResizeElementsBase","AutoResizeProvider","isResizableTarget","canResize","resizeElements","resizeElementsBase","copyProperties","removeProperties","LOW_PRIORITY","CopyPasteElements","moddleCopy","copyElementHandler","descriptor","canCopyPropertyHandler","bpmnProcess","copyElement","resolveReferences","cache","newBusinessObject","DISALLOWED_PROPERTIES","ModdleCopy","canCopyPropertiesHandler","parentDescriptor","matchPattern","canSetCopiedPropertyHandler","getPropertyNames","keepDefaultProperties","sourceElement","targetElement","canCopyProperties","sourceProperty","has","copiedProperty","copyProperty","canSetProperty","isDefined","propertyDescriptor","getPropertyDescriptor","isId","isReference","childProperties","childProperty","getElementDescriptor","isGeneric","CopyPasteModule","copyPasteElements","CUSTOM_PROPERTIES","toggeling","targetCollapsed","oldCollapsed","ReplaceElements","isSubProcess","toggleCollapse","elementProps","newElementProps","copyProps","intersection","eventDefinitionAttrs","moveChildren","_getDefaultSize","allowed","replacedElement","a1","a2","ReplaceModule","bpmnReplace","isDifferentType","isTypeEqual","isEventDefinitionEqual","isTriggeredByEventEqual","isExpandedEqual","START_EVENT","className","START_EVENT_SUB_PROCESS","INTERMEDIATE_EVENT","END_EVENT","GATEWAY","SUBPROCESS_EXPANDED","TRANSACTION","EVENT_SUB_PROCESS","TASK","DATA_OBJECT_REFERENCE","DATA_STORE_REFERENCE","BOUNDARY_EVENT","EVENT_SUB_PROCESS_START_EVENT","SEQUENCE_FLOW","PARTICIPANT","ReplacePopupMenu","popupMenu","_popupMenu","_bpmnReplace","_rules","register","registerProvider","getEntries","differentType","_createEntries","replaceOptions","isInterruptingEqual","isCancelActivityEqual","isTargetSubProcess","isTargetExpanded","_createSequenceFlowEntries","getHeaderEntries","headerEntries","_getLoopEntries","_getDataObjectIsCollection","_getParticipantMultiplicity","_getAdHocEntry","menuEntries","_createMenuEntry","sourceRef","replaceAction","menuEntry","toggleLoopEntry","active","isLoop","isParallel","loopEntries","toggleIsCollection","updateModdleProperties","dataObjectEntries","toggleParticipantMultiplicity","participantEntries","isAdHoc","adHocEntry","autoResize","layoutConnection","PopupMenuModule","replacePopupMenu","getTRBLResize","oldBounds","substractTRBL","LANE_PARENTS","LANE_INDENTATION","collectLanes","collectedShapes","getChildLanes","getLanesRoot","computeLanesResize","initialShapes","allLanes","left","shapeTrbl","shapeNewTrbl","resizeNeeded","other","otherTrbl","topResize","rightResize","bottomResize","leftResize","resizeTRBL","Boolean","ContextMenu","contextPad","connect","_contextPad","_connect","_create","_locateElements","autoPlace","hasPrimaryModifier","click","isEventType","eventBo","isType","isDefinition","def","getContextPadEntries","startConnect","start","removeElements","getReplaceMenuPosition","Y_OFFSET","diagramContainer","getContainer","pad","getPad","diagramRect","getBoundingClientRect","padRect","appendAction","appendStart","dragstart","splitLaneHandler","splitLane","childLanes","addLane","cursor","deleteAllowed","DirectEditingModule","ContextPadModule","ConnectModule","CreateModule","contextMenu","DistributionCheck","distributeElements","registerFilter","cannotDistribute","DistributeElementsModule","distributionCheck","RegisterActions","EditorActions","_registerDefaultActions","spaceTool","lassoTool","handTool","globalConnect","alignElements","directEditing","searchPad","componentInstances","fromEntries","_registerAction","_registerToggleAction","opts","currentSelection","trigger","aligneableElements","setColor","activate","boundingBox","moveElements","tool","EditorActionsModule","registerActions","SnapToGrid","gridSnappingContext","snapLocation","HIGH_PRIORITY","LocateElementsAction","gridSnapping","getSnapOptions","axis","min","isHorizontal","snapValue","CreateParticipantAction","handleCreateStart","createConstraints","snapParticipantDimensions","LayoutConnectionAction","CommandInterceptor","_gridSnapping","postExecuted","connectionStart","connectionEnd","createElementsBehavior","hasMiddleSegments","updateWaypoints","snapMiddleSegments","horizontallyAligned","aligned","verticallyAligned","snapSegment","segmentStart","segmentEnd","pointsAligned","snapped","gridSnappingLocateElementsAction","gridSnappingCreateParticipantAction","gridSnappingLayoutConnectionAction","GridSnappingModule","GridSnappingActionsModule","snapToGrid","LABEL_WIDTH","LABEL_HEIGHT","HitZones","interactionEvents","_interactionEvents","createParticipantHit","createDefaultHit","createSubProcessHit","removeHits","createBoxHit","hitZones","categoryBusinessObject","categoryValueBusinessObject","LabelElements","resizeHandles","activateDirectEdit","force","isCollapsedSubProcess","complete","removeResizers","canExecute","isTouch","isExpandedSubProcess","isCollapsedPool","isExpandedPool","isEmptyText","trim","getEditingBBox","centerVertically","getAbsoluteBBox","zoom","externalFontSize","externalLineHeight","defaultFontSize","defaultLineHeight","paddingTop","paddingBottom","paddingLeft","paddingRight","externalLabelMid","absoluteBBox","minWidth","textAlign","activeContextText","updateLabel","MARKER_HIDDEN","MARKER_LABEL_HIDDEN","LabelElementsPreview","absoluteElementBBox","defaultLayer","activeProvider","dy","newElementHeight","removeMarker","svgRemove","ChangeSupportModule","ResizeModule","labelElements","labelElementsPreview","AppendAction","bpmnRules","AssociationAction","postExecute","newParent","associations","incoming","outgoing","moveConnection","AttachEventAction","filteredElements","shouldReplace","replaceShape","shapes","newHost","boundaryEvent","BoundaryEventAction","getBoundaryEvents","attacher","boundaryEvents","oldSource","newSource","attachedBoundaryEvents","RootElementAction","canHaveRootElementReference","eventDefinitionTypes","hasAnyEventDefinition","hasRootElement","getRootElementReferencePropertyName","isErrorEventDefinition","isEscalationEventDefinition","isMessageEventDefinition","isSignalEventDefinition","addRootElementToDefinitions","removeRootElementFromDefinitions","collectionRemove","executed","addedRootElement","reverted","referencedRootElement","CreateAction","HIGHEST_PRIORITY","FixHoverAction","handleLaneDrop","hover","isLaneAndNotParticipant","hoverGfx","getGraphics","handleGroupAndLabelDrop","shouldDropOnRoot","handleLaneConnection","updateHoverForLaneConnection","handleLaneReconnectHover","isReconnectType","updateHoverForLaneReconnect","updateConnectStart","updateMoveStart","CreateDataObjectAction","HORIZONTAL_PARTICIPANT_PADDING","VERTICAL_PARTICIPANT_PADDING","PARTICIPANT_BORDER_WIDTH","isParticipantMoveStart","getValidChildren","isConnection","isParticipantCreating","setupParticipantCreationListeners","ensureHoveringProcess","once","ensureCollaboration","isCollaboration","createCollaboration","makeCollaboration","isParticipantInProcess","updateProcessReference","oldProcessRef","revertProcessReference","moveChildrenToParticipant","processChildren","findAndSetupParticipant","hasParticipants","findParticipant","reuseProcessForParticipant","childrenBBox","participantBounds","getParticipantBounds","getParticipantCreateConstraints","rootElementGfx","paddedChildrenBBox","TARGET_REF_PLACEHOLDER_NAME","DataInputAction","usesTargetRef","targetRef","removedConnection","inputAssociations","getTargetRef","targetRefProp","cleanupTargetRef","fixTargetRef","newTarget","oldTarget","connectionBo","targetBo","newTargetBo","oldTargetBo","dataAssociation","cleanupAndAssignTargetRef","ifDataInputAssociation","isDataInputAssociation","UpdateSemanticParentHandler","bpmnUpdater","_bpmnUpdater","DataStoreAction","getFirstParticipant","getDataStores","child","updateDataStoreParent","dataStore","newDataStoreParent","dataStoreBo","newDataStoreParentBo","newSemanticParent","newDiParent","dataStoreReferences","oldParent","getAncestor","isDescendant","oldRoot","newRoot","dataStores","descendant","ancestor","descendantBo","ancestorBo","DeleteDefaultFlowAction","isDefaultFlow","sourceBo","oldSemanticParent","oldDiParent","updateSemanticParent","updateDiParent","DeleteLaneAction","compensateLaneDelete","topAdjustments","bottomAdjustments","siblings","topAffected","bottomAffected","calculateAdjustments","makeSpace","movingShapes","resizingShapes","nested","DetachEventAction","shapesToReplace","intermediateEvent","DropOnFlowAction","insertShape","targetFlow","positionOrBounds","waypointsBefore","waypointsAfter","dockingPoint","incomingConnection","outgoingConnection","oldOutgoing","oldIncoming","getApproxIntersection","bendpoint","copy","canConnect","reconnectEnd","reconnectStart","duplicateConnections","delta","shapeMid","newShapeMid","canInsert","ElementCollapseAction","hideEmptyLabels","expandedBounds","visibleElements","visibleBBox","filterVisible","computeChildrenBBox","collapsedBounds","resizeShapeAfterToggle","EventBasedGatewayAction","isEventBasedGatewayConnectedToSequenceFlow","removeExistingIncomingSequenceFlows","incomingConnections","removeConnection","isEventBasedGateway","getNewShapeTargetsIncomingSequenceFlows","newShape","newShapeTargets","sequenceFlows","incomingSequenceFlows","removeNonGatewaySourceConnections","preExecuted","existingIncomingConnections","newShapeTargetsIncomingSequenceFlows","GroupAction","removeReferencedCategoryValue","removeCategory","getGroupElements","isReferenced","isGroupWithoutCategoryValue","linkCategoryValueToGroup","deleteCategoryValueReference","isCategoryValue","groupElements","lineIntersect","l1s","l1e","l2s","l2e","denominator","numerator","ImportDockingFix","adjustDocking","startPoint","nextPoint","elementMid","elementTop","elementLeft","verticalIntersect","horizontalIntersect","centerIntersect","getCenterIntersect","original","getDistance","fixDockings","targetMid","point1","point2","sqrt","pow","IsHorizontalFix","elementTypesToUpdate","isElementTypeToUpdate","vectorLength","v","getAngle","deltaY","deltaX","rotateVector","vector","rotatedX","cos","sin","rotatedY","solveLambdaSystem","system","lambda","sum","term","perpendicularFoot","bd","getDistancePointLine","pfPoint","connectionVector","getDistancePointPoint","p1","p2","getAttachment","closestAttachment","closestAttachmentDistance","Infinity","intersections","pointsEqual","segmentStartDistance","segmentEndDistance","getCircleSegmentIntersections","attachment","segmentIndex","bendpointIndex","attachmentPosition","relativeLocation","attachmentDistance","s2","cc","cr","baX","baY","caX","caY","bBy2","pBy2","q","disc","tmpSqrt","abScalingFactor1","abScalingFactor2","isPointInSegment","isXInSegment","fenced","isYInSegment","rangeStart","rangeEnd","minRange","maxRange","EQUAL_THRESHOLD","findNewLabelLineStartIndex","oldWaypoints","newWaypoints","segmentMove","segmentStartIndex","newSegmentStartIndex","bendpointMove","newIndex","insert","rel","relativePositionMidWaypoint","getLabelAdjustment","labelPosition","getLabelMid","oldLabelLineIndex","newLabelLineIndex","oldLabelLine","getLine","newLabelLine","oldFoot","relativeFootPosition","getRelativeFootPosition","angleDelta","getAngleDelta","oldBendpointIndex","oldBendpoint","newBendpoint","newFoot","newLabelVector","roundPoint","distanceSegment1","distanceSegment2","relativePosition","l1","l2","foot","lengthToFoot","DEFAULT_LABEL_DIMENSIONS","NAME_PROPERTY","TEXT_PROPERTY","LabelAction","updateLabelIfNeeded","calculateTextAnnotationBounds","newText","shouldSkipLabelCreation","calculateLabelDimensions","shouldRemoveLabel","unsetLabel","isValidLabel","updateBusinessObjectLabel","createBPMNLabel","updateLabelBounds","getVisibleLabelAdjustment","adjustHints","startChanged","endChanged","shouldSkipLabelBehavior","labelBehavior","shouldAdjustLabelPosition","oldLabel","adjustLabelPosition","adjustExternalLabel","labelMid","edges","asEdges","referencePoint","getReferencePoint","getReferencePointDelta","moveShape","labelCenter","labelDimensions","removeShape","labelAdjustment","oldShape","newReferencePoint","calculateNewAttachPoint","getNewAttachPoint","lines","nearestLine","findNearestLine","calculatePerpendicularFoot","getNearestLine","createEdge","direction","end","distances","distance","sortedDistances","ALIGNMENTS","LabelPositioningAction","checkLabelAdjustment","optimalPosition","getOptimalPosition","newLabelMid","elementTrbl","substract","getTakenHostAlignments","hostElement","hostOrientation","freeAlignments","takenAlignments","alignment","getTakenConnectionAlignments","getApproximateOrientation","labelOrientation","isAligned","takenHostAlignments","p0","MessageFlowAction","reconnectFlows","flows","reconnectFunction","flow","anchor","getResizedTargetAnchor","getResizedSourceAnchor","isParticipantCollapse","getMessageFlows","isOldParticipant","isNewParticipant","selfAndAllChildren","getFlowsOfType","connections","COLLAB_ERR_MSG","ModelError","tooltips","showError","timeout","tooltipConfig","isCollaborationTarget","RemoveElementAction","combineSequenceFlows","inConnection","outConnection","getNewWaypoints","getDocking","inWaypoints","outWaypoints","RemoveParticipantAction","collaborationRoot","makeProcess","ReplaceConnectionAction","dragging","fixConnection","replacementType","canConnectSequenceFlow","canConnectMessageFlow","canConnectAssociation","replaceReconnectedConnection","replacement","cleanDraggingSelection","oldConnection","newConnection","previousSelection","closure","allConnections","ReplaceElementAction","_selection","canReplace","replaceElements","replacements","topLevelElements","unclaimId","addToTrbl","trbl","choice","currentValue","addMin","addMax","newElements","newElementType","oldElement","oldElementId","LANE_RIGHT_PADDING","LANE_LEFT_PADDING","LANE_TOP_PADDING","LANE_BOTTOM_PADDING","getParticipantResizeConstraints","laneShape","resizeDirection","balanced","lanesRoot","isFirst","isLast","laneTrbl","maxTrbl","minTrbl","LANE_MIN_DIMENSIONS","flowElementTrbl","PARTICIPANT_MIN_DIMENSIONS","SUB_PROCESS_MIN_DIMENSIONS","TEXT_ANNOTATION_MIN_DIMENSIONS","ResizeAction","resizeConstraints","minDimensions","SLIGHTLY_HIGHER_PRIORITY","ResizeLaneAction","shouldResizeOppositeLanes","shouldResize","roundBounds","SpaceToolAction","getParticipantMinHeight","hasChildLanes","lanesMinHeight","getLanesMinHeight","resizeStart","resizedLane","findResizedLane","isPointInLane","SubProcessStartEventAction","shouldCreateStartEvent","isSubProcessWithStartEvent","hasStartEvent","getStartEventPosition","calculateXPosition","calculateYPosition","UnclaimModelIdAction","unclaimShapeId","unclaim","UpdateFlowNodeRefsAction","initContext","UpdateContext","enter","getContext","releaseContext","triggerUpdate","leave","updateLaneRefs","flowNodes","laneRefUpdateEvents","updateContext","addFlowNode","counter","labelPositioningAction","associationAction","attachEventAction","boundaryEventAction","rootElementAction","createAction","fixHoverAction","createDataObjectAction","createParticipantAction","dataInputAction","dataStoreAction","deleteDefaultFlowAction","deleteLaneAction","detachEventAction","dropOnFlowAction","elementCollapseAction","eventBasedGatewayAction","groupAction","importDockingFix","isHorizontalFix","labelAction","messageFlowAction","modelError","removeElementAction","removeParticipantAction","replaceConnectionAction","replaceElementAction","resizeAction","resizeLaneAction","spaceToolAction","subProcessStartEventAction","unclaimModelIdAction","updateFlowNodeRefsAction","getBoundaryAttachment","targetBounds","ModelRules","RuleProvider","canStartConnection","nonExistingOrLabel","isSame","getOrganizationalParent","isCompensationBoundary","isSameOrganization","parentA","parentB","isMessageFlowSource","hasEventDefinitionOrNone","isMessageFlowTarget","getScopeParent","isSameScope","scopeParentA","scopeParentB","isSequenceFlowSource","isSequenceFlowTarget","isEventBasedTarget","isParent","possibleParent","allParents","connectDataAssociation","canConnectDataAssociation","canDrop","isDroppableBoundaryEvent","hasNoEventDefinition","hasCommonBoundaryIntermediateEventDefinition","isBoundaryCandidate","hasOneOfEventDefinitions","isReceiveTaskAfterEventBasedGateway","canAttach","isBoundaryAttachment","canMove","isOneTextAnnotation","sourceTextAnnotation","targetTextAnnotation","areOutgoingEventBasedGatewayConnections","canCopy","isOutgoingEventBasedGatewayConnection","init","addRule","targetParent","targetAttach","RulesModule","ReorderElements","orderDi","rootDi","diElements","reorderElements","OrderElements","OrderingProvider","orders","order","level","containers","computeOrder","getOrder","findActualParent","actualParent","getOrdering","elementOrder","currentIndex","insertIndex","orderElements","BpmnFactory","_model","_needsId","_ensureId","nextPrefixed","createDiLabel","createDiBounds","createDiShape","createDiWaypoints","createDiWaypoint","createDiEdge","createDiPlane","BpmnUpdater","connectionDocking","cropConnection","cropped","getCroppedWaypoints","updateParent","reverseUpdateParent","updateRoot","updateBounds","updateConnection","updateConnectionWaypoints","updateAttachment","ifBpmn","oldSourceBo","newSourceBo","oldConditionExpression","oldDefault","Label","parentBusinessObject","parentDi","updateFlowNodeRefs","_getLabel","newContainment","oldContainment","oldRefs","newRefs","updateDiConnection","planeElements","getLaneSet","visualParent","containment","diChildren","inverseSet","ElementFactory","BaseElementFactory","applyAttributes","attributeNames","applyAttribute","attributeName","baseCreate","createBpmnElement","createParticipantShape","DEFAULT_FLOW","DI","NULL_DIMENSIONS","UpdatePropertiesHandler","isIdChange","getDiProperties","setDiProperties","unwrapBusinessObjects","updateId","newLabelBounds","referencePropertyNames","unwrappedProps","UpdateCanvasRootHandler","AddLaneHandler","_spaceTool","SplitLaneHandler","ResizeLaneHandler","calculateAffectedShapes","allAffected","newRootBusinessObject","oldRootBusinessObject","bpmnDefinitions","diPlane","isRoot","laneParent","existingChildLanes","lanePosition","spacePos","adjustments","newLane","newLanesCount","existingLanesCount","newLanesHeight","laneY","laneHeight","laneBounds","newLaneAttrs","resizeBalanced","resizeSpace","newTrbl","trblDiff","change","FLOW_NODE_REFS_ATTR","LANES_ATTR","UpdateFlowNodeRefsHandler","IdClaimHandler","computeUpdates","flowNodeShapes","laneShapes","handledNodes","participantCache","allFlowNodeShapes","isInLaneShape","addFlowNodeShape","flowNodeShape","getAllLaneShapes","getNewLanes","allLaneShapes","oldLane","claiming","DEFAULT_COLORS","SetColorHandler","UpdateLabelHandler","setText","Modeling","BaseModeling","_bpmnRules","getHandlers","targetLaneShape","targetLane","collaborationElement","processElement","claimId","ATTACH_ORIENTATION_PADDING","BOUNDARY_TO_HOST_THRESHOLD","oppositeOrientationMapping","orientationDirectionMapping","BpmnLayouter","isAssociationOrDataAssociation","getManhattanOptions","getMessageFlowManhattanOptions","isCompensationAssociation","getSequenceFlowManhattanOptions","preferredLayouts","getLoopPreferredLayout","getBoundaryEventPreferredLayouts","getSubProcessManhattanOptions","getAttachOrientation","attachedElement","preserveDocking","getMessageFlowPreserveDocking","getSubProcessPreserveDocking","getConnectionDocking","isAnyOrientation","orientations","getHorizontalOrientation","getVerticalOrientation","isOppositeOrientation","isOppositeHorizontalOrientation","horizontalOrientation","oppositeHorizontalOrientation","isOppositeVerticalOrientation","verticalOrientation","oppositeVerticalOrientation","isHorizontalOrientation","sourceLayout","targetLayout","attachOrientation","attachedToSide","targetOrientation","getBoundaryEventLoopLayout","getBoundaryEventLayout","getBoundaryEventSourceLayout","getBoundaryEventTargetLayout","getAttachedSideLayout","shouldConnectToSameSide","threshold","areCloseOnAxis","BaseLayouter","manhattanOptions","withoutRedundantPoints","repairConnection","BehaviorModule","DiOrderingModule","OrderingModule","CommandModule","TooltipsModule","LabelSupportModule","AttachSupportModule","SpaceToolModule","layouter","CroppingConnectionDocking","ElementPalette","palette","_palette","_lassoTool","_handTool","_globalConnect","getPaletteEntries","createListener","shapeOptions","shortType","createSubprocess","startEvent","autoSelect","createParticipant","activateHand","activateSelection","separator","PaletteModule","LassoToolModule","HandToolModule","GlobalConnectModule","elementPalette","ReplaceElementsPreview","previewSupport","replaceVisual","visualReplacements","tempShape","cssEscape","dragGroup","display","dragger","addDragger","restoreVisual","originalGfx","PreviewSupportModule","replaceElementsPreview","TARGET_BOUNDS_PADDING","TASK_BOUNDS_PADDING","TARGET_CENTER_PADDING","AXES","ConnectSnappingAction","handleConnectEvent","originalEvent","isCmd","initialConnectionStart","snapToShape","getTargetBoundsPadding","isAnyType","snapToPosition","snapToTargetMid","snapBoundaryEventLoop","dimensionForAxis","getDimensionForAxis","axisPosition","setSnapped","isMid","isReverse","axes","newCoordinate","coordinate","CreateMoveSnappingAction","CreateMoveSnapping","setSnappedIfConstrained","attach","isSnapped","snapBoundaryEvent","targetTRBL","areAll","isContainer","getDockingSnapOrigin","docking","isMove","initSnap","snapContext","setSnapOrigin","setSnapLocations","addSnapTargetPoints","snapPoints","snapTargets","getSnapTargets","snapTarget","topLeft","bottomRight","SnappingModule","connectSnapping","createMoveSnapping","initialDiagram","Modeler","createDiagram","_interactionModules","TouchModule","_modelingModules","AlignElementsModule","LocateElementsModule","AutoScrollModule","AutoResizeModule","BendpointsModule","ConnectionPreviewModule","InteractionEventsModule","LabelElementsModule","ModelingModule","MoveModule","ReplacePreviewModule","buildprocess","refreshTemplates","searchDocs","docHeaders","docSortBy","docSortDesc","editTemplate","searchEmails","emailHeaders","emailSortBy","emailSortDesc","deleteTemplateDialog","deleteTemplateTitle","deleteTemplateText","confirmDeleteTemplate","promoteTemplatesDialog","promoteTemplatesTitle","promoteTemplatesText","allTemplates","templatePromote","confirmPromoteTemplates","templateKeys","templateNames","closeEditor","editType","tempName","templateeditor","documents","importData","newTable","editTable","newTableDialog","newTableTitle","newTableText","allowedChars","tableItems","addNewField","cancelNewTable","saveNewTable","editTableDialog","editTableTitle","editTableText","editField","cancelEditTable","confirmEditTable","addFieldDialog","addFieldTitle","fieldTypeItems","decimalPlaces","allowNull","cancelAddField","confirmAddField","editFieldDialog","editFieldTitle","cancelEditField","confirmEditField","deleteTableDialog","deleteTableTitle","deleteTableText","deleteTableName","confirmDeleteTable","exportTablesDialog","exportTablesTitle","exportTablesText","exportHeaders","tableExports","cancelExport","confirmExportTables","importTableDialog","cancelImportTable","importDataDialog","closeImportData","promoteTablesDialog","promoteTablesTitle","promoteTablesText","tablePromote","confirmPromoteTables","importDataTitle","importDataText","setDatabaseCols","selectedTable","handleFileUpload","uploadedFile","loadingText","previewData","databaseColumns","columnMapping","cancelImportData","confirmImportData","uploadProgress","uploadedData","totalRowCount","rowCount","uploadInterval","importReset","cols","sanatise","calculateUploadProgress","stopUploadProcess","log","readAsDataURL","gulpFile","mapData","mapColumns","header","$emit","colArr","VProgressLinear","databasetables","newRow","page","itemsPerPage","pageCount","prevBatch","orderDir","rowTo","rowFrom","nextBatch","updateOrderBy","orderField","orderDirs","updateResultset","addRowText","dateFormat","timeFormat","dateTimeFormat","editRowText","deleteRowDialog","deleteRowTitle","deleteRowText","deleteRowText2","confirmDeleteRow","VPagination","viewtable","UPLOADED_BY","thankyou","oauthcallback","buildReport","reportsList","viewReport","LOCKED_BY","CREATED_BY","editReport","promoteReportsDialog","promoteReportsTitle","promoteReportsText","reportPromote","confirmPromoteReports","reportKeys","reportNames","closeReport","fieldLoading","selectedGroups","resetQuery","availableTables","selectedTable1","availableFields1","filterFields","selectedFields1","addBtn1","addRow","activeRows","selectedTable2","availableFields2","selectedFields2","joinTypes","joinType2","availableJoins2","filterJoins","joinField2","addBtn2","removeRow","selectedTable3","availableFields3","selectedFields3","joinType3","availableJoins3","joinField3","addBtn3","selectedTable4","availableFields4","selectedFields4","joinType4","availableJoins4","joinField4","addBtn4","selectedTable5","availableFields5","selectedFields5","joinType5","availableJoins5","joinField5","addBtn5","selectedTable6","availableFields6","selectedFields6","joinType6","availableJoins6","joinField6","addBtn6","selectedTable7","availableFields7","selectedFields7","joinType7","availableJoins7","joinField7","addBtn7","selectedTable8","availableFields8","selectedFields8","joinType8","availableJoins8","joinField8","addBtn8","selectedTable9","availableFields9","selectedFields9","joinType9","availableJoins9","joinField9","addBtn9","selectedTable10","availableFields10","selectedFields10","joinType10","availableJoins10","joinField10","whereOptions","filterWhere","where1","whereTypes","whereType1","whereValue1","addWhereDisabled1","addWhere","and1","or1","clearWhere","activeWheres","where2","whereType2","whereValue2","addWhereDisabled2","and2","or2","removeWhere","where3","whereType3","whereValue3","addWhereDisabled3","and3","or3","where4","whereType4","whereValue4","addWhereDisabled4","and4","or4","where5","whereType5","whereValue5","orderBy1","orderTypes","orderType1","addOrderDisabled1","addOrder","order1","clearOrder","activeOrders","orderBy2","orderType2","addOrderDisabled2","order2","removeOrder","orderBy3","orderType3","addOrderDisabled3","order3","orderBy4","orderType4","addOrderDisabled4","order4","orderBy5","orderType5","buildQuery","isAdvanced","buildResult","allowContinue","resetQueryDialog","confirmResetQuery","VDivider","VStepperHeader","VStepperStep","buildreport","exportReport","viewreport","supportFrom","supportTo","supportSubject","categories","supportCategory","supportDescription","attachments","submitRequest","supportResultDialog","supportResultTitle","supportResultText","supportPayload","encodeImgtoBase64","sizeError","snackFileTooBig","base64","sendRequest","supportForm","$router","support","changepw","VueRouter","routes","Login","External","ChangePassword","ThankYou","OAuthCallback","Home","requiresAuth","Admin","requiresDevPlus","Documents","Templates","TemplateEditor","FormBuilder","BuildForm","ProcessDesigner","BuildProcess","DatabaseTables","ViewTable","StartNewCase","RunningCases","requiresSuperPlus","MyTasks","TeamTasks","requiresManagerPlus","UnassignedTasks","AllTasks","HistoricCases","Reports","BuildReport","ViewReport","ViewTask","ViewCaseHistory","Support","base","beforeEach","record","requiresAdmin","redirect","fullPath","getContainedActivities","getFlowElements","getContainedBoundaryEvents","filterElementsByType","isCompensationEventAttachedToActivity","activity","activityId","compensateEventDefinition","canActivityBeCompensated","getActivitiesForCompensation","getActivitiesForActivityRef","activitiesForActivityRef","createActivityRefOptions","activities","waitForCompletion","activityRef","domClear","SPACE_REGEX","QNAME_REGEX","ID_REGEX","HTML_ESCAPE_MAP","'","selectedOption","selectedType","elementSyntax","typeSelect","list","referencedType","removeAllChildren","domElement","addEmptyParameter","getOptionLabel","errorCode","escalationCode","refreshOptionsModel","referableObjects","domSelector","optionEntry","assigned","idExists","validateId","evt","MouseEvent","view","bubbles","cancelable","initEvent","dispatchEvent","createEventObject","fireEvent","createDropdown","_onGlobalClick","dropdownNode","buttonNode","menuNode","createOnGlobalClick","_event","onGlobalClick","contains","removeEventListener","menuItem","menuItemNode","propertiesProvider","nameEntry","semver","validateAgainstSchema","getTemplateSchemaVersion","SUPPORTED_SCHEMA_VERSION","Validator","_templatesById","_validTemplates","_errors","addAll","_logError","_validateTemplate","schemaVersion","$schema","compare","filteredSchemaErrors","getErrors","getValidTemplates","schemaUri","re","schemaErrors","emptyOption","defaultTemplate","toDateString","timestamp","date","leftPad","character","updated","formHelper","each","generateValueId","formFieldTextField","getSelectedFormField","selectedFormField","ensureFormKeyAndDataSupported","formFieldsEntry","formBusinessKeyFormFieldEntry","formDataExtension","storedValue","existingFormField","f","enumValue","newConstraint","constraint","currentConstraint","runningProcessesCount","origInstanceId","definitionId","deletedInstanceId","completedInstances","deployedProcess","deploymentName","processXml","deletedDeploymentId","savedProcess","savedExternalProcess","allExternalProcessXml","savedProcessXml","deploymentSuccess","deletedXmlId","latestVersions","updatedXmlVersion","setCaseId","setCaseLabel","getCaseId","getCaseLabel","allCaseLabels","newCaseId","historicVariables","deletedVariable","bulkDeletion","processSelections","importXml","caseStatus","statusGet","statusUpdate","caseDataDeleted","processLocked","processLockedUser","processMap","activityInstance","savedStartedBefore","savedStartedAfter","savedFinishedBefore","savedFinishedAfter","histDatesCleared","migrationSuccess","setVarSuccess","getProcesses","getAllProcesses","getProcessXml","bpmn20Xml","getProcessInstances","startVars","startExternalProcess","deleteProcessInstance","deleteHistoricProcessInstance","bulkDeleteHistoricProcessInstance","getCompletedInstances","encodeURIComponent","instances","rootProcessInstanceId","sdate","edate","getHistoricVariables","processInstanceId","deleteHistoricVariable","deployProcess","deleteDeployment","saveProcessXml","selections","saveExternalProcessXml","getAllProcessXml","allXml","getAllExternalProcessXml","conns","extXmls","getSavedProcessXml","xmlId","updateXmlVersion","getProcessMap","getInstanceActivity","setExternalCaseId","getCaseLabelById","getAllCaseLabels","instIds","caseLabels","getNewCaseId","setCaseStatus","opened","getCaseStatus","updateCaseLabel","updateAssignee","deleteCaseData","deleteProcessData","processLockCheck","unlockAll","sourceProcessDefId","targetProcessDefId","plan","migrationData","instanceIds","modifications","PROCESSES","ALL_PROCESSES","PROCESS_COUNT","RUNNING_PROCESSES","RUNNING_PROCESSES_COUNT","PROCESS_DATA","UPDATE_DEFINITION_ID","UPDATE_INSTANCE_ID","UPDATE_ORIG_INSTANCE_ID","DELETED_INSTANCE_ID","COMPLETED_INSTANCES","DEPLOYED_PROCESS","UPDATE_PROCESS_ACTION","UPDATE_PROCESS_ID","UPDATE_DEPLOYMENT_NAME","PROCESS_XML","ALL_PROCESS_XML","ALL_EXTERNAL_PROCESS_XML","DELETED_DEPLOYMENT_ID","SAVED_PROCESS","SAVED_EXTERNAL_PROCESS","SAVED_PROCESS_XML","DEPLOYMENT_SUCCESS","DELETED_PROCESS_XML","LATEST_VERSIONS","UPDATED_XML_VERSION","SET_CASE_ID","SET_CASE_LABEL","GET_CASE_ID","GET_CASE_LABEL","ALL_CASE_LABEL","NEW_CASE_ID","STATUS_SET","STATUS_GET","STATUS_UPDATE","HISTORIC_VARIABLES","UPDATE_HISTORIC_CASE_ID","DELETED_VARIABLE","BULK_DELETION","PROCESS_SELECTIONS","UPDATE_IMPORT_XML","CASE_DATA_DELETED","EDITING_PROCESS","PROCESS_LOCK_CHECK","PROCESS_MAP","ACTIVITY_INSTANCE","SAVED_STARTED_BEFORE","SAVED_STARTED_AFTER","SAVED_FINISHED_BEFORE","SAVED_FINISHED_AFTER","HIST_DATES_CLEARED","MIGRATION_SUCCESS","SET_VAR_SUCCESS","processProps","eventProps","linkProps","documentationProps","idProps","nameProps","executableProps","serviceTaskDelegateProps","userTaskProps","asynchronousContinuationProps","callActivityProps","multiInstanceProps","conditionalProps","scriptProps","errorProps","formProps","startEventInitiator","variableMapping","processVariablesProps","listenerProps","listenerDetails","listenerFields","elementTemplateDescriptionProps","elementTemplateChooserProps","elementTemplateCustomProps","elementTemplateInputParametersProps","elementTemplateOutputParametersProps","elementTemplateErrorsProps","errorsProps","connectorDetails","connectorInputParameters","connectorOutputParameters","jobConfiguration","externalTaskConfiguration","isExternalTaskPriorityEnabled","externalBo","isExternalTask","isJobConfigEnabled","getListenerLabel","PROCESS_KEY_HINT","TASK_KEY_HINT","getIdOptions","getNameOptions","getProcessOptions","createElementTemplateGroups","descriptionGroup","idOptions","elementTemplateInputParametersGroup","elementTemplateOutputParametersGroup","elementTemplateErrorsGroup","customFieldsGroups","createGeneralTabGroups","generalGroup","detailsGroup","multiInstanceGroup","asyncGroup","jobConfigurationGroup","enabled","externalTaskGroup","candidateStarterGroup","historyTimeToLiveGroup","tasklistGroup","documentationGroup","createVariablesTabGroups","variablesGroup","createProcessVariablesTabGroups","processVariablesGroup","createFormsTabGroups","formGroup","createListenersTabGroups","listenersGroup","listenerDetailsGroup","listenerFieldsGroup","createInputOutputTabGroups","inputParametersGroup","outputParametersGroup","errorsGroup","createConnectorTabGroups","connectorDetailsGroup","connectorInputParametersGroup","connectorOutputParametersGroup","createFieldInjectionsTabGroups","fieldGroup","createExtensionElementsGroups","propertiesGroup","HarlequinPropertiesProvider","getTabs","generalTab","elementTemplateTab","variablesTab","processVariablesTab","formsTab","listenersTab","inputOutputTab","connectorTab","fieldInjectionsTab","extensionsTab","getError","getCollapsibleTitle","CreateBusinessObjectListHandler","ensureList","newObjects","childObjects","childObject","previousChilds","ElementTemplatesLoader","loadTemplates","_loadTemplates","_elementTemplates","reload","templateErrors","setTemplates","validator","validTemplates","templatesChanged","getOutputParameterEntries","ErrorsEntries","getErrorsHeading","getErrorsEntries","errorsEntries","topicEntry","externalTopic","DEFAULT_DELEGATE_PROPS","DELEGATE_PROPS","DMN_CAPABLE_PROPS","EXTERNAL_CAPABLE_PROPS","DMN_OPTION","EXTERNAL_OPTION","CONNECTOR_OPTION","SCRIPT_OPTION","getType","hasScriptSupport","implType","DELEGATE_TYPES","PROPERTIES","isDelegate","getDelegationLabel","delegateEntry","delegationLabel","isList","selectbox","inputName","randomKeyGen","samllSsoEnabled","msalConfig","msalActiveAccount","msalUsername","samlUsername","samlResp","samlLoggedOut","ssoUserAdded","ldapAuthSuccess","ldapUserNotExist","authenticated","cipher","cryptojs","AES","encrypt","extCipher","samlLogin","loginUrl","samlLoginUrl","completeSsoLogin","decipher","decrypt","enc","Utf8","loggedInData","newPass","userEmail","samlAuthCheck","isAuthenticated","samlResponse","samlLogout","dt","ldapLogin","hqUsername","redirectToLogin","msalObj","msal","logoutReq","account","getAccountByUsername","logoutPopup","samlUrl","LOGGED_IN_USER","MSAL_SSO_ENABLED","SAML_SSO_ENABLED","LDAP_ENABLED","MSAL_CONFIG","MSAL_ACTIVE_ACCOUNT","MSAL_USERNAME","SAMLL_USERNAME","SSO_USER_ADDED","SAML_RESP","SAML_LOGGED_OUT","LDAP_AUTH_SUCCESS","LDAP_USER_NOT_EXIST","LOGGED_OUT_USER","debounce","CLASS_ACTIVE","FOCUS_LEAVE_DELAY","TEXT_NODE_NAME","SUGGESTION_LIST_BOX_THRESHOLD","autoSuggestTextBox","getSuggestionListPosition","listNode","range","getSelectionRange","cursorBounds","clientBounds","listBounds","handleFocusLeave","clearSuggestionList","hideSuggestionList","suggestItems","editorNode","delegateTarget","focusNode","caretPosition","getCaretPosition","canSuggest","getItems","updateSuggestionList","createSuggestionItem","setPosition","itemNode","innerText","handleItemClick","wordIndex","currentWord","selectRange","execCommand","getWordUnderCursor","itemLowerCase","valueLowerCase","getSelection","getRangeAt","startOffset","createRange","setStart","setEnd","removeAllRanges","addRange","currentCursorPositon","nodeName","wholeText","allWords","findWords","word","matchValue","wordStart","wordEnd","matchAll","regex","signal","escalation","events","escalationEvents","timerEvents","compensationEvents","conditionalEvents","registerHandlers","applyDefaultTemplate","command","commandContext","historyTimeToLiveEntry","isExclusive","canRemoveFailedJobRetryTimeCycle","asyncBeforeEntry","asyncBefore","asyncAfterEntry","asyncAfter","exclusiveEntry","exclusive","isMap","isInsideExpression","openIndex","closeIndex","isInsideUnclosedExpression","lastIndexOf","findWordInContentEditable","childNodes","textBefore","getDescription","typeInfo","parameterType","createParameterTypeElem","withOutCurrent","globalIndex","newEntry","listenerEntry","errorsEntry","ReplaceBehavior","retryTimeCycles","anyType","domQueryAll","queryAll","domDelegate","domMatches","xor","flattenDeep","keyBy","updateSelection","scrollTabs","HIDE_CLASS","DEBOUNCE_DELAY","isToggle","isSelect","isContentEditable","getPropertyPlaceholders","placeholders","getFormControls","controls","getFormControlValuesInScope","controlNodes","controlNode","checked","getFormControlValues","listContainer","listNodes","valueEqual","oldValue","allKeys","valuesEqual","oldValues","extractEntries","tabs","extractGroups","PropertiesPanel","setInputValue","contentEditable","activeElement","setSelection","setSelectValue","setToggleValue","nodeValue","setTextValue","getContentEditableSelection","selectionStart","selectionEnd","focusOffset","anchorOffset","setContentEditableSelection","domRange","domSelection","isImplicitRoot","provider","providers","newSelection","tabBarNode","scroller","selectors","tabsContainer","ignore","newActiveNode","oldActiveNode","linkNode","tabId","activateTab","_current","_bindListeners","panel","tabLinks","tabLink","visibleTabs","activeTab","visibleTabLinks","activeTabLink","_getProviders","_getTabs","tabsOrUpdater","activeTabId","activeTabNode","_entriesChanged","_updateActivation","prevEntries","prevEntryIds","entryIds","handleChange","getEntry","onChangeAction","isEntryDirty","executeAction","applyChanges","updateState","handlePaste","clipboardData","getData","handleSuggestItems","eventHandlerId","keyCode","updateShow","updateDisable","showNodes","showNode","expr","nodes","currentNode","shouldDisable","commandToExecute","applyValidationErrors","errorMessageNode","nextSibling","listEntryNodes","listValue","validateListItem","listEntryNode","containerNode","panelNode","_createPanel","_bindTemplate","inputNodes","isGroupVisible","groupNode","isTabVisible","toggleVisible","visible","labelNode","tabNode","tabLinkNode","tabVisible","groupVisible","listEntryContainer","existingElements","listItemNode","entriesToRemove","headerNode","tabLinksNode","tabContainerNode","tabIndex","querySelector","defaultPrevented","cssClass","getScriptType","scriptLanguagePropName","scriptValuePropName","isFormatRequired","boScriptResource","boScript","boScriptFormat","scriptResourceValue","scriptType","scriptValue","clearScriptFormat","btnNode","canClearScriptFormat","clearScriptResource","canClearScriptResource","clearScript","canClearScript","isScriptResource","MultiCommandHandler","ErrorEntries","HARLEQUIN_ERROR_EVENT_DEFINITION_TYPE","EMPTY_ERROR","findEntry","errorEntries","renderError","errorImplementation","errorReferenceIdx","expressionIdx","expressionEntry","removeInputParameter","createNewInputParameter","inputEntries","renderInputParameter","inputImplementation","nameIdx","TABLE_ROW_DIV_SNIPPET","DELETE_ROW_BUTTON_SNIPPET","createInputRowTemplate","createInputTemplate","createLabelRowTemplate","createLabelTemplate","diff","getEntryNode","labelRow","canUpdate","boElements","__invalidValues","invalidValues","valuesToValidate","deleteElement","rowToDelete","rowNode","showTable","isReadOnly","taskLocked","myTasksFollowUpIds","myTasksOverdueIds","allTasks","allTasksFollowUpIds","allTasksOverdueIds","unassignedTasksFollowUp","unassignedTasksFollowUpIds","unassignedTasksOverdue","unassignedTasksOverdueIds","claimtask","externalProcessVersion","savedGridLayout","sqlQueries","processVars","uploadedForm","taskData","completedTask","savedTask","reassignedStatus","historicTasks","teamTasksFollowUp","teamTasksFollowUpIds","teamTasksOverdue","teamTasksOverdueIds","previewLoaded","deletedForm","copiedForm","subformExtScript","subformSchema","subformTitle","subformLayout","subformQueries","markedForms","unmarkedForms","gridRowAdded","exportedForm","importFormSaved","formDeployed","formLocked","formLockedUser","lockedForms","apiReturnData","apiAuthCode","veridasResp","taskComplete","promoteFormData","promoteFormRes","countMyTasks","getMyTasks","followUpReq","followUpIds","overdue","overdueIds","procDefIds","procInstIds","processDefinitionId","now","fdate","odate","subProcInstIds","defData","procDefData","defItem","instData","procInstData","caseData","subParent","labelItem","CASE_LABEL","caseStatuses","caseItem","CASE_ID","OPENED","getAllTasks","countUnassignedTasks","getUnassignedTasks","searchForParent","topLevelParentId","getSubParent","currentId","subProcessInstance","getSubParentData","parentObj","getTask","getExternalTask","checkTask","getForm","theForm","retrievedForm","theLayout","gridLayout","theQueries","theScript","getExternalForm","getSubform","getAllForms","getProcessForms","getSubFormList","subforms","getProcessVars","uploadForm","schema","isMulti","isDeployed","markFormsDeployed","markFormsUndeployed","newFormKey","getTaskData","getExternalTaskData","completeTask","completeExternalTask","saveTask","saveExternalTask","getCandidateGroups","bulkReassignTasks","getHistoricTasks","varData","taskStart","taskEnd","varTime","time","vdate","getTeamTasks","ep","members","lockCheck","promoteFormsCheck","fireApi","mutationData","apiParams","urlQuery","postData","apiResponse","veridasAuth","documentType","mobileUrl","mobileParams","veridasResponse","MY_TASKS","MY_TASKS_COUNT","MY_TASKS_FOLLOW_UP","MY_TASKS_FOLLOW_UP_IDS","MY_TASKS_OVERDUE","MY_TASKS_OVERDUE_IDS","ALL_TASKS","ALL_TASKS_COUNT","ALL_TASKS_FOLLOW_UP","ALL_TASKS_FOLLOW_UP_IDS","ALL_TASKS_OVERDUE","ALL_TASKS_OVERDUE_IDS","UNASSIGNED_TASKS","UNASSIGNED_TASKS_COUNT","UNASSIGNED_TASKS_FOLLOW_UP","UNASSIGNED_TASKS_FOLLOW_UP_IDS","UNASSIGNED_TASKS_OVERDUE","UNASSIGNED_TASKS_OVERDUE_IDS","CLAIM_TASK","UPDATE_TASK_DATA","UPDATE_TASK_ID","UPDATE_TASK_NAME","UPDATE_FORM_KEY","UPDATE_PROCESS_KEY","UPDATE_PROCESS_VERSION","UPDATE_EXTERNAL_PROCESS_VERSION","UPDATE_PROCESS_NAME","UPDATE_FORM_ACTION","UPDATE_FORM_ID","DEPLOYED_FORM","FORM_TITLE","EXT_SCRIPT","GRID_LAYOUT","SQL_QUERIES","PROCESS_VARS","UPLOADED_FORM","COPIED_FORM","DELETED_FORM","TASK_DATA","COMPLETED_TASK","SAVED_TASK","CANDIDATE_GROUPS","CANDIDATE_USERS","REASSIGNED_STATUS","HISTORIC_TASKS","TEAM_TASKS","TEAM_TASKS_COUNT","TEAM_TASKS_FOLLOW_UP","TEAM_TASKS_FOLLOW_UP_IDS","TEAM_TASKS_OVERDUE","TEAM_TASKS_OVERDUE_IDS","PREVIEW_LOADED","ALL_FORMS","PROCESS_FORMS","SUBFORM_LIST","SUBFORM_SCHEMA","SUBFORM_TITLE","SUBFORM_LAYOUT","SUBFORM_QUERIES","SUBFORM_EXT_SCRIPT","MARKED_FORMS","UNMARKED_FORMS","UPDATE_CASE_ID","BULK_REASSIGN","GRID_ROW_ADDED","EXPORTED_FORM_DATA","IMPORT_FORM_SAVED","EDITING_FORM","LOCK_CHECK","LOCK_CHECK_ALL","API_DATA","API_AUTH_CODE","VERIDAS_RESP","TASK_COMPLETE","PROMOTE_FORM_DATA","PROMOTE_FORM_RES","DOCUMENTATION_TEXT_FORMAT","findDocumentation","docs","textFormat","documentation","elementDocuEntry","processDocuEntry","propertiesPanel","boCalledElement","boCaseRef","callActivityType"],"mappings":"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QAAN,GACM,YAAN,GACM,UAAN,GACM,UAAN,GACM,OAAN,GACM,SAAN,GACM,aAAN,GACM,YAAN,GACM,gBAAN,GACM,YAAN,GACM,WAAN,GACM,YAAN,GACM,aAAN,GACM,WAAN,GACM,OAAN,GACM,KAAN,KACM,YAAN,KACM,QAAN,GACM,UAAN,GACM,MAAN,GACM,UAAN,GACM,SAAN,GACM,UAAN,GACM,UAAN,GACM,UAAN,EACM,WAAN,EACM,kBAAN,GACM,iBAAN,GACM,YAAN,GACM,eAAN,EACM,aAAN,GACM,gBAAN,EACM,WAAN,GACM,cAAN,EACM,kBAAN,GACM,YAAN,GACM,eAAN,EACM,YAAN,GACM,YAAN,GACM,eAAN,EACM,YAAN,GACM,SAAN,GACM,UAAN,GACM,OAAN,GACM,eAAN,GACM,eAAN,KACM,kBAAN,EACM,aAAN,EACM,WAAN,GACM,UAAN,GACM,cAAN,EACM,YAAN,GACM,WAAN,GACM,gBAAN,EACM,cAAN,GACM,aAAN,GACM,iBAAN,EACM,gBAAN,GACM,cAAN,EACM,mBAAN,GACM,WAAN,KACM,OAAN,GACM,SAAN,GACM,OAAN,KACM,OAAN,GACM,OAAN,GACM,SAAN,GACM,cAAN,GACM,aAAN,GACM,gBAAN,EACM,iBAAN,EACM,eAAN,GACM,cAAN,GACM,kBAAN,EACM,gBAAN,GACM,eAAN,GACM,oBAAN,EACM,kBAAN,GACM,iBAAN,GACM,eAAN,GACM,gBAAN,GACM,qBAAN,GACM,qBAAN,EACM,mBAAN,GACM,kBAAN,GACM,wBAAN,EACM,sBAAN,GACM,qBAAN,GACM,mBAAN,GACM,iBAAN,GACM,WAAN,GACM,YAAN,GACM,mBAAN,KACM,MAAN,GACM,OAAN,GACM,SAAN,GACM,eAAN,EACM,cAAN,EACM,aAAN,EACM,aAAN,EACM,kBAAN,EACM,YAAN,EACM,wBAAN,EACM,uBAAN,EACM,eAAN,GACM,gBAAN,GACM,eAAN,GACM,mBAAN,EACM,mBAAN,EACM,kBAAN,EACM,iBAAN,EACM,UAAN,EACM,cAAN,EACM,iBAAN,GACM,WAAN,GACM,oBAAN,GACM,MA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,KAAhB,kCAIA,0BACY,KAAZ,8BAEA,gDACY,KAAZ,6BAKM,KAAN,YACM,KAAN,iBAEI,YA3yBJ,SA2yBA,GAAM,IAAN,OAAM,OAAN,8JAcA,IAZA,YACA,gBACA,IACA,IACA,UAGA,uEACA,uEAGA,IACA,0BACA,mCACA,kCACA,KAIA,WAEA,GACA,OACA,CACA,QACA,YACA,YACA,OACA,kBACA,UACA,wBACA,cASA,yBACA,iDA3CA,sCA8CA,GA9CA,2JA+CA,cAEA,kHAGA,IAFA,KAEA,iCACA,gDACA,MAGA,GACA,4EA1DA,GAgEA,0BAhEA,iBAiEA,YACA,eACA,YAEA,2BACA,eACA,YACA,OACA,YACA,UACA,WAIA,gBACA,IAGA,IACA,sBACA,YACA,OACA,YACA,SACA,yBACA,UACA,aA3FA,2BAiGA,KACA,KACA,KACA,uBACA,+GACA,uBACA,4BACA,yBACA,+DACA,yBACA,2BACA,wBACA,0BACA,uBACA,0BACA,uBACA,0BACA,uBACA,iDACA,qCAEA,sBACA,sBACA,qBACA,UAEA,SAIA,wBACA,kDAEA,wBACA,aACA,iBACA,YACA,YACA,UACA,sBACA,cAMA,mVACA,iCACA,uBACA,yBAEA,yBACA,+BACA,+BACA,+BACA,kCACA,4BACA,qBACA,uBACA,cACA,cACA,kCACA,kDACA,YAKA,6BArKA,kCAsKA,mEAGA,gBACA,eACA,2BACA,eACA,YACA,OACA,YACA,UACA,UAGA,gBACA,KAIA,0DAGA,uBACA,gEACA,YACA,+CACA,4EAKA,uBACA,2DACA,YACA,+CACA,6EAKA,uBACA,4DACA,SACA,KACA,6EACA,uBACA,+FACA,4EACA,iFAEA,kFAEA,2FAEA,uBACA,kGACA,sFACA,8FAOA,4BAGA,SACA,iBAEA,uBACA,aAGA,oCAKA,uBACA,uBACA,2BACA,kHACA,yDAGA,uDAFA,sDAMA,iHACA,2DACA,4DAGA,0DACA,gEACA,wEACA,wEAEA,iFACA,uBACA,6EACA,gFAIA,oEACA,iFACA,uBACA,gFACA,wFAUA,SACA,2BACA,0BAEA,4BACA,2BAGA,yCACA,YACA,eACA,YACA,OACA,YAEA,QACA,UACA,UAGA,OAnTA,QAyWA,GAjDA,iCACA,cACA,eAGA,gBAEA,oBACA,iBACA,uBACA,KACA,wBAEA,yBACA,kCACA,4BACA,kDACA,4CACA,WAEA,6CAIA,4BACA,cACA,eAGA,WACA,iCACA,iBACA,KACA,wBACA,kCACA,4BACA,kDACA,qCACA,WAEA,6CAIA,yDACA,6DAIA,+BAGA,IAFA,KAEA,sCACA,yCAEA,2CAwFA,GApFA,gCACA,6DAQA,8BACA,mEAIA,4BACA,iCACA,uBACA,WACA,8BACA,8FACA,qBACA,kCACA,4BAEA,+BACA,yBACA,8BACA,sBACA,sBACA,kDACA,UACA,UAGA,wBACA,kEACA,wDACA,iDACA,0DAGA,sBACA,qEAKA,4BACA,SAEA,oBACA,UAGA,iCACA,uBACA,SACA,WACA,4GAEA,+BACA,yBACA,+BACA,qBACA,kCACA,4BACA,sBACA,sBACA,cACA,kDACA,UACA,UAGA,wBACA,yDAGA,sBACA,qEAKA,4BAmCA,IAjCA,6BACA,iBACA,iBACA,KACA,wBACA,wBACA,yBACA,WAEA,4CAEA,iCACA,uBAGA,yBACA,+BACA,+BACA,+BACA,kCACA,4BACA,qBACA,uBACA,cACA,cACA,kCACA,kDACA,WAGA,4DACA,KAEA,sCACA,kFAEA,6CAIA,mEAKA,IAJA,mDACA,mDACA,KAEA,uCACA,wFAEA,2CACA,uEAIA,kCAgBA,IAdA,6BACA,iBACA,iBACA,KACA,wBACA,wBACA,yBACA,WAEA,4CAEA,KACA,KAEA,yCACA,4CACA,gBACA,uCACA,2CACA,yBACA,QACA,sDACA,WAGA,wBACA,0DACA,2DAGA,wCACA,0DACA,+EACA,6EACA,wDAEA,8BACA,8EAEA,sCACA,uDACA,iDAEA,gDAIA,iCACA,aACA,qBACA,YACA,4BAEA,yBACA,+BACA,+BACA,kCACA,4BACA,qBACA,kDACA,UACA,+CAGA,wBACA,+CACA,uEACA,6CAGA,sBACA,6CAGA,6CAyEA,GArEA,4BACA,iCACA,uBACA,yBACA,qBACA,oCAEA,yBACA,+BACA,+BACA,cACA,cACA,kCACA,oDACA,WAIA,0BACA,iBACA,WACA,eACA,6BACA,aACA,gBACA,WACA,2BACA,cACA,gCACA,uBACA,YAKA,2BACA,iCACA,uBACA,qBACA,4BACA,2BACA,yBAEA,yBACA,qBACA,qBACA,kDACA,YAKA,4BACA,8EACA,iCACA,iBACA,OAEA,yBACA,qBACA,kDACA,yBACA,WAGA,4CAIA,4BAIA,IAHA,KACA,KAEA,sCAsBA,GArBA,wCACA,sCACA,uCACA,sCACA,+CACA,yCACA,+BACA,+BACA,WAEA,sGACA,4CACA,uFACA,gGAEA,6EACA,sFAKA,8FAKA,IAJA,0DACA,0DACA,KAEA,0DACA,8HAEA,kDACA,qFAIA,iDAGA,IAFA,KAEA,yDACA,4DAEA,kDAIA,+CACA,uFAKA,wBACA,oBACA,WACA,MACA,mCACA,cACA,UACA,6BACA,wBACA,+BACA,YAKA,KACA,qBACA,GACA,WACA,OACA,sBACA,gBACA,0BACA,wBACA,+BACA,YAIA,iCACA,aACA,iBACA,YACA,4BAEA,yBACA,+BACA,qBACA,0BACA,kDACA,UACA,QACA,aACA,OACA,aACA,OACA,YAMA,6CAIA,4BACA,mDAGA,kCACA,uBAEA,+FACA,MACA,4DAGA,uFA9wBA,QAoxBA,iWACA,sBACA,wDAEA,4BACA,0BACA,0CA1xBA,2CA8CA,IA9CA,aA8CA,YA9CA,0CA8CA,GA9CA,iBA8CA,IA9CA,wBAiyBA,eACA,KACA,sBACA,YACA,OACA,YACA,UACA,UAEA,2BACA,YACA,eACA,YACA,OACA,YACA,UACA,WAGA,2CAEA,WACA,4BAEA,YACA,qCAEA,kBA5zBA,+CA8zBI,YAzmDJ,SAymDA,GACM,KAAN,qBACM,IAAN,iCACQ,GAAR,sBAEA,sCACY,KAAZ,6CAGA,sCACY,KAAZ,SAGA,qCACY,KAAZ,YAGA,qCACY,KAAZ,aAGU,KAAV,mBACU,MAMJ,IADA,IAAN,IACA,6BACQ,KAAR,cACQ,IAGF,KAAN,iBAEI,UA5oDJ,WA6oDM,KAAN,gEACM,KAAN,gBACM,KAAN,UACA,wCACQ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V,2CAEM,QAAN,GACM,OAAN,GACM,OAAN,GACM,UAAN,EACM,OAAN,EACM,WAAN,GACM,UAAN,GACM,aAAN,MAGE,QAvLF,WAuLI,IAAJ,OAAI,OAAJ,uJACA,8CAUA,GARA,0BACA,sBAGA,4BACA,gBAGA,wBACA,uBACA,qBACA,uCACA,qBACA,gBAMA,IAJA,QACA,IACA,IACA,sBACA,oBAMA,GALA,sBACA,4BACA,kBACA,+BAEA,mBACA,wBACA,qBACA,eACA,gBACA,iBACA,gBACA,kBACA,iBACA,mBACA,iBACA,oBACA,qBACA,QACA,IAEA,uBACA,gBACA,gBACA,gBACA,iBACA,UACA,SACA,2BACA,gBACA,oBACA,qBACA,iBACA,gBACA,uBACA,QACA,IAEA,uBACA,gBACA,kBACA,gBACA,2BACA,gBACA,oBACA,uBACA,QACA,UAMA,aA5EA,SA6EA,mDACA,uBACA,aACA,kBACA,wCACA,2FAGA,IAFA,8CAEA,mBACA,iHAGA,qBAzFA,UA4FA,kCAEA,wBACA,uBACA,uBACA,uCAEA,WACA,kCACA,CACA,cACA,gBACA,eACA,eACA,iBACA,iBACA,YACA,UAEA,eAGA,uBAlHA,wBAmHA,sCACA,GACA,oBACA,4BACA,qBAvHA,UA0HA,kDACA,uCAEA,eACA,kCACA,CACA,cACA,gBACA,eACA,eACA,iBACA,iBACA,YACA,UAEA,iBAzIA,+CA6IE,cApUF,WAqUI,KAAJ,eAEE,QAAF,CACI,aADJ,SACA,GACM,KAAN,gBACM,IAAN,sBACA,oBACM,KAAN,MACM,KAAN,SAAQ,KAAR,UAAQ,IAAR,MACM,IAAN,oCACA,kCACU,KAAV,SAAY,KAAZ,uBAAY,IAAZ,sBAAY,KAAZ,yBAGM,KAAN,iBAEI,YAdJ,SAcA,GACM,KAAN,gBACM,IAAN,qBACA,oBACA,gBACM,KAAN,MACM,KAAN,MAGM,IAFA,IAAN,KAEA,gCACA,kCACU,EAAV,wBAIM,IAAN,iBACQ,IAAR,oBACQ,GAAR,YACU,IAAV,uBACY,IAAZ,oCACc,GAAd,kCACA,mCACkB,IAAlB,iEACA,iEACkB,KAAlB,SAAoB,KAApB,EAAoB,IAApB,KAOM,KAAN,iBAEI,YA/CJ,WAgDM,IAAN,qCAIQ,IAHA,IAAR,qCACA,uCAEA,yBACU,GAAV,qBACY,IAAZ,8BACA,8BACA,kBACY,KAAZ,mBAAc,KAAd,EAAc,IAAd,EAAc,KAAd,MAKI,OA9DJ,SA8DA,GACM,IAAN,iBACM,KAAN,MACM,KAAN,oBAEI,UAnEJ,SAmEA,GACM,IAAN,iBACM,KAAN,MASM,IAPA,IAAN,oBACA,qBACA,sBACA,gBACA,eACA,qBAEA,iCACQ,GAAR,uBACU,KAAV,uBACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,QAIN,SA3FJ,SA2FA,KACM,GAAN,UACQ,IAAR,cACQ,KAAR,MAEM,GAAN,SACQ,IAAR,aACQ,KAAR,MAGM,IAAN,2BACM,KAAN,MACM,KAAN,sBAEI,YAzGJ,SAyGA,GACM,IAAN,2BACM,KAAN,MACM,IAAN,cACM,KAAN,MACM,IAAN,aACM,KAAN,MAOM,IALA,IAAN,YACA,gBACA,iBACA,YAEA,mCACQ,GAAR,yBACU,KAAV,yBACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,KAAV,MACU,QAIN,WAjIJ,WAkIM,KAAN,UACM,KAAN,cACM,KAAN,gBAEI,SAtIJ,SAsIA,GACM,IAAN,2BACM,KAAN,MACM,KAAN,sBAEI,YA3IJ,SA2IA,GACM,IAAN,2BACM,KAAN,MAKM,IAHA,IAAN,YACA,gBAEA,mCACQ,GAAR,yBACU,KAAV,yBACU,KAAV,MACU,KAAV,MACU,QAIN,WA3JJ,WA4JM,KAAN,YACM,KAAN,eAEI,WA/JJ,WAgKM,IAAN,qCAEM,GAAN,GAOQ,IANA,IAAR,KACA,6BACA,KACA,KACA,KAEA,kCAMU,IALA,IAAV,qCACA,sCACA,gCACA,iCAEA,yBACY,GAAZ,mCAGU,GAAV,8BACY,IAAZ,uBACA,6BAEY,GAAZ,sCAIQ,EAAR,sBACQ,EAAR,qBAEQ,IAAR,wCACU,IAAV,+BACA,mCACA,oCACA,6BACA,4BACA,KAEU,GAAV,2CACY,GAAZ,+BAEY,IAAZ,uCACc,GAAd,oCACgB,EAAhB,0BACgB,MAKF,GADd,2BACA,YAEA,iBAGA,cACc,GAAd,QAEA,cACc,GAAd,QAKQ,IAAR,wCACU,IAAV,iCACA,mCAEA,4CACY,GAAZ,iCAIQ,EAAR,sBAEQ,IAAR,yBACA,QACU,GAAV,OAEA,QACU,GAAV,aAEA,QACU,GAAV,gBAGQ,KAAR,cACQ,KAAR,cACQ,KAAR,iBACQ,KAAR,cAGI,UA3PJ,WA8PM,IAFA,IAAN,KAEA,iCACQ,GAAR,sBACU,EAAV,MAAY,KAAZ,SAAY,MAAZ,oBAAY,OAAZ,2BACA,CACU,IAAV,qCACA,sCACA,gCACA,iCACU,EAAV,MAAY,KAAZ,OAAY,MAAZ,QAAY,OAAZ,QAAY,SAAZ,QAAY,UAAZ,UAIM,IAAN,wCACQ,IAAR,+BACA,mCACA,oCACA,6BACA,4BACQ,EAAR,MAAU,KAAV,QAAU,MAAV,QAAU,UAAV,QAAU,WAAV,QAAU,OAAV,QAAU,MAAV,UAGM,IAAN,wCACQ,IAAR,iCACA,mCACQ,EAAR,MAAU,KAAV,QAAU,MAAV,QAAU,UAAV,UAGM,KAAN,cAEI,WA3RJ,WA4RM,KAAN,qBAEI,kBA9RJ,WA+RM,KAAN,oBACM,KAAN,qCACM,KAAN,iBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,kBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,oBACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,eACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,aACM,KAAN,cACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,oBACM,KAAN,qBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,mBACM,KAAN,oBACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,WACM,KAAN,eACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,gBACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,eACM,KAAN,eACM,KAAN,eACM,KAAN,eACM,KAAN,eACM,KAAN,QACM,KAAN,QACM,KAAN,QACM,KAAN,QACM,KAAN,QACM,KAAN,OACM,KAAN,OACM,KAAN,OACM,KAAN,OACM,KAAN,OACM,KAAN,qBACM,KAAN,qBACM,KAAN,qBACM,KAAN,qBACM,KAAN,iBACM,KAAN,YACM,KAAN,YACM,KAAN,YACM,KAAN,YACM,KAAN,YACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,cACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,UACM,KAAN,qBACM,KAAN,qBACM,KAAN,qBACM,KAAN,qBACM,KAAN,iBACM,KAAN,eACM,KAAN,cACM,KAAN,cACM,KAAN,eAEI,aA7ZJ,SA6ZA,GACM,IAAN,KAWM,GATE,EADR,UACA,iCAEA,mCAGA,gBACQ,KAAR,KACQ,GAAR,GAEA,eAEQ,IAAR,GACU,UAAV,kBAGQ,KAAR,+BACQ,GAAR,IAGI,YAnbJ,WAmbM,IAAN,OAEM,GADA,KAAN,WACA,6BACQ,IAAR,qCAEQ,EAAR,uBACA,KACY,EAAZ,cAAc,KAAd,EAAc,MAAd,EAAc,MAAd,QAAc,UAAd,IAEY,EAAZ,cAAc,KAAd,EAAc,MAAd,EAAc,UAAd,OAKM,KAAN,MAEI,WAncJ,WAmcM,IAAN,OACA,GACQ,SAAR,cACQ,aAAR,kBACQ,WAAR,gCACQ,YAAR,iBACQ,WAAR,gBACQ,aAAR,oCACQ,UAAR,iBACQ,UAAR,eACQ,UAAR,eACQ,UAAR,eACQ,UAAR,gBAEM,KAAN,iDAGQ,GAFA,EAAR,mCACQ,EAAR,YACA,sBACU,EAAV,cAAY,KAAZ,gBACA,CACU,IAAV,GACY,SAAZ,WACY,UAAZ,UAEU,EAAV,sDACY,EAAZ,cAAc,KAAd,oBAKI,UAjeJ,WAkeM,KAAN,MAEI,WApeJ,WAqeM,KAAN,cAEI,YAveJ,WAueM,IAAN,OAEM,GADA,KAAN,YACA,yBACQ,KAAR,cAAU,KAAV,gBACA,CACQ,IAAR,GACU,SAAV,cACU,UAAV,UAEQ,KAAR,sDACU,EAAV,mCACU,EAAV,cAAY,KAAZ,iBAII,kBAtfJ,WAufM,KAAN,SACM,KAAN,iBACM,KAAN,mBACM,KAAN,6EC1gFqV,M,sCCQjV,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,MAAiB,QA6BhC,IAAkB,GAAW,CAAC2F,iBAAA,KAAc9B,OAAA,KAAKC,QAAA,KAAMC,aAAA,OAAaC,UAAA,OAAUC,WAAA,OAAWC,OAAA,KAAKoB,aAAA,KAAW0sC,cAAA,KAAW7tC,UAAA,KAAQu7H,YAAA,KAASt7H,QAAA,KAAMQ,OAAA,KAAKC,WAAA,KAAQC,aAAA,KAAUC,UAAA,KAAQqvD,YAAA,KAASC,mBAAA,KAAgBsrE,eAAA,QAAerrE,cAAA,QAAcsrE,gBAAA,KAAa75H,WAAA,KAAQf,aAAA,KAAWY,aAAA,KAAUX,WAAA,OC7B1Q,QACEriD,KAAM,cACNuiD,WAAY,CACV06H,YAAJ,KCtBqV,MCQjV,I,UAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,OAIa,MAAiB,QAQhC,IAAkB,GAAW,CAAC37H,OAAA,KAAKoB,aAAA,KAAWqrC,UAAA,KAAQ/rC,OAAA,OC3BtD,IAAI,GAAS,WAAa,IAAI3H,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,WAAW,CAACA,EAAG,QAAQ,CAACE,YAAY,cAAc,CAACF,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,cAAc,CAACE,YAAY,sBAAsB,CAACF,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,eAAe,IAAI,IAAI,IAAI,IAAI,IAAI,IACjV,GAAkB,GCDlB,GAAS,WAAa,IAAIH,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,SAAS,CAACE,YAAY,oBAAoB,CAACF,EAAG,eAAe,CAACH,EAAIsB,GAAG,IAAItB,EAAIuB,GAAGvB,EAAI3c,QAAQ,KAAK8c,EAAG,YAAYA,EAAG,eAAe,CAACG,MAAM,CAAC,cAAc,cAAc,MAAQN,EAAIyB,GAAG,mCAAmC,cAAc,GAAG,eAAe,IAAIhB,MAAM,CAACr6C,MAAO45C,EAAU,OAAElE,SAAS,SAAU4E,GAAMV,EAAIo0C,OAAO1zC,GAAKh0B,WAAW,YAAYyzB,EAAG,YAAYA,EAAG,QAAQ,CAACE,YAAY,YAAYC,MAAM,CAAC,MAAQ,GAAG,MAAQ,WAAWrvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQ,OAAOnB,EAAI6iI,kBAAkB,CAAC7iI,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,2BAA2BtB,EAAG,QAAQ,CAACE,YAAY,YAAYC,MAAM,CAAC,MAAQ,GAAG,MAAQ,aAAarvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQ,OAAOnB,EAAI65H,iBAAiB,CAAC75H,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,2BAA2B,GAAGtB,EAAG,eAAe,CAACE,YAAY,wBAAwBC,MAAM,CAAC,QAAUN,EAAI72C,QAAQ,MAAQ62C,EAAIrc,cAAc,iBAAiB,GAAG,eAAe,CAAC,yBAAyB,CAAC,GAAI,GAAI,KAAM,IAAI,OAASqc,EAAIo0C,OAAO,WAAW,KAAK,UAAUp0C,EAAI2xC,OAAO,YAAY3xC,EAAIs0C,SAAS,eAAe,yBAAyB,QAAUt0C,EAAIu0C,QAAQ,eAAe,OAAO,IACppC,GAAkB,GCgDtB,I,UAAA,CACE,KAAF,aACE,SAAF,kBACA,mDAEE,KAAF,WACI,MAAJ,CACM,SAAN,EACM,OAAN,GACM,QAAN,GACM,OAAN,GACM,UAAN,IAGE,QAdF,WAcI,IAAJ,OACI,KAAJ,+CAEA,6BACQ,EAAR,WACQ,EAAR,iBAKI,KAAJ,WACI,IAAJ,GACM,UAAN,WAGI,KAAJ,gCAEE,cA/BF,WAgCI,KAAJ,eAEE,QAAF,CACI,WADJ,WACM,IAAN,OAEM,GADA,KAAN,WACA,6BACQ,IAAR,qCACA,IAEQ,EAAR,uBACU,EAAV,YACA,KACY,EAAZ,cAAc,KAAd,EAAc,MAAd,EAAc,MAAd,QAAc,UAAd,EAAc,MAAd,IAEY,EAAZ,cAAc,KAAd,EAAc,MAAd,EAAc,UAAd,EAAc,MAAd,SAKI,YAjBJ,WAkBM,KAAN,cAAQ,KAAR,aAEI,aApBJ,WAqBM,IAAN,oDACA,sCAAQ,OAAR,yCACA,yBACM,KAAN,gBAEI,YA1BJ,SA0BA,GAGM,IAAN,gBAAQ,KAAR,aAIA,8BAGM,EAAN,4BACM,IAAN,gCACM,EAAN,OAGM,EAAN,qBACM,SAAN,oBAGM,EAAN,QACM,SAAN,wBCjIoV,MCQhV,I,UAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,OAIa,MAAiB,QAUhC,IAAkB,GAAW,CAAC3tC,OAAA,KAAKC,QAAA,KAAMG,WAAA,OAAW+tC,cAAA,KAAWjtC,UAAA,KAAQC,aAAA,OCVvE,QACEpiD,KAAM,aACNuiD,WAAY,CACV46H,WAAJ,KCtBoV,MCQhV,I,UAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,OAIa,MAAiB,QAQhC,IAAkB,GAAW,CAAC77H,OAAA,KAAKoB,aAAA,KAAWqrC,UAAA,KAAQ/rC,OAAA,OC3BtD,IAAI,GAAS,WAAa,IAAI3H,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,WAAW,CAACA,EAAG,QAAQ,CAACE,YAAY,cAAc,CAACF,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,cAAc,CAACE,YAAY,kBAAkB,CAACF,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,YAAY,IAAI,IAAI,IAAI,IAAI,IAAI,IAC1U,GAAkB,GCDlB,GAAS,WAAa,IAAIH,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,SAAS,CAACE,YAAY,oBAAoB,CAACF,EAAG,cAAc,CAACA,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,GAAK,OAAO,CAACH,EAAG,SAAS,CAACE,YAAY,QAAQ,CAACF,EAAG,eAAe,CAACH,EAAIsB,GAAG,IAAItB,EAAIuB,GAAGvB,EAAIyB,GAAG,kBAAkB,OAAOtB,EAAG,SAAS,CAAC1qB,IAAI,cAAcgrB,MAAM,CAACr6C,MAAO45C,EAAe,YAAElE,SAAS,SAAU4E,GAAMV,EAAIkD,YAAYxC,GAAKh0B,WAAW,gBAAgB,CAACyzB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIyB,GAAG,uBAAuB,SAAW,IAAIhB,MAAM,CAACr6C,MAAO45C,EAAe,YAAElE,SAAS,SAAU4E,GAAMV,EAAI+iI,YAAYriI,GAAKh0B,WAAW,kBAAkB,GAAGyzB,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIyB,GAAG,qBAAqB,SAAW,IAAIhB,MAAM,CAACr6C,MAAO45C,EAAa,UAAElE,SAAS,SAAU4E,GAAMV,EAAIgjI,UAAUtiI,GAAKh0B,WAAW,gBAAgB,IAAI,GAAGyzB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,KAAO,OAAO,MAAQN,EAAIyB,GAAG,0BAA0B,MAAQ,CAACzB,EAAIoD,MAAMI,WAAW/C,MAAM,CAACr6C,MAAO45C,EAAkB,eAAElE,SAAS,SAAU4E,GAAMV,EAAIijI,eAAeviI,GAAKh0B,WAAW,qBAAqB,GAAGyzB,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,WAAW,CAACG,MAAM,CAAC,KAAO,GAAG,MAAQN,EAAIkjI,WAAW,YAAY,OAAO,aAAa,MAAM,MAAQljI,EAAIyB,GAAG,2BAA2B,MAAQ,CAACzB,EAAIoD,MAAMI,WAAW/C,MAAM,CAACr6C,MAAO45C,EAAmB,gBAAElE,SAAS,SAAU4E,GAAMV,EAAImjI,gBAAgBziI,GAAKh0B,WAAW,sBAAsB,IAAI,GAAGyzB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,OAAO,CAACH,EAAG,aAAa,CAACG,MAAM,CAAC,MAAQN,EAAIyB,GAAG,uBAAuB,MAAQ,CAACzB,EAAIoD,MAAMI,WAAW/C,MAAM,CAACr6C,MAAO45C,EAAsB,mBAAElE,SAAS,SAAU4E,GAAMV,EAAIojI,mBAAmB1iI,GAAKh0B,WAAW,yBAAyB,IAAI,GAAGyzB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,OAAO,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,YAAY,KAAK,MAAQN,EAAIyB,GAAG,yBAAyBhB,MAAM,CAACr6C,MAAO45C,EAAe,YAAElE,SAAS,SAAU4E,GAAMV,EAAIqjI,YAAY3iI,GAAKh0B,WAAW,kBAAkB,IAAI,GAAGyzB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,OAAO,CAACH,EAAG,QAAQ,CAACE,YAAY,mBAAmBC,MAAM,CAAC,MAAQ,GAAG,MAAQ,UAAU,UAAYN,EAAIkD,aAAajyB,GAAG,CAAC,MAAQ,SAASkwB,GAAQ,OAAOnB,EAAIsjI,mBAAmB,CAACtjI,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,4BAA4B,IAAI,IAAI,IAAI,IAAI,IAAI,GAAGtB,EAAG,WAAW,CAACG,MAAM,CAAC,WAAa,2BAA2B,YAAY,MAAM,gBAAe,EAAM,WAAa,IAAIG,MAAM,CAACr6C,MAAO45C,EAAuB,oBAAElE,SAAS,SAAU4E,GAAMV,EAAIujI,oBAAoB7iI,GAAKh0B,WAAW,wBAAwB,CAAC,CAACyzB,EAAG,SAAS,CAACA,EAAG,YAAY,CAACG,MAAM,CAAC,MAAQ,UAAU,KAAO,KAAK,CAACN,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIwjI,uBAAuBrjI,EAAG,cAAc,CAACA,EAAG,MAAM,CAACE,YAAY,QAAQ,CAACL,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyjI,wBAAwBtjI,EAAG,iBAAiB,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,IAAIrvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQ,OAAOnB,EAAI03D,WAAW,CAAC13D,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,2BAA2B,IAAI,KAAK,IAAI,GAAGtB,EAAG,aAAa,CAACG,MAAM,CAAC,QAAUN,EAAIqG,aAAa,MAAQrG,EAAIyC,YAAYC,YAAY1C,EAAI2C,GAAG,CAAC,CAACj8C,IAAI,SAASk8C,GAAG,SAASntB,GACrhG,IAAI6qB,EAAQ7qB,EAAI6qB,MAChB,MAAO,CAACH,EAAG,QAAQH,EAAI6C,GAAG,CAACvC,MAAM,CAAC,KAAO,IAAIrvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQnB,EAAI8C,OAAQ,KAAS,QAAQxC,GAAM,GAAO,CAACN,EAAIsB,GAAG,kBAAkBb,MAAM,CAACr6C,MAAO45C,EAAS,MAAElE,SAAS,SAAU4E,GAAMV,EAAI8C,MAAMpC,GAAKh0B,WAAW,UAAU,CAACszB,EAAIsB,GAAG,IAAItB,EAAIuB,GAAGvB,EAAI+C,WAAW,QAAQ,IAC1Q,GAAkB,GCoItB,I,UAAA,CACEp9C,KAAM,UACNs+C,SAAU,OAAZ,OAAY,CAAZ,GACA,mDAEE1gD,KAAM,WACJ,MAAO,CACL2/C,aAAa,EACbvY,YAAat6B,KAAKqlB,OAAO7tB,MAAM8iC,YAC/Bo4I,YAAa1yK,KAAKqlB,OAAO7tB,MAAMyiC,oBAAsB,KAAOj6B,KAAKqlB,OAAO7tB,MAAM0iC,iBAAmB,IACjGy4I,UAAW,GACXC,eAAgB,GAChBE,gBAAiB,KACjBC,mBAAoB,GACpBC,YAAa,KACbE,qBAAqB,EACrBC,mBAAoB,GACpBC,kBAAmB,GACnBP,WAAY,CAClB,CAAQ,KAAR,wCAAQ,IAAR,mBACA,CAAQ,KAAR,oCAAQ,IAAR,SACA,CAAQ,KAAR,wCAAQ,IAAR,aACA,CAAQ,KAAR,wCAAQ,IAAR,aACA,CAAQ,KAAR,wCAAQ,IAAR,aACA,CAAQ,KAAR,oCAAQ,IAAR,UAEM9/H,MAAO,CACLI,SAAU,SAAlB,2BAEMV,OAAO,EACPL,WAAY,GACZM,UAAW,GACXsD,aAAc,MAGlB3B,QAnCF,WAmCA,WAqBI,GApBAr0C,KAAK20C,YAAc30C,KAAKqlB,OAAOuvB,WAAU,SAA7C,GAEA,2BACQ,EAAR,0BAGA,6BACA,kBACU,EAAV,wDACU,EAAV,sDACU,EAAV,yBAEU,EAAV,qDACU,EAAV,mDACU,EAAV,4BAMA,8BACM50C,KAAK2yK,UAAY,8BACvB,CACM,IAAN,iBACM3yK,KAAKqlB,OAAOtpB,SAAS,kBAAmBs3K,KAG5Cx+H,cA/DF,WAgEI70C,KAAK20C,eAEPI,QAAS,CACPu+H,kBADJ,SACA,KACM,IAAIpoG,EAAS,IAAIC,WACjBD,EAAOE,UAAY3/B,EACnBy/B,EAAOo7F,cAAct7F,IAEvBioG,cANJ,WAOM,IAAN,KACA,KACA,IACA,KACA,wCACA,iBACA,OAEA,sCAKM,GAJAt+J,GAAQ,eAAiB3U,KAAK4yK,eAAiB,MAC/Cj+J,GAAQ,gBAAkB3U,KAAK8yK,gBAAkB,MACjDn+J,GAAQ,mBAAqB3U,KAAK+yK,mBAAqB,MAE7D,kBACQl+J,EAAW7U,KAAKgzK,YAAY19K,KAC5Bwf,EAAW9U,KAAKgzK,YAAYxzK,KAC5B0lB,EAAWllB,KAAKgzK,YAAY9jJ,KAG5B,IAAR,2BACA,KACA,OACUqkJ,GAAY,GAGtB,EAmBUvzK,KAAKwzK,kBAlBLxzK,KAAKszK,kBAAkBtzK,KAAKgzK,aAAa,SAAnD,GAEY,IAAZ,oCACYz4K,GAAS,EACTqa,EAAW6+J,EAAOxmJ,OAAO14B,OAAOuC,MAAMyD,GAEtC,IAAZ,GACc,KAAQjD,EACR,GAAMod,EACN,KAAQC,EACR,SAAYC,EACZ,SAAYC,EACZ,SAAYC,GAGdsQ,EAAIsuJ,YAAYj6K,UAK5B,CACQ,IAAR,GACU,KAAQnC,EACR,GAAMod,EACN,KAAQC,GAGV3U,KAAK0zK,YAAYj6K,KAGrBi6K,YA/DJ,SA+DA,GACM1zK,KAAKqlB,OAAOtpB,SAAS,qBAAsBtC,IAE7C4tG,MAlEJ,WAmEMrnG,KAAKkzK,qBAAsB,EACjC,sBACQlzK,KAAKi1C,MAAM0+H,YAAY30I,QACvBh/B,KAAK4zK,QAAQ5/K,KAAK,CAA1B,gBAGIw/K,gBAzEJ,WA0EMxzK,KAAKyyC,OAAQ,EACbzyC,KAAKg2C,aAAe,IACpBh2C,KAAKoyC,WAAa,QAClBpyC,KAAK0yC,UAAY,2ECtR0T,MCO7U,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,MAAiB,QAoBhC,IAAkB,GAAW,CAAC6D,OAAA,KAAKC,QAAA,KAAMC,aAAA,OAAaC,UAAA,OAAUC,WAAA,OAAWC,OAAA,KAAKoB,aAAA,KAAWnB,UAAA,KAAQ8B,cAAA,KAAW7B,QAAA,KAAMQ,OAAA,KAAKC,WAAA,KAAQC,aAAA,KAAUE,aAAA,KAAWY,aAAA,KAAUX,WAAA,OClBhK,QACEriD,KAAM,UACNuiD,WAAY,CACVg8H,QAAJ,KCvBiV,MCO7U,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,MAAiB,QAQhC,IAAkB,GAAW,CAACj9H,OAAA,KAAKoB,aAAA,KAAWqrC,UAAA,KAAQ/rC,OAAA,OC1BtD,IAAI,GAAS,WAAa,IAAI3H,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,WAAW,CAACA,EAAG,QAAQ,CAACE,YAAY,cAAc,CAACF,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,cAAc,CAACA,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,OAAO,CAACH,EAAG,aAAa,IAAI,IAAI,IAAI,IAAI,IAAI,IAC5S,GAAkB,GCDlB,GAAS,WAAa,IAAIH,EAAI3vC,KAAS4vC,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACE,YAAY,eAAe,CAACF,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,IAAI,GAAK,IAAI,YAAY,IAAI,YAAY,IAAI,OAAS,MAAM,CAACH,EAAG,QAAQ,CAACE,YAAY,UAAUC,MAAM,CAAC,IAAMN,EAAI8yC,UAAU,IAAM,0BAA0B3yC,EAAG,SAAS,CAACA,EAAG,YAAY,CAACG,MAAM,CAAC,MAAQ,UAAU,KAAO,KAAK,CAACN,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,gCAAgCtB,EAAG,cAAc,CAACA,EAAG,SAAS,EAAEH,EAAI3Q,OAAU2Q,EAAIjtC,WAAWwG,aAAgBymC,EAAIjtC,WAAW6G,YAAk/BomC,EAAIwB,KAAz+BrB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,MAAQN,EAAIyB,GAAG,2BAA2B,cAAczB,EAAImD,SAAW,cAAgB,UAAU,KAAOnD,EAAImD,SAAW,OAAS,WAAW,MAAQ,CAACnD,EAAIoD,MAAMC,UAAU,aAAe,gBAAgBpyB,GAAG,CAAC,eAAe,SAASkwB,GAAQnB,EAAImD,UAAYnD,EAAImD,WAAW1C,MAAM,CAACr6C,MAAO45C,EAAa,UAAElE,SAAS,SAAU4E,GAAMV,EAAIsD,UAAU5C,GAAKh0B,WAAW,gBAAgB,GAAGyzB,EAAG,QAAQ,CAACG,MAAM,CAAC,KAAO,KAAK,GAAK,MAAM,CAACH,EAAG,eAAe,CAACG,MAAM,CAAC,QAAU,eAAe,MAAQN,EAAIyB,GAAG,mCAAmC,cAAczB,EAAIuD,UAAY,cAAgB,UAAU,KAAOvD,EAAIuD,UAAY,OAAS,WAAW,MAAyB,IAAjBvD,EAAIsD,UAAkB,CAACtD,EAAIoD,MAAMI,SAAUxD,EAAIoD,MAAMC,SAAUrD,EAAIoD,MAAMK,WAAa,GAAG,aAAe,gBAAgBxyB,GAAG,CAAC,eAAe,SAASkwB,GAAQnB,EAAIuD,WAAavD,EAAIuD,YAAY9C,MAAM,CAACr6C,MAAO45C,EAAa,UAAElE,SAAS,SAAU4E,GAAMV,EAAI0D,UAAUhD,GAAKh0B,WAAW,gBAAgB,IAAI,IAAcszB,EAAI3Q,OAAS2Q,EAAIjtC,WAAWwG,aAAeymC,EAAIjtC,WAAW6G,YAAaumC,EAAG,QAAQ,CAACA,EAAG,MAAM,CAACE,YAAY,QAAQ,CAACL,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,6BAA6BzB,EAAIwB,MAAM,IAAI,GAAGrB,EAAG,iBAAiB,CAACA,EAAG,QAAQ,CAACE,YAAY,eAAe,EAAEL,EAAI3Q,OAAU2Q,EAAIjtC,WAAWwG,aAAgBymC,EAAIjtC,WAAW6G,YAAwOomC,EAAIwB,KAA/NrB,EAAG,QAAQ,CAACG,MAAM,CAAC,MAAQ,GAAG,KAAO,GAAG,MAAQ,WAAWrvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQ,OAAOnB,EAAIqC,SAAS,CAACiB,UAAWtD,EAAIsD,UAAWI,UAAW1D,EAAI0D,eAAe,CAAC1D,EAAIsB,GAAGtB,EAAIuB,GAAGvB,EAAIyB,GAAG,iCAA0C,IAAI,GAAGtB,EAAG,aAAa,CAACG,MAAM,CAAC,QAAU,IAAK,MAAQN,EAAIyC,YAAYC,YAAY1C,EAAI2C,GAAG,CAAC,CAACj8C,IAAI,SAASk8C,GAAG,SAASntB,GAC5qE,IAAI6qB,EAAQ7qB,EAAI6qB,MAChB,MAAO,CAACH,EAAG,QAAQH,EAAI6C,GAAG,CAACvC,MAAM,CAAC,KAAO,IAAIrvB,GAAG,CAAC,MAAQ,SAASkwB,GAAQnB,EAAI8C,OAAQ,KAAS,QAAQxC,GAAM,GAAO,CAACN,EAAIsB,GAAG,kBAAkBb,MAAM,CAACr6C,MAAO45C,EAAS,MAAElE,SAAS,SAAU4E,GAAMV,EAAI8C,MAAMpC,GAAKh0B,WAAW,UAAU,CAACszB,EAAIsB,GAAG,IAAItB,EAAIuB,GAAGvB,EAAI+C,WAAW,QAAQ,GAAG5C,EAAG,QAAQ,CAACE,YAAY,mBAAmBC,MAAM,CAAC,IAAMN,EAAIszC,UAAU,IAAM,2BAA2B,IAAI,IACxX,GAAkB,GC2EtB,IACE,KAAF,WACE,SAAF,0CACE,KAAF,WAAI,IAAJ,OACI,MAAJ,CACM,UAAN,GACM,UAAN,GACM,eAAN,GACM,UAAN,KACM,UAAN,KACM,UAAN,EACM,WAAN,EACM,aAAN,EACM,aAAN,EACM,aAAN,EACM,OAAN,EACM,OAAN,GACM,MAAN,CACQ,SAAR,YAAU,QAAV,eACQ,SAAR,YACU,GAAV,OACY,IAAZ,oIACY,OAAZ,kKAEY,OAAZ,GAGQ,UAAR,YAAU,OAAV,iEAEM,OAAN,EACM,WAAN,GACM,UAAN,KAGE,QAlCF,WAkCI,IAAJ,OACI,KAAJ,+CAGA,uBACA,wBACU,EAAV,iDAEU,EAAV,mBAKA,gCAEQ,EAAR,yCAEQ,EAAR,cAAU,KAAV,cAKI,KAAJ,iCAEA,0BACM,KAAN,SACM,KAAN,4BAGE,cA/DF,WAgEI,KAAJ,eAEE,QAlEF,WAoEI,KAAJ,4CACI,KAAJ,4CAKI,IAFA,IAAJ,uCAEA,mBACM,EAAN,+BAII,KAAJ,0CAEE,QAAF,CACI,SADJ,SACA,GAAM,IAAN,OAAM,OAAN,+IACA,8BADA,uBAEA,GACA,gBACA,UACA,qBACA,kEANA,SASA,wDACA,+EAVA,8CAcI,UAfJ,SAeA,OACM,IAAN,WACA,kCACA,CACQ,IAAR,UACQ,MAAR,UACQ,KAAR,UACQ,KAAR,UACQ,OAAR,UACQ,OAAR,UACQ,QAAR,IACA,UAEA,GACQ,SAAR,EACQ,OAAR,cACQ,OAAR,EACQ,YAAR,KACQ,SAAR,KACQ,UAAR,EACQ,IAAR,EACQ,SAAR,GAEM,KAAN,kCAEI,WAxCJ,SAwCA,GACM,KAAN,SACM,KAAN,iBACM,KAAN,mBACM,KAAN,eC3MkV,MCO9U,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,MAAiB,QAehC,IAAkB,GAAW,CAAC1sC,OAAA,KAAKC,QAAA,KAAMC,aAAA,OAAaC,UAAA,OAAUE,OAAA,KAAKE,QAAA,KAAME,OAAA,KAAKM,OAAA,KAAKE,aAAA,KAAUE,aAAA,KAAWC,WAAA,OCb1G,QACEriD,KAAM,iBACNuiD,WAAY,CACVi8H,SAAJ,KCvBwV,MCOpV,GAAY,eACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIa,MAAiB,QAQhC,IAAkB,GAAW,CAACl9H,OAAA,KAAKoB,aAAA,KAAWqrC,UAAA,KAAQ/rC,OAAA,OCOtD5gB,aAAIC,IAAIo9I,QAER,IAAMC,GAAS,CACb,CACE/nG,KAAM,IACN32E,KAAM,QACN6gD,UAAW89H,GAEb,CACEhoG,KAAM,YACN32E,KAAM,WACN6gD,UAAW+9H,IAEb,CACEjoG,KAAM,YACN32E,KAAM,iBACN6gD,UAAWg+H,IAEb,CACEloG,KAAM,aACN32E,KAAM,WACN6gD,UAAWi+H,IAEb,CACEnoG,KAAM,iBACN32E,KAAM,gBACN6gD,UAAWk+H,IAEb,CACEpoG,KAAM,aACN32E,KAAM,OACN6gD,UAAWm+H,EACX5iI,KAAM,CACJhuB,MAAO,uBACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,SACN32E,KAAM,QACN6gD,UAAWq+H,GACX9iI,KAAM,CACJhuB,MAAO,wBACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,aACN32E,KAAM,YACN6gD,UAAWu+H,GACXhjI,KAAM,CACJhuB,MAAO,uBACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,aACN32E,KAAM,YACN6gD,UAAWw+H,GACXjjI,KAAM,CACJhuB,MAAO,4BACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,mBACN32E,KAAM,iBACN6gD,UAAWy+H,GACXljI,KAAM,CACJhuB,MAAO,kCACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,gBACN32E,KAAM,cACN6gD,UAAW0+H,GACXnjI,KAAM,CACJhuB,MAAO,+BACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,cACN32E,KAAM,YACN6gD,UAAW2+H,GACXpjI,KAAM,CACJhuB,MAAO,6BACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,oBACN32E,KAAM,kBACN6gD,UAAW4+H,GACXrjI,KAAM,CACJhuB,MAAO,mCACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,iBACN32E,KAAM,eACN6gD,UAAW6+H,GACXtjI,KAAM,CACJhuB,MAAO,gCACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,mBACN32E,KAAM,iBACN6gD,UAAW8+H,GACXvjI,KAAM,CACJhuB,MAAO,4BACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,cACN32E,KAAM,YACN6gD,UAAW++H,GACXxjI,KAAM,CACJhuB,MAAO,gCACP6wJ,cAAc,EACdE,iBAAiB,IAGrB,CACExoG,KAAM,kBACN32E,KAAM,eAIN6gD,UAAWg/H,GACXzjI,KAAM,CACJhuB,MAAO,6BACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,iBACN32E,KAAM,eACN6gD,UAAWi/H,GACX1jI,KAAM,CACJhuB,MAAO,gCACP6wJ,cAAc,EACdc,mBAAmB,IAGvB,CACEppG,KAAM,YACN32E,KAAM,UACN6gD,UAAWm/H,GACX5jI,KAAM,CACJhuB,MAAO,2BACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,cACN32E,KAAM,YACN6gD,UAAWo/H,GACX7jI,KAAM,CACJhuB,MAAO,6BACP6wJ,cAAc,EACdiB,qBAAqB,IAGzB,CACEvpG,KAAM,oBACN32E,KAAM,kBACN6gD,UAAWs/H,GACX/jI,KAAM,CACJhuB,MAAO,mCACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,aACN32E,KAAM,WACN6gD,UAAWu/H,GACXhkI,KAAM,CACJhuB,MAAO,4BACP6wJ,cAAc,EACdc,mBAAmB,IAGvB,CACEppG,KAAM,kBACN32E,KAAM,gBACN6gD,UAAWw/H,GACXjkI,KAAM,CACJhuB,MAAO,iCACP6wJ,cAAc,EACdc,mBAAmB,IAGvB,CACEppG,KAAM,WACN32E,KAAM,UACN6gD,UAAWy/H,GACXlkI,KAAM,CACJhuB,MAAO,0BACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,gBACN32E,KAAM,cACN6gD,UAAW0/H,GACXnkI,KAAM,CACJhuB,MAAO,+BACP6wJ,cAAc,EACdiB,qBAAqB,IAGzB,CACEvpG,KAAM,eACN32E,KAAM,aACN6gD,UAAW2/H,GACXpkI,KAAM,CACJhuB,MAAO,8BACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,aACN32E,KAAM,WACN6gD,UAAW4/H,GACXrkI,KAAM,CACJhuB,MAAO,4BACP6wJ,cAAc,IAGlB,CACEtoG,KAAM,qBACN32E,KAAM,kBACN6gD,UAAW6/H,GACXtkI,KAAM,CACJhuB,MAAO,oCACP6wJ,cAAc,EACdc,mBAAmB,IAGvB,CACEppG,KAAM,WACN32E,KAAM,UACN6gD,UAAW8/H,GACXvkI,KAAM,CACJhuB,MAAO,kCACP6wJ,cAAc,KAKdx5H,GAAS,IAAIg5H,OAAU,CAC3B99K,KAAM,UACNigL,KAAMl/K,IACNg9K,YAIFj5H,GAAOo7H,YAAW,SAACzhK,EAAIpd,EAAM60D,GAGxBz3C,EAAG6lC,QAAQ+sC,MAAK,SAAA8uF,GAAM,OAAIA,EAAO1kI,KAAK6iI,gBAEnCx7K,OAAMvB,MAAMmjC,YAUXjmB,EAAG6lC,QAAQ+sC,MAAK,SAAA8uF,GAAM,OAAIA,EAAO1kI,KAAK2kI,iBAEnCt9K,OAAMvB,MAAM+iC,QAUd4xB,IARAA,EAAK,CACH8f,KAAM,aACNzoD,MAAO,CACL8yJ,SAAU5hK,EAAG6hK,YASnBpqH,IAICz3C,EAAG6lC,QAAQ+sC,MAAK,SAAA8uF,GAAM,OAAIA,EAAO1kI,KAAK+iI,mBAEnC17K,OAAMvB,MAAM+iC,SAAYxhC,OAAMvB,MAAMgjC,YAUtC2xB,IARAA,EAAK,CACH8f,KAAM,aACNzoD,MAAO,CACL8yJ,SAAU5hK,EAAG6hK,YASnBpqH,IAICz3C,EAAG6lC,QAAQ+sC,MAAK,SAAA8uF,GAAM,OAAIA,EAAO1kI,KAAK2jI,qBAEnCt8K,OAAMvB,MAAM+iC,SAAYxhC,OAAMvB,MAAMgjC,aAAgBzhC,OAAMvB,MAAMijC,aAUlE0xB,IARAA,EAAK,CACH8f,KAAM,aACNzoD,MAAO,CACL8yJ,SAAU5hK,EAAG6hK,YASnBpqH,IAICz3C,EAAG6lC,QAAQ+sC,MAAK,SAAA8uF,GAAM,OAAIA,EAAO1kI,KAAK8jI,uBAEnCz8K,OAAMvB,MAAM+iC,SAAYxhC,OAAMvB,MAAMgjC,aAAgBzhC,OAAMvB,MAAMijC,cAAiB1hC,OAAMvB,MAAMkjC,UAU/FyxB,IARAA,EAAK,CACH8f,KAAM,aACNzoD,MAAO,CACL8yJ,SAAU5hK,EAAG6hK,YASnBpqH,KApFFA,EAAK,CACH8f,KAAM,IACNzoD,MAAO,CACL8yJ,SAAU5hK,EAAG6hK,YAuFnBpqH,OAIWpR,W,0ECnZf,IAAIphC,EAAerb,EAAQ,QAEvBob,EAAYpb,EAAQ,QACpB4jB,EAAwB5jB,EAAQ,QAChC4f,EAAQ5f,EAAQ,QAEhBY,EAAoBZ,EAAQ,QAA2DY,kBACvFD,EAAKX,EAAQ,QAA2DW,GAExE5E,EAAUiE,EAAQ,QAClBmd,EAAOnd,EAAQ,QACfgiB,EAAShiB,EAAQ,QAGrB,SAASk4K,EAAuBh4K,GAC9B,OAAOi4K,EAAgBj4K,EAAS,iBAGlC,SAASk4K,EAA2Bl4K,GAClC,OAAOi4K,EAAgBj4K,EAAS,sBAGlC,SAASi4K,EAAgBj4K,EAASgB,GAChC,OAAO0e,EAAMy4J,qBAAqBn4K,EAAQk6E,aAAcl5E,GAG1D,SAASo3K,EAAsCC,EAAUrvC,GACvD,IAAIsvC,EAAaD,EAASt9K,GACtB6tI,EAAgB3rH,EAAK+rH,GAAgB,SAASJ,GAChD,IAAI2vC,EAA4B70J,EAAsBsO,6BAA6B42G,GAC/EtvC,EAAgBsvC,EAActvC,cAClC,OAAOi/E,GAA6Bj/E,GAAiBA,EAAcv+F,KAAOu9K,KAE5E,QAAS1vC,EAMX,SAAS4vC,EAAyBH,EAAUrvC,GAC1C,OAAQvoI,EAAG43K,EAAU,qBAAuBA,EAAS3qI,kBAC7CjtC,EAAG43K,EAAU,sBACbD,EAAsCC,EAAUrvC,GAG1D,SAASyvC,EAA6Bz4K,GACpC,IAAIgpI,EAAiBkvC,EAA2Bl4K,GAChD,OAAO8hB,EAAOk2J,EAAuBh4K,IAAU,SAASq4K,GACtD,OAAOG,EAAyBH,EAAUrvC,MAI9C,SAAS0vC,EAA4B14K,GACnC,IAAIe,EAAKL,EAAkBV,GACvB6b,EAAS9a,EAAGiC,QAEZ21K,EAA2BF,EAA6B58J,GAY5D,OARIpb,EAAGob,EAAQ,oBAAsBA,EAAO6xB,mBAC1C7xB,EAASA,EAAO7Y,QACZ6Y,IACF88J,EAA2BA,EAAyBp4K,OAAOk4K,EAA6B58J,MAKrF88J,EAGT,SAASC,EAAyB54K,GAChC,IAAIqC,EAAU,CAAE,CAAE9K,MAAO,KAErBshL,EAAaH,EAA4B14K,GAO7C,OANAnE,EAAQg9K,GAAY,SAASR,GAC3B,IAAIC,EAAaD,EAASt9K,GACtBjE,GAAQuhL,EAASvhL,KAAQuhL,EAASvhL,KAAO,IAAO,IAAM,OAASwhL,EAAa,IAChFj2K,EAAQ7M,KAAK,CAAE+B,MAAO+gL,EAAYxhL,KAAMA,OAGnCuL,EAIT5L,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAas4K,EAA2Br0I,EAAiBhkC,GAEjGH,EAAMO,QAAQ9K,KAAK2lB,EAAasM,SAASvnB,EAAW,CAClDnF,GAAI,sBACJ2I,MAAOxD,EAAU,uBACjByD,cAAe,oBAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,MAAO,CACLm9J,kBAAmBP,EAA0BO,oBAIjDl1K,IAAK,SAAS5D,EAASoD,GAErB,OADAA,EAAO01K,kBAAoB11K,EAAO01K,oBAAqB,EAChD59J,EAAU2B,qBAAqB7c,EAASu4K,EAA2Bn1K,OAI9ErD,EAAMO,QAAQ9K,KAAK2lB,EAAakB,UAAUnc,EAAW,CACnDnF,GAAI,eACJ2I,MAAOxD,EAAU,gBACjBgc,cAAe08J,EAAyB54K,GACxC2D,cAAe,cAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAIo9J,EAAcR,EAA0BQ,YAE5C,OADAA,EAAcA,GAAeA,EAAYh+K,GAClC,CACLg+K,YAAaA,GAAe,KAIhCn1K,IAAK,SAAS5D,EAASoD,GACrB,IAAI21K,EAAc31K,EAAO21K,kBAAej9J,EAExC,OADAi9J,EAAcA,GAAer4K,EAAkBwjC,EAAgB/sC,IAAI4hL,IAC5D79J,EAAU2B,qBAAqB7c,EAASu4K,EAA2B,CACxEQ,YAAaA,U,kx2CC1HrB,IAAI59J,EAAerb,EAAQ,QAEvBob,EAAYpb,EAAQ,QAkBxBrJ,EAAOD,QAAU,SAASwJ,EAAS4c,EAAY3c,EAAaC,EAAWmC,GAErE,IAAItH,EAAKsH,EAAQtH,IAAM,mBACnB2I,EAAQrB,EAAQqB,MAChBsnC,EAAoB3oC,EAAQ2oC,kBAC5BrnC,EAAgBtB,EAAQsB,eAAiB,OACzCs+C,EAAiB5/C,EAAQ4/C,iBAAkB,EAC3C19B,EAAcliB,EAAQkiB,YACtB+E,IAAgBjnB,EAAQya,QAAoC,oBAAnBza,EAAQya,OAEjDiF,EAAQ5G,EAAa4B,UAAU7c,EAAW,CAC5CnF,GAAIA,EACJ2I,MAAOA,EACPC,cAAeA,EACf4gB,YAAaA,EAEbptB,IAAK,SAAS6I,EAAS2b,GACrB,IAAIgV,EAAY/T,EAAWzlB,IAAI6zC,GAC3BvuB,EAAQ,GAEZ,OADAA,EAAM9Y,GAAiBgtB,GAAaA,EAAUx5B,IAAIwM,GAC3C8Y,GAGT7Y,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAIgV,EAAY/T,EAAWzlB,IAAI6zC,GAC3BvuB,EAAQ,GAEZ,OADAA,EAAM9Y,GAAiBP,EAAOO,SAAkBmY,EACzCZ,EAAU2B,qBAAqB7c,EAAS2wB,EAAWlU,IAG5DK,OAAQ,SAAS9c,EAAS2b,GACxB,OAAI2N,GACKjnB,EAAQya,OAAOjnB,MAAM+mB,EAAYqN,aAElCrN,EAAWzlB,IAAI6zC,MAe3B,OAXIiX,IACFlgC,EAAM/E,SAAW,SAAShd,EAASoD,EAAQuY,GACzC,IAAIgV,EAAY/T,EAAWzlB,IAAI6zC,GAC/B,GAAIra,IAAcvtB,EAAOO,GAAgB,CACvC,IAAImhC,EAAmB,GAEvB,OADAA,EAAiBnhC,GAAiB,uBAC3BmhC,KAKN,CAAE/iB,K,0ECrEX,IAAIgD,EAAWjlB,EAAQ,QAAWklB,MAC9Bg0J,EAAWl5K,EAAQ,QAAWgsC,MAC9BtZ,EAAa1yB,EAAQ,QAAW2yB,QAChChyB,EAAKX,EAAQ,QAA+CW,GAC5D5E,EAAUiE,EAAQ,QAClBopB,EAASppB,EAAQ,QAAWopB,OAC5BwhE,EAAM5qF,EAAQ,QAAOqnB,QAErB8xJ,EAAc,KAGdC,EAAc,mCAGdC,EAAW,mBAEXC,EAAkB,CACpB,IAAK,QACL,IAAK,OACL,IAAK,OACL,IAAK,SACLC,IAAM,SAGR,SAASC,EAAej9J,GACtB,GAAIA,EAAU6T,eAAiB,EAC7B,OAAO7T,EAAUha,QAAQga,EAAU6T,eAAe34B,MAOtD,SAASgiL,EAAaC,EAAe3tI,GACnC,IAAI4tI,EAAa10J,EAASy0J,EAAe3tI,GACzC,OAAOytI,EAAeG,GAYxB,SAAS1zI,EAAQrb,GACf,IAAI7O,EAAS6O,EACb,MAAO7O,EAAO7Y,QACZ6Y,EAASA,EAAO7Y,QAElB,OAAO6Y,EAUT,SAASs8J,EAAqB3zI,EAAYxjC,GACxC,IAAI04K,EAAOl1I,GAAc,GACrBzuC,EAAS,GAMb,OALA8F,EAAQ69K,GAAM,SAAS9vI,GACjBnpC,EAAGmpC,EAAK5oC,IACVjL,EAAOP,KAAKo0C,MAGT7zC,EAMT,SAAS4uD,EAAuBj6B,EAAgBivJ,GAC9C,IAAI50H,EAAOhf,EAAQrb,GAEnB,OAAOytJ,EAAqBpzH,EAAKja,aAAc6uI,GAMjD,SAASC,EAAkBC,GACzB,MAAOA,EAAW30H,WAChB20H,EAAWvoJ,YAAYuoJ,EAAW30H,YAUtC,SAAS40H,EAAkBJ,GACzB,OAAOA,EAAKlkL,KAAK,CAAE,MAAS,GAAI,MAAS,GAAI,KAAQ,KASvD,SAASukL,EAAenwI,GACtB,IAAIlmC,EAAQkmC,EAAI9yC,MAAQ,GAOxB,OALI8yC,EAAIowI,YACNt2K,GAAS,UAAYkmC,EAAIowI,UAAY,KACnCpwI,EAAIqwI,iBACNv2K,GAAS,UAAYkmC,EAAIqwI,eAAiB,KAErCv2K,EAMT,SAASw2K,EAAoBxvJ,EAAgBivJ,GAC3C,IAAI/nI,EAAQ,GACRuoI,EAAmBx1H,EAAuBj6B,EAAgBivJ,GAQ9D,OAPA99K,EAAQs+K,GAAkB,SAASvwI,GACjCgI,EAAMp8C,KAAK,CACTkO,MAAOq2K,EAAenwI,GACtBryC,MAAOqyC,EAAI7uC,GACXjE,KAAM8yC,EAAI9yC,UAGP86C,EAST,SAASiT,EAAsBu1H,EAAa1vJ,EAAgBivJ,EAAgB/zJ,GAC1E,IAAIvjB,EAAU63K,EAAoBxvJ,EAAgBivJ,GAClDG,EAAkBz3K,GAClB,IAAIga,EAAY0I,EAASq1J,EAAax0J,GAOtC,OANAozJ,EAAS38J,GAETxgB,EAAQwG,GAAS,SAASopB,GACxB,IAAI4uJ,EAAcnxJ,EAAO,kBAAoBpE,EAAW2G,EAAOl0B,OAAS,KAAOutB,EAAW2G,EAAO/nB,OAAS,aAC1G2Y,EAAUyN,YAAYuwJ,MAEjBh4K,EAeT,SAAS2e,EAAUjgB,EAAI6jB,EAAS1kB,GAC9B,IAAIo6K,EAAWv5K,EAAGowH,OAAOD,IAAIopD,SAAS11J,GAElC21J,EAAWD,GAAYA,IAAav5K,EAExC,OAAK6jB,GAAW21J,EACPr6K,EAAU,mCAGZs6K,EAAW51J,EAAS1kB,GAM7B,SAASs6K,EAAW51J,EAAS1kB,GAE3B,OAAIosB,EAAc1H,GACT1kB,EAAU,+BAGdi5K,EAASjqJ,KAAKtK,QAAnB,EAEMs0J,EAAYhqJ,KAAKtK,GACZ1kB,EAAU,+BAGZA,EAAU,6BAOrB,SAASosB,EAAc/0B,GACrB,OAAO0hL,EAAY/pJ,KAAK33B,GAQ1B,SAASqoB,EAAOzD,GACd,IAAI+0G,EAAM,IAAIxmC,EAAI,CAAC,GAAG,GAAG,IAEzB,OAAOwmC,EAAI2+B,aAAa1zI,GAM1B,SAASumB,EAAkB1iC,GACzB,IAAIy6K,EACAl9J,EAAY,QAEhB,GAAIqM,SAASq2E,YAAa,CACxB,IAGEw6E,EAAM,IAAIC,WAAYn9J,EAAY,CAAEo9J,KAAMviL,OAAQwiL,SAAS,EAAMC,YAAY,IAC7E,MAAO15I,GAGPs5I,EAAM7wJ,SAASq2E,YAAY,cAE3Bw6E,EAAIK,UAAWv9J,GAAY,GAAM,GAEnC,OAAOvd,EAAQ+6K,cAAcN,GAM7B,OAFAA,EAAM7wJ,SAASoxJ,oBAERh7K,EAAQi7K,UAAU,KAAO19J,EAAWk9J,GAO/C,SAAS31J,EAAWhU,GAGlB,OAFAA,EAAM,GAAKA,EAEJA,GAAOA,EAAIrG,QAAQ,YAAY,SAASilC,GAC7C,OAAO0pI,EAAgB1pI,MAM3B,SAASwrI,EAAenxG,GACtB,IAkCIoxG,EAlCAnxG,EAAOD,EAASC,KAEhBoxG,EAAelyJ,EACjB,mdAQEmyJ,EAAat2J,EAAS,0BAA2Bq2J,GACjDE,EAAWv2J,EAAS,wBAAyBq2J,GAwBjD,SAASG,EAAoBC,GAC3B,SAASC,EAAcj+J,GACrB,GAAIA,IAAUg+J,EAAd,CAIA,IAAI/sJ,EAASjR,EAAMiR,OAEf6sJ,IAAa7sJ,GAAW6sJ,EAASI,SAASjtJ,KAC5C+D,EAAW4oJ,GAAchoJ,OAAO,yBAEhCxJ,SAAS+xJ,oBAAoB,QAASF,KAItCN,GACFvxJ,SAAS+xJ,oBAAoB,QAASR,GAGxCvxJ,SAASssB,iBAAiB,QAASulI,GAEnCN,EAAiBM,EAGnB,OA9CAJ,EAAWnlI,iBAAiB,SAAS,SAAS14B,GAC5CgV,EAAW4oJ,GAAc31J,OAAO,yBAEhC81J,EAAoB/9J,MAGtB3hB,EAAQmuE,GAAM,SAAS4xG,GACrB,IAAIC,EAAe3yJ,EAAO,gEACxB0yJ,EAAS7gL,GACT,KAAO+pB,EAAW82J,EAASl4K,OAAS,UAEtCm4K,EAAa3lI,iBAAiB,SAAS,WACrC0lI,EAAS3xG,UAETz3C,EAAW4oJ,GAAchoJ,OAAO,4BAGlCkoJ,EAASxxJ,YAAY+xJ,MA6BhBT,EA/RT3kL,EAAOD,QAAQ8iL,eAAiBA,EAQhC7iL,EAAOD,QAAQ+iL,aAAeA,EAiB9B9iL,EAAOD,QAAQuvC,QAAUA,EAkBzBtvC,EAAOD,QAAQ2hL,qBAAuBA,EAStC1hL,EAAOD,QAAQmuD,uBAAyBA,EASxCluD,EAAOD,QAAQojL,kBAAoBA,EAUnCnjL,EAAOD,QAAQsjL,kBAAoBA,EAiCnCrjL,EAAOD,QAAQ0jL,oBAAsBA,EAmBrCzjL,EAAOD,QAAQquD,sBAAwBA,EAwBvCpuD,EAAOD,QAAQwqB,UAAYA,EAmB3BvqB,EAAOD,QAAQgkL,WAAaA,EAO5B/jL,EAAOD,QAAQ81B,cAAgBA,EAW/B71B,EAAOD,QAAQopB,OAASA,EA6BxBnpB,EAAOD,QAAQksC,kBAAoBA,EAWnCjsC,EAAOD,QAAQsuB,WAAaA,EAkE5BruB,EAAOD,QAAQ0kL,eAAiBA,G,qBClUhCzkL,EAAOD,QAAU,CACf0wB,YAAa,CACXpnB,EAAQ,QACRA,EAAQ,QAAiCqnB,SAE3C3E,SAAU,CAAE,sBACZs5J,mBAAoB,CAAE,OAAQh8K,EAAQ,W,kCCJxC,IAAIqb,EAAerb,EAAQ,QAa3BrJ,EAAOD,QAAU,SAASwJ,EAASqC,EAASnC,GAE1CmC,EAAUA,GAAW,GACrB,IAAItH,EAAKsH,EAAQtH,IAAM,OACnB2I,EAAQrB,EAAQqB,OAASxD,EAAU,QACnCyD,EAAgBtB,EAAQsB,eAAiB,OAEzCo4K,EAAY5gK,EAAaqR,QAAQtsB,EAAW,CAC9CnF,GAAIA,EACJ2I,MAAOA,EACPC,cAAeA,EACfxM,IAAKkL,EAAQlL,IACbyM,IAAKvB,EAAQuB,MAGf,MAAO,CAAEm4K,K,8FC5BX,IAAI/uH,EAAUltD,EAAQ,QAAYktD,QAC9BlrC,EAAShiB,EAAQ,QAAYgiB,OAE7Bk6J,EAASl8K,EAAQ,QAEjBm8K,EAAwBn8K,EAAQ,QAAwCkd,SACxEk/J,EAA2Bp8K,EAAQ,QAAwCuoE,iBAE3E8zG,EAA2BD,IAM/B,SAASE,IAEP56K,KAAK66K,eAAiB,GAEtB76K,KAAK86K,gBAAkB,GACvB96K,KAAK+6K,QAAU,GASf/6K,KAAKg7K,OAAS,SAASt5J,GAQrB,OANK8pC,EAAQ9pC,GAGXA,EAAUrnB,QAAQ2F,KAAKuZ,IAAKvZ,MAF5BA,KAAKi7K,UAAU,wBAKVj7K,MAUTA,KAAKuZ,IAAM,SAASsE,GAElB,IAEItkB,EAAIkoB,EAFJmqB,EAAM5rC,KAAKk7K,kBAAkBr9J,GAiBjC,OAbK+tB,IACHryC,EAAKskB,EAAStkB,GACdkoB,EAAU5D,EAAS4D,SAAW,IAEzBzhB,KAAK66K,eAAgBthL,KACxByG,KAAK66K,eAAgBthL,GAAO,IAG9ByG,KAAK66K,eAAgBthL,GAAMkoB,GAAY5D,EAEvC7d,KAAK86K,gBAAgB9mL,KAAK6pB,IAGrB7d,MAUTA,KAAKk7K,kBAAoB,SAASr9J,GAEhC,IAAI+tB,EACAryC,EAAKskB,EAAStkB,GACdkoB,EAAU5D,EAAS4D,SAAW,IAC9B05J,EAAgBt9J,EAASu9J,SAAWv0G,EAAiBhpD,EAASu9J,SAC9Dp5J,EAAOhiB,KAGX,GAAIm7K,GACAX,EAAOa,QAAQV,EAA0BQ,GAAiB,EAC5D,OAAOn7K,KAAKi7K,UAAU,gDAAkDE,EACtE,qDAAuDR,EACvD,qCAAsC98J,GAI1C,GAAI7d,KAAK66K,eAAgBthL,IAAQyG,KAAK66K,eAAgBthL,GAAMkoB,GAC1D,MAAgB,MAAZA,EACKzhB,KAAKi7K,UAAU,gBAAkB1hL,EAAK,iBAAkBskB,GAExD7d,KAAKi7K,UAAU,gBAAkB1hL,EAAK,kBAAoBkoB,EAAU,iBAAkB5D,GAKjG,IAAIssB,EAAmBswI,EAAsB58J,GACzCmpD,EAAQ78B,EAAiB68B,MACzB/Y,EAAS9jB,EAAiB8jB,OAU9B,OARK+Y,IACHp7B,EAAM,IAAIxyC,MAAM,oBAEhBkiL,EAAqBrtH,GAAQ5zD,SAAQ,SAASlB,GAC5C6oB,EAAKi5J,UAAU9hL,EAAM4uC,QAASlqB,OAI3B+tB,GAWT5rC,KAAKi7K,UAAY,SAASrvI,EAAK/tB,GAa7B,MAXmB,kBAAR+tB,IAEL/tB,IACF+tB,EAAM,iBAAmB/tB,EAAStkB,GAAK,aAAeskB,EAASvoB,KAAO,OAASs2C,GAGjFA,EAAM,IAAIxyC,MAAMwyC,IAGlB5rC,KAAK+6K,QAAQ/mL,KAAK43C,GAEXA,GAGT5rC,KAAKu7K,UAAY,WACf,OAAOv7K,KAAK+6K,SAGd/6K,KAAKw7K,kBAAoB,WACvB,OAAOx7K,KAAK86K,iBAgBhB,SAASj0G,EAAiB40G,GACxB,IAAIC,EAAK,iBAELxtI,EAAQutI,EAAUvtI,MAAMwtI,GAE5B,OAAiB,OAAVxtI,OAAiB5zB,EAAY4zB,EAAM,GAiB5C,SAASotI,EAAqBK,GAC5B,OAAOr7J,EAAOq7J,GAAc,SAAS/vI,GAGnC,MAAoB,iBAAhBA,EAAIwiB,WAMY,SAAhBxiB,EAAIwiB,UAAsBxiB,EAAIgiB,UAA6B,YAAjBhiB,EAAIgiB,aA5CtD34D,EAAOD,QAAU4lL,G,q9LCgJjB,qBAAE,OAAF,2BAEA,0BACE,KAAF,WACE,WAAF,CACI,UAAJ,2DAEE,SAAF,0GACA,qcAEE,KAAF,WACI,MAAJ,CACM,UAAN,EACM,UAAN,KACM,GAAN,EACM,YAAN,EACM,UAAN,EACM,SAAN,EACM,iBAAN,EACM,oBAAN,EACM,kBAAN,EACM,eAAN,GACM,eAAN,GACM,UAAN,GACM,WAAN,EACM,WAAN,EACM,cAAN,EACM,iBAAN,GACM,YAAN,KACM,WAAN,KACM,cAAN,KACM,YAAN,8BACM,oBAAN,sCACM,iBAAN,mCACM,WAAN,GACM,SAAN,GACM,cAAN,GACM,aAAN,GACM,cAAN,GACM,cAAN,GACM,WAAN,EACM,SAAN,GACM,WAAN,EACM,SAAN,EACM,SAAN,EACM,gBAAN,EACM,kBAAN,EACM,UAAN,KACM,aAAN,GACM,mBAAN,EACM,gBAAN,EACM,kBAAN,EACM,gBAAN,GACM,eAAN,GACM,eAAN,GACM,aAAN,GACM,kBAAN,GACM,iBAAN,EACM,YAAN,GACM,WAAN,EACM,aAAN,EACM,UAAN,GACM,QAAN,CACA,CAAQ,KAAR,qCAAQ,MAAR,QAAQ,UAAR,EAAQ,MAAR,aACA,CAAQ,KAAR,iCAAQ,MAAR,YAAQ,UAAR,GACA,CAAQ,KAAR,uCAAQ,MAAR,UAAQ,UAAR,GACA,CAAQ,KAAR,wCAAQ,MAAR,eACA,CAAQ,KAAR,oCAAQ,MAAR,UAAQ,UAAR,IAEM,MAAN,CACQ,aAAR,mCACQ,eAAR,iCACQ,eAAR,oCACQ,cAAR,oCACQ,aAAR,uCACQ,aAAR,uCACQ,iBAAR,sCACQ,oBAAR,mDACQ,aAAR,iCACQ,cAAR,+CACQ,WAAR,YAAU,MAAV,oEAEM,OAAN,EACM,cAAN,EACM,WAAN,GACM,UAAN,GACM,aAAN,IACM,YAAN,EACM,SAAN,EACM,kBAAN,EACM,WAAN,GACM,SAAN,EACM,eAAN,QACM,aAAN,GACM,eAAN,EACM,gBAAN,KACM,eAAN,EACM,iBAAN,GACM,iBAAN,EACM,UAAN,GACM,YAAN,EACM,cAAN,IAGE,QAtGF,WAsGI,IAAJ,OAAI,OAAJ,wQACA,6BACA,IACA,8CAUA,GARA,0BACA,sBAGA,+CACA,kBAGA,yBACA,SACA,KAEA,qEAEA,qBACA,OACA,UACA,yBAEA,iDACA,mBACA,0EAIA,gDACA,sCACA,0BACA,kBAEA,eACA,kBAGA,gBAGA,gDACA,kBAGA,sDACA,qBAEA,6BACA,sBACA,yCACA,4BACA,oBACA,yBAKA,4BACA,kBAGA,yEAEA,0FACA,yEACA,qEACA,yBAIA,0BACA,iBACA,uBAOA,kCAEA,yDACA,yBAGA,uCACA,GACA,kBACA,cACA,wBACA,iCA5FA,SA+FA,4QACA,wCADA,SAGA,2RACA,yBADA,SAEA,mDACA,uBACA,wBAJA,OAQA,cACA,sCACA,0BACA,kBAEA,eACA,kBAGA,gBAjBA,4CAHA,4CA/FA,OA6HA,IAFA,8CAEA,mBACA,4CAYA,IARA,kFACA,yEACA,mBAIA,uCAEA,mBACA,iCAMA,IAFA,4CAEA,mBACA,uCAKA,IADA,mDACA,mBACA,yFAMA,IAFA,0DAEA,mBACA,0CAKA,IAFA,2DAEA,mBACA,0CArKA,+CAwKE,cA9QF,WA+QI,KAAJ,eAEE,QAjRF,WAmRI,+CAAJ,4BACM,+CAAN,6BACQ,GAAR,cAEU,OADA,EAAV,kBACA,QAMI,OAAJ,mEAGI,IAAJ,OAEI,SAAJ,KACM,GAAN,+BACQ,GAAR,iCACA,oDAEY,IAAZ,qCACA,kCAEY,EAAZ,gBAGA,uBACU,EAAV,SACU,EAAV,iBACU,EAAV,mBACU,EAAV,gFAEU,YAAV,WACY,OAAZ,sBACA,OApBI,OAAJ,iCA0BI,IAAJ,oCACA,uCACM,KAAN,qBAIE,QAAF,CACI,kBADJ,WAEM,IAAN,OACM,KAAN,wCACQ,IAAR,iBACU,IAAV,GACY,WAAZ,aACY,OAAZ,UAEU,EAAV,+BAEA,6CACU,EAAV,kBAEA,MACM,KAAN,0DAEI,cAjBJ,WAkBM,IAAN,oCACM,cAAN,GACM,KAAN,yCACA,8BACQ,KAAR,cAAU,KAAV,aAGI,YAzBJ,SAyBA,GAEM,IAAN,KACA,KACA,IAEM,GAAN,eACQ,EAAR,uDAGQ,IAAR,gBACU,GAAV,6CAIM,GAAN,eACQ,EAAR,EACQ,EAAR,6BAGQ,IAAR,gBACU,GAAV,6CAGQ,EAAR,EACQ,EAAR,UAGQ,IAAR,gBACU,GAAV,6CAGQ,EAAR,EACQ,EAAR,6BAGQ,IAAR,gBACU,GAAV,6CAGQ,EAAR,EACQ,EAAR,aAGQ,IAAR,gBACU,GAAV,6CAGQ,EAAR,EACQ,EAAR,wEAGQ,IAAR,gBACU,GAAV,6CAIM,OAAN,GAEI,oBApFJ,WAoFM,IAAN,OACM,KAAN,sDAOQ,IALA,IAAR,4BACA,4BAGA,KACA,kCACU,GAAV,2BACY,GAAZ,EACY,MAKZ,EAIU,EAAV,uBAHU,EAAV,iBACU,EAAV,sBAMI,kBA5GJ,WA6GM,IAAN,KACA,KAEM,EAAN,mBAAQ,MAAR,qCAAQ,KAAR,UAEM,EAAN,mBACM,IAAN,GACQ,QAAR,EACQ,WAAR,iBAEM,KAAN,+BAEI,YAzHJ,WA2HM,IAAN,OACM,+CAAN,kCACQ,IAAR,qEACA,mCACU,EAAV,iBAGM,KAAN,iBAEI,cApIJ,WAsIM,IAAN,OACM,YAAN,WAEQ,IADA,IAAR,gDACA,mBACU,EAAV,2BAEQ,EAAR,qCACA,OAEI,WA/IJ,SA+IA,GACM,YAAN,WAEQ,IADA,IAAR,mDACA,mBACU,EAAV,yFAEA,IAEI,YAvJJ,WA0JM,IAHA,IAAN,OAEA,KAFA,WAGA,GACQ,IAAR,+BAEQ,EAAR,qBACU,EAAV,0BAJA,iCAAQ,EAAR,GAOM,KAAN,iBAEI,aAnKJ,SAmKA,KACM,KAAN,eACM,IAAN,0DACA,6BACA,mCACM,EAAN,qCACM,EAAN,2CACM,EAAN,wBACM,EAAN,sBAEM,IAAN,KAEQ,EADR,kBACA,kCAEA,mCAEM,EAAN,8BAEI,WArLJ,SAqLA,KAEM,IAAN,KACA,uBACA,qBAIM,GAHA,EAAN,qCACM,EAAN,EAEA,MACQ,IAAR,qBACQ,EAAR,qCACQ,GAAR,MAGM,IAAN,0BACM,EAAN,qCAEM,IAAN,UAGA,uCACA,uCACA,uCACA,wCACA,KAGQ,EADR,iBACA,OACA,yCACA,SAEA,OAGM,GAAN,kBACM,GAAN,kBACM,GAAN,kBACM,GAAN,kBAGM,IAAN,KACA,KAEM,EAAN,mBAAQ,MAAR,EAAQ,KAAR,UACM,EAAN,gBAAQ,MAAR,MAAQ,KAAR,UACM,EAAN,gBAAQ,MAAR,MAAQ,KAAR,UACM,EAAN,kBAAQ,MAAR,MAAQ,KAAR,UACM,EAAN,mBAAQ,MAAR,MAAQ,KAAR,UACM,EAAN,uBAAQ,MAAR,EAAQ,KAAR,UAEM,EAAN,mBACM,IAAN,GACQ,QAAR,EACQ,WAAR,iBAEM,KAAN,8BACM,KAAN,iBACM,KAAN,iBAEI,cAhPJ,yBAiPA,wBACQ,KAAR,eAGA,0BACQ,KAAR,cAGA,yBACQ,KAAR,4BAGM,IAAN,SACM,YAAN,WAGQ,IAAR,mCACU,IAAV,2FACU,KAAV,MAYQ,GAVA,IAAR,YACQ,IAAR,68BACQ,IAAR,wBACQ,IAAR,mZACQ,KAAR,cAGQ,IAAR,2BACQ,IAAR,yBAEA,oDACU,IAAV,MACY,UAAZ,cACY,OAAZ,sBAEU,IAAV,wCAWQ,GAPR,cACU,IAAV,0CACU,IAAV,WACU,IAAV,eAIA,sBACU,IAAV,oBACU,IAAV,4BACU,OAAV,aAGQ,GAAR,aACU,IAAV,QACY,UAAZ,mCACY,aAAZ,mBACY,aAAZ,4HAEU,IAAV,sCACU,IAAV,YAGA,0DACA,uBACA,oBACc,IAAd,+BAEc,IAAd,aAGY,IAAZ,gCAIA,iBACU,IAAV,aACU,IAAV,eAGQ,IAAR,mBACQ,IAAR,WACQ,IAAR,gBACQ,IAAR,iBAEA,qBACU,IAAV,sEACY,IAAZ,qBAIA,MAEI,WA7UJ,WA8UM,KAAN,mCAEI,YAhVJ,SAgVA,GAEM,IAAN,IACA,IACA,IACA,KACA,IAGM,OAAN,KAEQ,GADA,EAAR,mBACA,MACU,GAAV,EACU,EAAV,gCACU,IAAV,aACA,KAGc,EAFd,uCACA,sCACA,KAEA,uBAGA,kBAEU,IAAV,iBACU,EAAV,EACU,IAKJ,OAAN,KAEQ,GADA,EAAR,mBACA,MACU,GAAV,EACU,EAAV,gCACU,IAAV,aACA,KAGc,EAFd,uCACA,sCACA,KAEA,4CAGA,uCAEU,IAAV,iBACU,EAAV,EACU,IAKJ,OAAN,KAEQ,GADA,EAAR,mBACA,MACU,GAAV,EACU,EAAV,gCACU,IAAV,aACA,oBACA,gCAEc,EADd,uCAGA,2BAFA,KAKA,wBAIU,IAAV,iBACU,EAAV,EACU,IAIJ,OAAN,GAEI,WAjaJ,SAiaA,GAAM,IAAN,OACA,+BAGA,kBAEM,GAAN,2BACQ,IAAR,GACU,OAAV,WACU,OAAV,EACU,UAAV,UAEQ,KAAR,iDACU,EAAV,oCACU,EAAV,gCAEA,CACQ,IAAR,GACU,OAAV,WACU,OAAV,GAGQ,KAAR,sDACU,EAAV,8BAII,gBA5bJ,SA4bA,GAAM,IAAN,OACA,+BACA,GACQ,OAAR,WACQ,OAAR,EACQ,UAAR,IAEM,KAAN,iDACQ,GAAR,oBAEU,IAAV,4BAEU,GAAV,yCACY,GAAZ,yCACc,EAAd,yIACc,IAAd,+BACgB,EAAhB,4IAAkB,KAAlB,mBAAkB,IAAlB,yBAEA,CACc,EAAd,+FACc,IAAd,+BACgB,EAAhB,kGAAkB,KAAlB,mBAAkB,IAAlB,qBAKU,GAAV,mBACY,GAAZ,yCACc,EAAd,yIACc,IAAd,+BACgB,EAAhB,mKAEA,CACc,EAAd,+FACc,IAAd,+BACgB,EAAhB,qHAKU,GAAV,iBACY,EAAZ,iGACY,IAAZ,+BACc,EAAd,oGAAgB,MAAhB,mBAAgB,MAAhB,qBAIU,GAAV,qGACY,GAAZ,wCACc,IAAd,+BACgB,EAAhB,6EAGc,IAAd,+BACgB,EAAhB,kDAKU,GAAV,mBACY,GAAZ,wCACc,IAAd,+BACgB,EAAhB,4EAEA,CAKc,IAJA,IAAd,KACA,KACA,4BAHA,WAKA,GACgB,IAAhB,KACA,KACA,KAEgB,EAAhB,qBACkB,GAAlB,kCACoB,EAApB,oBACA,CAEoB,IAApB,kBAEA,oDAIoB,GAApB,sCACA,8BAEoB,EAApB,EACoB,EAApB,oBAIgB,EAAhB,IACkB,MAAlB,OACkB,GAAlB,EACkB,MAAlB,EACkB,OAAlB,oBACkB,YAAlB,GACkB,QAAlB,EACkB,KAAlB,WACkB,IAAlB,CAAoB,GAApB,GAAoB,GAApB,GAAoB,GAApB,GACkB,MAAlB,GAGgB,EAAhB,MApCA,2BAAgB,EAAhB,GAuCc,EAAd,4GACc,EAAd,iCAAgB,MAAhB,MAIU,GAAV,oBACY,IAAZ,+BACc,SAAd,sEAMI,UArjBJ,qBAsjBA,oCACQ,KAAR,oBACA,oBACQ,KAAR,KAEQ,KAAR,MAGM,KAAN,WAEM,KAAN,aAEM,IAAN,yCACQ,GAAR,6CACU,IAAV,YACU,GAAV,oCACY,IAAZ,sEACY,SAAZ,iBAEY,UAAZ,EAGA,6CAEA,UACc,KAAd,kCAKQ,IAAR,wCACU,KAAV,yCAII,SAzlBJ,oBAylBM,IAAN,YAEA,gCACA,QACA,iBAQM,GALN,kDACQ,KAAR,gBAIA,kGAIQ,IAHA,IAAR,+DACA,qDAEA,sBACU,IAAV,YACU,GAAV,yBACY,IAAZ,wDACY,SAAZ,iBAEY,UAAZ,EAGA,kCAEA,kCAEc,KAAd,+BACA,UACgB,KAAhB,wBAQY,KAAZ,8BASM,IAFA,IAAN,wCA9CA,gBAgDA,GAIQ,IAFA,IAAR,mDAlDA,WAoDA,GACU,IAAV,YAEA,0DAEU,EAAV,qBAEA,gBACA,gDACgB,OAAhB,gEACgB,OAAhB,iBAMU,OAAV,mEAEU,IAAV,iEAEU,EAAV,qBAEY,IAAZ,oEAwCY,GAtCA,EAAZ,qBAGc,GAAd,4IACgB,IAAhB,GACkB,MAAlB,EACkB,KAAlB,yDAEgB,OAAhB,iBAIc,GAAd,sVACgB,IAAhB,GACkB,KAAlB,EACkB,MAAlB,EACkB,YAAlB,SACkB,SAAlB,oEACkB,SAAlB,wDACkB,OAAlB,EACkB,KAAlB,8DAGgB,OAAhB,sBAOc,GAJd,aACgB,KAAhB,4DAGA,WACA,wEACkB,IAAlB,0DACkB,SAAlB,wFAKA,WAEc,GAAd,oEACgB,IAAhB,KACA,KACA,wFACgB,EAAhB,qBACkB,GAAlB,uGACoB,EAApB,qFACoB,EAApB,0FAEoB,GAApB,0FAEsB,IAAtB,kGAEsB,EAAtB,qBACA,6GAC0B,EAA1B,+FAC0B,EAA1B,mGAOkB,GAAlB,kSACoB,IAApB,GACsB,KAAtB,EACsB,MAAtB,EACsB,YAAtB,SACsB,SAAtB,wFACsB,SAAtB,qFACsB,OAAtB,EACsB,KAAtB,iFACsB,QAAtB,EACsB,QAAtB,GAGoB,OAApB,0BAIgB,KAAhB,KAAkB,MAAlB,KACgB,OAAhB,eACgB,OAAhB,mBAEA,CACc,GAAd,0QACgB,GAAhB,mEACkB,IAAlB,2EAEkB,EAAlB,qBACA,wCACsB,KAAtB,4BAEsB,KAAtB,cAIkB,KAAlB,QAKc,IAAd,uIAEA,6NACkB,IAAlB,GACoB,KAApB,EACoB,MAApB,EACoB,YAApB,SACoB,SAApB,iEACoB,SAApB,8DACoB,OAApB,EACoB,KAApB,0DACoB,QAApB,GAGkB,OAAlB,sBAKc,GAAd,gJACgB,IAAhB,KACA,wFAMgB,GALA,EAAhB,qBACkB,EAAlB,wFAIA,6NACkB,IAAlB,GACoB,KAApB,EACoB,MAApB,EACoB,YAApB,SACoB,SAApB,iEACoB,SAApB,8DACoB,OAApB,EACoB,KAApB,WACoB,QAApB,GAGkB,OAAlB,sBAGgB,KAAhB,KAAkB,MAAlB,MAIc,GAAd,4IACgB,IAAhB,KACA,KACA,wFACgB,EAAhB,qBACkB,GAAlB,uGACoB,EAApB,qFACoB,EAApB,0FAEoB,GAApB,0FAEsB,IAAtB,kGAEsB,EAAtB,qBACA,6GAC0B,EAA1B,+FAC0B,EAA1B,mGAOkB,GAAlB,kSACoB,IAApB,GACsB,KAAtB,EACsB,MAAtB,EACsB,YAAtB,SACsB,SAAtB,wFACsB,SAAtB,qFACsB,OAAtB,EACsB,KAAtB,iFACsB,QAAtB,EACsB,QAAtB,GAEoB,OAApB,0BAIgB,KAAhB,KAAkB,MAAlB,KACgB,OAAhB,eACgB,OAAhB,mBAKA,eACY,KAAZ,qBACc,IAAd,0BACgB,GAAhB,2EAEkB,GAAlB,gKACoB,GAApB,kIACsB,IAAtB,2BACsB,KAAtB,oBACA,kEACA,2BACwB,OAAxB,qBAEA,mEACsB,KAAtB,wCAEsB,KAAtB,iCAKoB,KAApB,4BAEkB,cAAlB,YACA,CAEkB,IAAlB,KACA,gCAEkB,EAAlB,qBACA,OACsB,GAAtB,MAIA,IACoB,KAApB,kCA9PA,YAAU,EAAV,IAJA,mBAAQ,OAAR,GA8QM,KAAN,yFAEA,qBACQ,KAAR,cAGM,IAAN,wCACQ,KAAR,uCAGM,IAAN,wCACQ,KAAR,uCAWM,OARA,KAAN,oEAGA,wBACQ,KAAR,oBACQ,KAAR,uBAGA,MAEI,WA/6BJ,SA+6BA,GAAM,IAAN,OACA,KACA,iCAEM,EAAN,qBACQ,EAAR,wBAGM,KAAN,8BAEM,IAAN,OACM,YAAN,WAEQ,IADA,IAAR,gDACA,mBACU,EAAV,2BAEQ,EAAR,qCACA,MAEI,cAl8BJ,SAk8BA,KACM,IAAN,uCACQ,IAAR,gDACA,MACY,KAAZ,mCAKI,iBA38BJ,WA28BM,IAAN,OACM,KAAN,iDACA,qBACU,EAAV,kBAEU,EAAV,sBAII,aAp9BJ,SAo9BA,GAAM,IAAN,OAAM,OAAN,iPACA,6DACA,0CACA,8BAEA,8BACA,yBACA,oEACA,sBARA,8CAWI,SA/9BJ,SA+9BA,GACM,OAAN,2BAEI,WAl+BJ,SAk+BA,GACM,KAAN,mEACM,KAAN,mEACM,KAAN,mFACM,KAAN,uBACM,KAAN,gCACM,KAAN,2BACM,KAAN,wBACM,KAAN,qBAEI,kBA5+BJ,WA4+BM,IAAN,OAAM,OAAN,oOACA,uBACA,kDAFA,gCAGA,gDACA,OACA,sBACA,6BAEA,mDACA,8HATA,OAaA,kDACA,qEACA,gIAfA,8CAmBI,YA//BJ,YA+/BM,IAAN,QAIM,GAHA,KAAN,aAGA,oGACQ,IAAR,wCACU,KAAV,uCAKM,KAAN,gBAEM,KAAN,gBAEI,YA9gCJ,SA8gCA,GAAM,IAAN,OAIM,GAHA,KAAN,aAGA,wEACQ,IAAR,OAEQ,EAAR,wCACA,oBACY,EAAZ,+BAEA,sBACY,EAAZ,iCAEA,sBACY,EAAZ,iCAEA,qBACY,EAAZ,gCAEA,oBACY,EAAZ,+BAEA,oBACY,EAAZ,+BAEA,wBACY,EAAZ,mCAEA,2BACY,EAAZ,sCAEA,oBACY,EAAZ,8BAEA,MACA,uBACgB,EAAhB,mCAIA,qBACY,EAAZ,gCAEA,iBACA,UACc,EAAd,6BAIA,eACA,qCACc,EAAd,4BAEc,EAAd,uBAEY,EAAZ,cAEA,qCACc,EAAd,6BAEc,EAAd,2BAMM,IAAN,wEAEQ,IAAR,OAEQ,EAAR,wCACA,iBACA,UACc,EAAd,6BAIA,eACY,EAAZ,uBACY,EAAZ,cAEY,EAAZ,2BAMA,2BAAQ,WAIE,IAHA,IAAV,SAEA,8CAHA,WAIA,GACY,IAAZ,YAEA,kBACY,GAAZ,8GACc,IAAd,OACA,KACc,EAAd,+EACgB,GAAhB,0BACkB,IAAlB,4CAEkB71J,EAAO1qB,SAAQ,SAAjC,GACA,QACsB2qB,EAAcC,GAGpC,kCACsB,GAAtB,MAIA,IACoB,EAApB,0CAIA,eACkB,EAAlB,qFACkB,EAAlB,cAEkB,EAAlB,2FA9BA,iBAJQ,GAyCR,eAGQ,KAAR,aAFQ,KAAR,cAKI,gBArpCJ,SAqpCA,GAAM,IAAN,OACM,KAAN,aAMM,IAHA,IAAN,YAEA,iDANA,WAOA,GACQ,IAAR,YAEQ,IAAR,iGAEU,IAAV,4DAEU,EAAV,qBAEY,IAAZ,oHAEc,IAAd,8BAEgB,IAAhB,+DAEgB,EAAhB,qBAEkB,GAAlB,kBACoB,IAApB,OACoB,EAApB,sEAEsB,IAAtB,KAEsB,IAAtB,qDACwB,GAAxB,0DAsB0B,GArB1B,oBAC4B,EAA5B,4BAEA,sBAC4B,EAA5B,8BAEA,sBAC4B,EAA5B,8BAEA,qBAC4B,EAA5B,6BAEA,oBAC4B,EAA5B,4BAEA,oBAC4B,EAA5B,4BAEA,wBAC4B,EAA5B,gCAEA,0BAE4B,IAA5B,gCAE4B,EAA5B,qBACA,QACgC,EAAhC,GAGA,sBACgC,GAAhC,MAIA,IAC8B,EAA9B,0CAGA,oBAC4B,EAA5B,2BAEA,MACA,uBACgC,EAAhC,mCAIA,qBAC4B,EAA5B,6BAEA,iBACA,OAC8B,EAA9B,0BAIA,eACA,qCAC8B,EAA9B,mEACA,yBAC8B,EAA9B,qFAE8B,EAA9B,8DAE4B,EAA5B,cAEA,qCAC8B,EAA9B,oEACA,yBAC8B,EAA9B,sFAE8B,EAA9B,mEAIA,kBACA,OAC8B,EAA9B,0BAGA,eAC8B,EAA9B,8DAC8B,EAA9B,cAE8B,EAA9B,mEAOkB,GAAlB,aACoB,IAApB,sEAEoB,EAApB,qBAEsB,IAAtB,8BACwB,IAAxB,yEAEwB,EAAxB,qBAC0B,GAA1B,aAE4B,IAA5B,gFAE4B,EAA5B,qBAC8B,IAA9B,mFAE8B,EAA9B,qBAEgC,GAAhC,kBACkC,IAAlC,OAEkC,EAAlC,0FAEA,sDACA,+EACA,wBAC0C,EAA1C,+CAGA,eAC0C,EAA1C,qFAC0C,EAA1C,cAE0C,EAA1C,kHAgBgB,EAAhB,oEAtKA,YAAQ,EAAR,GA8KA,eAGQ,KAAR,aAFQ,KAAR,cAKI,aAh1CJ,SAg1CA,GACM,KAAN,sBACM,KAAN,mBACM,KAAN,gBACM,KAAN,mBACM,KAAN,iBAEI,SAv1CJ,kBAu1CA,UASM,GARN,mBACQ,KAAR,0BACQ,KAAR,gBACQ,KAAR,qBAEQ,KAAR,aAGA,gBACQ,KAAR,sBACQ,IAAR,uCACU,GAAV,4CACY,IAAZ,YACY,GAAZ,mCACc,IAAd,qEACc,SAAd,iBAEc,UAAd,EAGA,2CAEA,UACgB,KAAhB,iCAMA,iBACA,qBAIY,KAAZ,qBAHY,KAAZ,wBACY,KAAZ,gBAIU,KAAV,mBAEU,KAAV,oBACU,KAAV,cAGQ,IAAR,uCACU,GAAV,4CACY,IAAZ,aACY,GAAZ,mCACc,IAAd,sEACc,UAAd,kBAEc,WAAd,EAGA,4CAEA,WACgB,KAAhB,iCAOQ,IAAR,wCACU,KAAV,4CAGQ,KAAR,oBAGI,eA75CJ,SA65CA,GAAM,IAAN,OAAM,OAAN,wOACA,wCACA,yCAFA,SAGA,gDACA,0CAJA,8CAOI,kBAp6CJ,SAo6CA,KACM,IAAN,iBACM,EAAN,YACM,EAAN,kBAEI,iBAz6CJ,WAg7CM,IALA,IAAN,yCACA,KAGA,KACA,YACQ,GAAR,6CAGM,OAAN,GAEI,WAt7CJ,SAs7CA,GAAM,IAAN,OAEA,kDACA,iBAEA,iBAEM,EAAN,qBACQ,GAAR,MAIU,IAFA,IAAV,KACA,KACA,uBACY,IAAZ,sCACY,GAAZ,MACc,GAAd,EACc,EAAd,aACc,OAGd,EAgDY,EAAZ,mBA9CY,EAAZ,gBAEA,iCACc,EAAd,4BACc,EAAd,sCACgB,EAAhB,YACgB,EAAhB,qBACgB,EAAhB,uBAIA,+BAAc,WACE,IAAhB,IACgB,EAAhB,4BAEgB,IAJhB,eAIA,GACkB,IAAlB,uBAEkB,EAAlB,uCACoB,IAApB,eACA,eACA,eAGA,oCACoB1qB,GAAS,EACT,IAApB,2BAEA,GACsB,YAAe,QACf,GAAMhB,EACN,KAAQsb,EACR,SAAYC,EACZ,KAAQoQ,EACR,SAAYtQ,EACZ,QAAW,IAAIuQ,MAEjBC,EAAIC,OAAOtpB,SAAS,iBAAkBtC,GAASR,MAAK,WAClDmsB,EAAIE,UAAYjvB,EAChB+uB,EAAIG,aAAavxB,KAAKqC,GACtB+uB,EAAII,gBAAgBC,UAzB1C,2BAJc,SAwCV,aA//CJ,SA+/CA,GAKM,IALA,IAAN,OAEA,YAEA,iDAJA,WAKA,GACQ,IAAR,YAEQ,IAAR,iGACU,IAAV,4DACA,UAEU,EAAV,qBACA,OAEA,wDACgB,EAAhB,yDAEgB,EAAhB,+DAbA,YAAQ,EAAR,IAoBI,iBAxhDJ,SAwhDA,GAAM,IAAN,OAEA,IAEM,GAAN,4BAEQ,IADA,IAAR,iDADA,WAEA,GACU,IAAV,YAEU,IAAV,iGACY,IAAZ,4DAEY,EAAZ,qBACc,GAAd,qIAEA,0DACkB,EAAlB,6EAEA,6HACoB,EAApB,mFAGA,4DACA,yEACsB,EAAtB,8HAGA,0DACA,iEACA,6HAC0B,EAA1B,gJAMkB,EAAlB,6DACkB,EAAlB,+DAEA,6HACoB,EAApB,kEACoB,EAApB,qEAGA,4DACA,yEAEA,2HACwB,EAAxB,gEAEwB,EAAxB,gEAOA,0DACkB,GAAlB,qDACoB,GAApB,2HACA,4DACwB,EAAxB,uEAEA,iEACwB,EAAxB,iFAEA,iEACA,4DACwB,EAAxB,uEAGsB,IAAtB,UACA,4DACwB,EAAxB,2EAGA,4DACwB,EAAxB,4EAIoB,GAApB,2HACA,2DACA,kFAC0B,EAA1B,0IAGA,gEACA,uFAC0B,EAA1B,yJAGA,iEACA,2DACA,kFAC0B,EAA1B,0IAIsB,IAAtB,UACA,2DACA,kFAC0B,EAA1B,8IAIA,2DACA,kFAC0B,EAA1B,0IAQc,GAAd,uEAEgB,IAAhB,KACA,KACA,KACA,aAoBgB,GAlBhB,2DACA,sDACoB,GAApB,EACA,4DACsB,EAAtB,sEACsB,EAAtB,yEAGoB,GAApB,EACA,2DACA,kFACwB,EAAxB,yIACwB,EAAxB,6IAMA,GACA,2DACoB,GAApB,EACoB,GAApB,GAGkB,IAAlB,mFAEkB,EAAlB,qBACA,OACsB,EAAtB,oGACsB,GAAtB,GAGA,iFACsB,EAAtB,oGAEA,kFACA,gGAC0B,EAA1B,6KAIA,IACwB,EAAxB,oFAEA,mFACA,gGAC4B,EAA5B,iGAnKA,YAAU,EAAV,GAgLQ,IADA,IAAR,4DACA,mBACU,EAAV,8BAII,SAntDJ,SAmtDA,KAAM,IAAN,OACA,KACA,KACA,KACA,KACA,KAEA,iBAEM,EAAN,qBAEA,aACU,EAAV,OAGQ,EAAR,EAGA,oBACA,yBAIA,YACc,EAAd,qBACc,EAAd,SACc,EAAd,IAAgB,MAAhB,EAAgB,KAAhB,KASA,gHAGA,qBACc,EAAd,gBACc,EAAd,WAEc,EAAd,SACc,EAAd,WAGY,EAAZ,KACY,EAAZ,uGAGA,wBAEc,EADd,oBACA,UAEA,UAIU,EAAV,IAAY,MAAZ,EAAY,KAAZ,IAIQ,EAAR,GACQ,EAAR,GACQ,EAAR,MAGM,EAAN,mBACM,IAAN,GACQ,QAAR,EACQ,WAAR,iBAGM,KAAN,+CACA,YACU,EAAV,gBAEA,aACU,EAAV,iMAAY,OAAZ,iFACA,yBADA,SAEA,mDACA,uBACA,wBAJA,OAQA,cACA,sCACA,0BACA,kBAEA,eACA,kBAGA,gBAjBA,gDAwBI,WAzzDJ,oBAyzDA,UACM,KAAN,WACM,KAAN,cACM,KAAN,gBAEM,IAAN,SACM,YAAN,WAGQ,GAFA,IAAR,0BAEA,kCAEU,IAAV,WACA,QACA,WACA,WACA,SAGA,uBACA,sBACA,mBACA,gBACA,WACA,aAEA,2BAoFU,GAlFA,KAAV,qBAEA,oBACc,SAAd,OAGY,QAAZ,EAGA,2BACA,gCAIA,cACkB,MAAlB,4BACkB,QAAlB,SACkB,KAAlB,UAAoB,MAApB,MAAoB,KAApB,WASA,uHAGA,4BACkB,MAAlB,uBACkB,QAAlB,WAEkB,MAAlB,gBACkB,QAAlB,WAGgB,MAAhB,YACgB,QAAhB,6GAGA,2BACkB,oBAAlB,aAEA,0BACkB,mBAAlB,aAEA,uBACkB,gBAAlB,aAEA,sBACkB,IAAlB,4BAEA,oBACkB,aAAlB,aAEA,eACkB,QAAlB,aAEA,iBACkB,UAAlB,cAIA,+BAEkB,QADlB,wBACA,UAEA,UAIc,KAAd,UAAgB,MAAhB,MAAgB,KAAhB,UAIY,QAAZ,GACY,QAAZ,GACY,MAAZ,MAIA,sBAEA,yBACc,IAAd,4CAGY,IAAZ,WACc,QAAd,CACgB,GAAhB,mBACgB,UAAhB,oBACgB,SAAhB,mBACgB,MAAhB,iBAEc,YAAd,CACgB,SAAhB,oBAEc,aAAd,cAEY,IAAZ,+DACc,IAAd,mHAEc,IAAd,GACgB,GAAhB,aACgB,OAAhB,oBAKc,GAHA,IAAd,oDACgB,IAAhB,uIAEA,aACgB,IAAhB,GACkB,GAAlB,QACkB,KAAlB,UACkB,KAAlB,WACkB,OAAlB,cAEgB,IAAhB,+CACkB,IAAlB,+HAEkB,IAAlB,KACkB,EAAlB,yBAEkB,IAAlB,GACoB,QAApB,QACoB,MAApB,GAGkB,IAAlB,sDACoB,IAApB,0FAMY,KAAZ,mBAAc,MAAd,mBAAc,KAAd,UACY,KAAZ,mBAAc,MAAd,mBAAc,KAAd,UAEU,KAAV,qBAAY,OAAZ,EAAY,KAAZ,WAGU,IADA,IAAV,YACA,kCACY,GAAZ,0CACc,GAAd,kCACgB,IAAhB,mEACgB,SAAhB,iBAEgB,UAAhB,EAGA,0CAEA,UACkB,IAAlB,gCAMU,QAAV,kBACU,QAAV,4BACU,IAAV,MACY,QAAZ,QACY,OAAZ,YAGA,UAKY,IAAZ,sBACY,IAAZ,oBALY,IAAZ,sDACc,IAAd,wBAOU,IAAV,WACU,IAAV,gBAEA,OAEI,eAxgEJ,SAwgEA,GACM,KAAN,SACM,KAAN,iBACM,KAAN,mBACM,KAAN,8DAEI,kBA9gEJ,WA+gEM,KAAN,gBACM,KAAN,SACM,KAAN,eACM,KAAN,mBACM,KAAN,2EAEI,UArhEJ,SAqhEA,aACM,IAAN,WACA,kCACA,CACQ,IAAR,UACQ,MAAR,UACQ,KAAR,UACQ,KAAR,UACQ,OAAR,UACQ,OAAR,UACQ,QAAR,IACA,UAEA,GACQ,SAAR,EACQ,OAAR,8BACQ,OAAR,EACQ,YAAR,EACQ,SAAR,EACQ,UAAR,EACQ,IAAR,EACQ,SAAR,GAEM,KAAN,sC,wGCppFA,IAAIhK,EAAOnd,EAAQ,QACf6iB,EAAc7iB,EAAQ,QAEtBgjB,EAAQhjB,EAAQ,QAA2FgjB,MAE3Gk6B,EAAgC,gCAEpCvmD,EAAOD,QAAQwmD,8BAAgCA,EAE/C,IAAIogI,EAAc,CAChBtmL,KAAM,GACNS,MAAOylD,GAUT,SAASD,EAAW/8C,EAASqnB,EAAkBnnB,GAC7C,IAAImC,EAAU,CAAE+6K,GAEZC,EAAkBh2J,EAAiBlE,WAAWnjB,GAElD,GAAIq9K,EAGF,OAFAh7K,EAAQ7M,KAAKi2B,EAAO,4BAA6B4xJ,EAAiBn9K,IAE3DmC,EAGT,IAAItG,EAAQ,EAYZ,OAVAsrB,EAAiBjE,SAASvnB,SAAQ,SAASwjB,GACpCyD,EAAM9iB,EAASqf,EAASgE,aAI7BhhB,EAAQ7M,KAAKi2B,EAAO,2BAA6B1vB,EAAOsjB,EAAUnf,IAElEnE,QAGKsG,EAKT,SAASy6C,EAAUS,EAAUl7C,GAC3B,OAAO4a,EAAK5a,GAAS,SAASopB,GAC5B,OAAO8xB,IAAa9xB,EAAOl0B,SAM/B,SAASk0B,EAAOl0B,EAAO8nB,EAAUnf,GAC/B,IAAIpJ,EAAOoJ,EAAUmf,EAASvoB,MAE1BuoB,EAAS4D,UACXnsB,GAAQ,MAAQuoB,EAAS4D,QAAU,KAGrC,IAAIwI,EAAS,CACX1wB,GAAIskB,EAAStkB,GACbjE,KAAMA,EACNS,MAAOA,GAOT,OAJI8nB,EAAS4D,UACXwI,EAAOxI,QAAU5D,EAAS4D,SAGrBwI,EAsBT,SAAS6xJ,EAAaC,GACpB,IAAIC,EAAO,IAAI72J,KAAK42J,GAEhB3uG,EAAO4uG,EAAK5nI,cAEZ+4B,EAAQ8uG,EAAQ7xH,OAAO4xH,EAAK1oG,WAAa,GAAI,EAAG,KAEhDpG,EAAM+uG,EAAQ7xH,OAAO4xH,EAAKzoG,WAAY,EAAG,KAE7C,OAAOrG,EAAM,IAAMC,EAAQ,IAAMC,EAGnC,SAAS6uG,EAAQlyJ,EAAQr2B,EAAQwoL,GAC/B,MAAOnyJ,EAAOr2B,OAASA,EACrBq2B,EAASmyJ,EAAYnyJ,EAGvB,OAAOA,EAlET90B,EAAOD,QAAQumD,WAAaA,EAQ5BtmD,EAAOD,QAAQsmD,UAAYA,EAsB3BrmD,EAAOD,QAAQ2yE,6BAA+B,SAAS9pD,GACrD,IAAI6nD,EAAW7nD,EAAS6nD,SACpBjkD,EAAU5D,EAAS4D,QAEvB,GAAIikD,EAAU,CACZ,IAAKvkD,EAAYukD,EAASrxB,SACxB,MAAO,WAAaynI,EAAap2G,EAASrxB,SACrC,IAAKlzB,EAAYukD,EAASy2G,SAC/B,MAAO,WAAaL,EAAap2G,EAASy2G,SAI9C,OAAIh7J,EAAYM,GACP,KAGF,WAAaA,I,0EC7FtB,IAAIviB,EAAoBZ,EAAQ,QAAwDY,kBACpFS,EAAuBrB,EAAQ,QAA2CqB,qBAC1EkgB,EAAcvhB,EAAQ,QAA2CuhB,YACjEnB,EAAoBpgB,EAAQ,QAC5BggB,EAAahgB,EAAQ,QACrBqb,EAAerb,EAAQ,QACvBmb,EAAgBnb,EAAQ,QACxBob,EAAYpb,EAAQ,QACpB89K,EAAa99K,EAAQ,QACrB4f,EAAQ5f,EAAQ,QAChBW,EAAKX,EAAQ,QAAwDW,GACrEwc,EAAOnd,EAAQ,QACf+9K,EAAO/9K,EAAQ,QAEnB,SAASg+K,IACP,OAAOp+J,EAAME,OAAO,UActB,SAASm+J,EAAmB79K,EAAWmC,EAAS27K,GAE9C,IAAIjjL,EAAKsH,EAAQtH,GACb2I,EAAQrB,EAAQqB,MAChBC,EAAgBtB,EAAQsB,cACxBqZ,EAAW3a,EAAQ2a,SAEvB,OAAO7B,EAAa4B,UAAU7c,EAAW,CACvCnF,GAAIA,EACJ2I,MAAOA,EACPC,cAAeA,EACfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,IAAS,GAC3DvY,EAAS,GAIb,OAFAA,EAAOO,GAAiBs6K,EAAkBt6K,GAEnCP,GAGTQ,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI8E,EAAW,GAEf,GAA2B,oBAAhBpe,EAAQuB,IAAoB,CACrC,IAAIP,EAAMhB,EAAQuB,IAAI5D,EAASoD,EAAQuY,GAEnCtY,GACFod,EAASjrB,KAAK6N,GAIlB,IAAIsiD,EAAYq4H,EAAqBh+K,EAAS2b,GAC1CmE,EAAa,GAMjB,OAJAA,EAAWnc,GAAiBP,EAAOO,SAAkBmY,EAErD2E,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAAS2lD,EAAW7lC,IAE1DW,GAET3D,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQqiK,EAAqBh+K,EAAS2b,IAExCqB,SAAUA,IAId,SAASkhK,EAA8Bl+K,GACrC,OACES,EAAGT,EAAS,qBAAuBS,EAAGT,EAAQ6b,OAAQ,oBACnDpb,EAAGT,EAAS,iBAGnBvJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaC,GAErD,GAAKg+K,EAA8Bl+K,GAAnC,CAyBAD,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,WACL2I,MAAQxD,EAAU,YAClByD,cAAe,UACfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GAE3B,MAAO,CACL4qH,QAAS7pH,EAAG5J,IAAI,uBAGpByM,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI5a,EAAKL,EAAkBV,GACvB4qH,EAAUxnH,EAAOwnH,cAAW9uG,EAEhC,OAAOZ,EAAU2B,qBAAqB7c,EAASe,EAAI,CAAE,oBAAqB6pH,QAK9E,IAAIuzD,EAAkBj+J,EAAkBlgB,EAASC,EAAa,CAC5DlF,GAAI,cACJ2I,MAAOxD,EAAU,eACjByD,cAAe,KACfwY,OAAQ,YACR6P,uBAAwB,SAAShsB,EAASkgB,EAAmB3oB,GAC3D,IAAIwJ,EAAKL,EAAkBV,GAAUygB,EAAW,GAE3CP,IACHA,EAAoBjF,EAAcc,cAAc,yBAA0B,CAAE3Y,OAAQ,IAAMrC,EAAId,GAC9FwgB,EAASjrB,KAAK0lB,EAAUyJ,iBAAiB3kB,EAAS,CAAEkgB,kBAAmBA,MAGzE,IAAI+G,EAAW22J,EAAWt4H,YAAYtlD,GAEjCinB,IACHA,EAAWhM,EAAcc,cAAc,qBAAsB,CAAEiP,OAAQ,IAAM9K,EAAmBjgB,GAChGwgB,EAASjrB,KAAK0lB,EAAUwF,6BACtB1gB,EACAkgB,EACA,SACA,oBACA,CAAC+G,GACD,MAIJ,IAAI0E,EAAQ1Q,EAAcc,cAAc,sBAAuB,CAAEhhB,GAAIxD,GAAS0vB,EAAUhnB,GAQxF,MAP+B,qBAApBgnB,EAAS+D,OAClBvK,EAASjrB,KAAK0lB,EAAU2F,kBAAkB7gB,EAASinB,EAAU,SAAU,CAAE0E,KAEzElL,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASinB,EAAU,CAC9D+D,OAAQ,CAAEW,MAGPlL,GAETwL,uBAAwB,SAASjsB,EAASkgB,EAAmB3oB,EAAOuK,GAClE,IAAImlB,EAAW9lB,EAAqBT,EAAkBV,GAAU,sBAAsB,GAClF+hB,EAAQkF,EAAS+D,OAAOlpB,GACxB2e,EAAW,GAYf,OAVIwG,EAAS+D,OAAO91B,OAAS,EAC3BurB,EAASjrB,KAAK6rB,EAAY3gB,EAAkBV,GAAUA,EAASinB,KAE/DxG,EAASjrB,KAAK0lB,EAAUkG,uBAAuBphB,EAASinB,EAAU,SAAU,KAAM,CAAClF,KAE/EA,EAAMhnB,KAAOksB,EAAS9vB,IAAI,gBAC5BspB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASinB,EAAU,CAAE,iBAAenL,MAI9E2E,GAETtf,qBAAsB,SAASnB,GAC7B,OAAO49K,EAAWr4H,cAAcvlD,IAElCwwB,sBAAuB,SAASxwB,EAAS2b,GACvC,OAAO,KAGX5b,EAAMO,QAAQ9K,KAAK2oL,GAGnB,IAAIC,EAAgCjjK,EAAakB,UAAUnc,EAAW,CACpEnF,GAAI,oBACJ2I,MAAOxD,EAAU,gBACjByD,cAAe,cACfuY,cAAe,SAASlc,EAAS6rC,GAC/B,IAAI3vB,EAAgB,CAAC,CAAEplB,KAAM,GAAIS,MAAO,KACpCkuD,EAAam4H,EAAWr4H,cAAcvlD,GAM1C,OALA69K,EAAKp4H,GAAY,SAAS95B,GACL,YAAfA,EAAM3qB,MACRkb,EAAc1mB,KAAK,CAAEsB,KAAM60B,EAAM5wB,GAAIxD,MAAOo0B,EAAM5wB,QAG/CmhB,GAET/kB,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5lB,EAAS,CAAE23B,YAAa,IACxB3sB,EAAKL,EAAkBV,GACvBq+K,EAAoBl9K,EAAqBJ,EAAI,sBACjD,GAAIs9K,EAAkBnpL,OAAQ,CAC5B,IAAI+xB,EAAWo3J,EAAkB,GAC7BC,EAAcr3J,EAAS9vB,IAAI,eAC/BpB,EAAS,CAAE23B,YAAa4wJ,GAE1B,OAAOvoL,GAET6N,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAIsL,EAAW9lB,EAAqBT,EAAkBV,GAAU,sBAAsB,GACtF,OAAOkb,EAAU2B,qBAAqB7c,EAASinB,EAAU,CAAE,YAAe7jB,EAAOsqB,kBAAe5R,KAElGgB,OAAQ,SAAS9c,EAAS2b,GACxB,IAAI8uG,EAAehqH,EAAGT,EAAQ,mBAC9B,QAASyqH,GAAgBmzD,EAAWr4H,cAAcvlD,GAAS9K,OAAS,MAGxE6K,EAAMO,QAAQ9K,KAAK4oL,GAGnBr+K,EAAMO,QAAQ9K,KAAK2lB,EAAazX,MAAM,CACpC3I,GAAI,oBACJ6tD,UAAW1oD,EAAU,cACrB6uB,UAAW,SAAS/uB,EAAS2b,GAC3B,QAASqiK,EAAqBh+K,EAAS2b,OAK3C5b,EAAMO,QAAQ9K,KAAK2lB,EAAamJ,yBAAyBpkB,EAAW,CAClEnF,GAAI,gBACJ2I,MAAOxD,EAAU,8BACjByD,cAAe,KAEf6gB,YAAa,SAASxkB,EAAS2b,GAC7B,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,IAAS,GAE/D,OAAOsiK,EAAkBljL,IAG3B0pB,YAAa,SAASzkB,EAAS8f,EAAYnE,GACzC,IAAIgqC,EAAYq4H,EAAqBh+K,EAAS2b,GAE9C,OAAOT,EAAU2B,qBAAqB7c,EAAS2lD,EAAW7lC,IAG5DhD,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQqiK,EAAqBh+K,EAAS2b,IAGxCqB,SAAU,SAAShd,EAASoD,EAAQuY,GAElC,IAAIgqC,EAAYq4H,EAAqBh+K,EAAS2b,GAE9C,GAAIgqC,EAAW,CAEb,IAAI/gC,EAAUxhB,EAAOrI,GAErB,IAAK6pB,GAA8B,KAAnBA,EAAQghH,OACtB,MAAO,CAAE7qI,GAAI,mCAGf,IAAI0qD,EAAam4H,EAAWr4H,cAAcvlD,GAEtCu+K,EAAoBthK,EAAKwoC,GAAY,SAAS+4H,GAChD,OAAOA,IAAM74H,GAAa64H,EAAEzjL,KAAO6pB,KAGrC,GAAI25J,EACF,MAAO,CAAExjL,GAAI,iDAOrBgF,EAAMO,QAAQ9K,KAAK2lB,EAAa81B,SAAS/wC,EAAW,CAClDnF,GAAI,kBACJ2I,MAAOxD,EAAU,QACjBgc,cAAe,CACb,CAAEplB,KAAM,SAAUS,MAAO,UACzB,CAAET,KAAM,OAAQS,MAAO,QACvB,CAAET,KAAM,UAAWS,MAAO,WAC1B,CAAET,KAAM,OAAQS,MAAO,QACvB,CAAET,KAAM,OAAQS,MAAO,SAEzBoM,cAAe,OACf2Y,gBAAgB,EAEhBnlB,IAAK,SAAS6I,EAAS2b,GACrB,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAEtD,OAAIsiK,EACK,CAAEj9K,KAAMi9K,EAAkBj9K,MAE1B,IAGX4C,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAClDsL,EAAW9lB,EAAqBT,EAAkBV,GAAU,sBAAsB,GAClFygB,EAAW,GAYf,MAV+B,SAA3Bw9J,EAAkBj9K,MAAmC,SAAhBoC,EAAOpC,MAG9Cyf,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASi+K,EAAmB,CAAE76K,YAAQ0Y,KAEjE,YAAhB1Y,EAAOpC,MAAsBi9K,EAAkB9mL,IAAI,QAAU8vB,EAAS9vB,IAAI,gBAC5EspB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASinB,EAAU,CAAE,iBAAenL,KAEnF2E,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASi+K,EAAmB76K,IAElEqd,GAET3D,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQqiK,EAAqBh+K,EAAS2b,OAK1C5b,EAAMO,QAAQ9K,KAAKuoL,EAAmB79K,EAAW,CAC/CnF,GAAI,mBACJ2I,MAAOxD,EAAU,SACjByD,cAAe,SACdq6K,IAGHj+K,EAAMO,QAAQ9K,KAAKuoL,EAAmB79K,EAAW,CAC/CnF,GAAI,0BACJ2I,MAAOxD,EAAU,iBACjByD,cAAe,gBACdq6K,IAIHj+K,EAAMO,QAAQ9K,KAAK2lB,EAAazX,MAAM,CACpC3I,GAAI,gCACJ6tD,UAAW1oD,EAAU,UACrByoD,SAAS,EACT55B,UAAW,SAAS/uB,EAAS2b,GAC3B,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAEtD,OAAOsiK,GAAgD,SAA3BA,EAAkBj9K,SAKlDjB,EAAMO,QAAQ9K,KAAK2lB,EAAamG,MAAMphB,EAAW,CAC/CnF,GAAI,yBACJwpD,OAAQ,CAAErkD,EAAU,MAAOA,EAAU,SACrCmgB,gBAAiB,CAAE,KAAM,QACzB0J,KAAM,SAAS/pB,EAAS2b,GACtB,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAEtD,OAAOsiK,GAAgD,SAA3BA,EAAkBj9K,MAEhDF,YAAa,SAASd,EAAS2b,GAC7B,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAEtD,OAAOiiK,EAAWh4H,cAAcq4H,IAElCz9J,WAAY,SAASxgB,EAAS2b,GAC5B,IAAIsiK,EAAoBD,EAAqBh+K,EAAS2b,GAClD5gB,EAAK+iL,IAELW,EAAYxjK,EAAcc,cAC5B,kBACA,CAAEhhB,GAAIA,EAAIjE,UAAMglB,GAChBpb,EAAkBV,GAClBC,GAGF,OAAOib,EAAU2F,kBAAkB7gB,EAASi+K,EAAmB,SAAU,CAACQ,KAE5Ex9J,cAAe,SAASjhB,EAAS2b,EAAM7Z,GACrC,IAAIm8K,EAAoBD,EAAqBh+K,EAAS2b,GAClD8iK,EAAYR,EAAkB76K,OAAOtB,GAEzC,OAAOoZ,EAAUkG,uBAAuBphB,EAASi+K,EAAmB,SAAU,KAAM,CAACQ,KAEvF39J,cAAe,SAAS9gB,EAASzI,EAAOokB,EAAM7Z,GAC5C,IAAIm8K,EAAoBD,EAAqBh+K,EAAS2b,GAClD8iK,EAAYR,EAAkB76K,OAAOtB,GAGzC,OADAvK,EAAMT,KAAOS,EAAMT,WAAQglB,EACpBZ,EAAU2B,qBAAqB7c,EAASy+K,EAAWlnL,IAE5DylB,SAAU,SAAShd,EAASzI,EAAOokB,EAAM7Z,GAEvC,IAAIm8K,EAAoBD,EAAqBh+K,EAAS2b,GAClD8iK,EAAYR,EAAkB76K,OAAOtB,GAEzC,GAAI28K,EAAW,CAGb,IAAI19J,EAAkBrB,EAAMsB,UAAUy9J,EAAWlnL,EAAMwD,GAAImF,GAE3D,GAAI6gB,EACF,MAAO,CAAEhmB,GAAIgmB,QAOrBhhB,EAAMO,QAAQ9K,KAAK2lB,EAAazX,MAAM,CACpC3I,GAAI,+BACJ6tD,UAAW1oD,EAAU,cACrByoD,SAAS,EACT55B,UAAW,SAAS/uB,EAAS2b,GAC3B,QAASqiK,EAAqBh+K,EAAS2b,OAK3C5b,EAAMO,QAAQ9K,KAAK2lB,EAAamG,MAAMphB,EAAW,CAC/CnF,GAAI,mBACJslB,gBAAiB,CAAE,OAAQ,UAC3BkkC,OAAQ,CAAErkD,EAAU,QAASA,EAAU,WACvCqgB,SAAUrgB,EAAU,kBACpBY,YAAa,SAASd,EAAS2b,GAC7B,IAAIgqC,EAAYq4H,EAAqBh+K,EAAS2b,GAE9C,OAAOiiK,EAAWl4H,eAAeC,IAEnCnlC,WAAY,SAASxgB,EAAS2b,GAE5B,IAAI8E,EAAW,GACXklC,EAAYq4H,EAAqBh+K,EAAS2b,GAC1CyQ,EAAau5B,EAAUv5B,WAEtBA,IAGHA,EAAanR,EAAcc,cAAc,uBAAwB,GAAIrb,EAAkBV,GAAUC,GAEjGwgB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAAS2lD,EAAW,CAAE,WAAcv5B,MAGnF,IAAIsyJ,EAAgBzjK,EAAcc,cAChC,uBACA,CAAEjlB,UAAMglB,EAAWugC,YAAQvgC,GAC3BsQ,EACAnsB,GAKF,OAFAwgB,EAASjrB,KAAK0lB,EAAU2F,kBAAkB7gB,EAASosB,EAAY,cAAe,CAAEsyJ,KAEzEj+J,GAETK,cAAe,SAAS9gB,EAASzI,EAAOokB,EAAM7Z,GAC5C,IAAI6jD,EAAYq4H,EAAqBh+K,EAAS2b,GAC1CgjK,EAAaf,EAAWl4H,eAAeC,GAAW7jD,GAKtD,OAHAvK,EAAMT,KAAOS,EAAMT,WAAQglB,EAC3BvkB,EAAM8kD,OAAS9kD,EAAM8kD,aAAUvgC,EAExBZ,EAAU2B,qBAAqB7c,EAAS2+K,EAAYpnL,IAE7D0pB,cAAe,SAASjhB,EAAS2b,EAAM7Z,GACrC,IAAI2e,EAAW,GACXklC,EAAYq4H,EAAqBh+K,EAAS2b,GAC1CutB,EAAc00I,EAAWl4H,eAAeC,GACxCi5H,EAAoB11I,EAAYpnC,GAgBpC,OAdA2e,EAASjrB,KAAK0lB,EAAUkG,uBACtBphB,EACA2lD,EAAUv5B,WACV,cACA,KACA,CAAEwyJ,KAGuB,IAAvB11I,EAAYh0C,QAGdurB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAAS2lD,EAAW,CAAEv5B,gBAAYtQ,KAG1E2E,GAETsJ,KAAM,SAAS/pB,EAAS2b,GACtB,QAASqiK,EAAqBh+K,EAAS2b,OAK3C5b,EAAMO,QAAQ9K,KAAK2lB,EAAazX,MAAM,CACpC3I,GAAI,+BACJ6tD,UAAW1oD,EAAU,cACrByoD,SAAS,EACT55B,UAAW,SAAS/uB,EAAS2b,GAC3B,QAASqiK,EAAqBh+K,EAAS2b,OAK3C5b,EAAMO,QAAQ9K,KAAKsqB,EAAW9f,EAASC,EAAa,CAClDlF,GAAI,wBACJslB,gBAAiB,CAAE,KAAM,SACzBkkC,OAAQ,CAAErkD,EAAU,MAAOA,EAAU,UACrCkgB,UAAW,SAASpgB,EAAS2b,GAC3B,OAAOqiK,EAAqBh+K,EAAS2b,IAEvCoO,KAAM,SAAS/pB,EAAS2b,GACtB,QAASqiK,EAAqBh+K,EAAS2b,KAExCzb,IApaH,SAAS89K,EAAqBh+K,EAAS2b,GACrC,IAAIiP,EAAWuzJ,EAAgBrzJ,YAAY9qB,EAAS2b,EAAKoP,YAEzD,IAAsB,IAAlBH,EAAS9oB,IAIb,OAAO87K,EAAWp4H,aAAaxlD,EAAS4qB,EAAS9oB,Q,gPCvG/CvJ,EAAUC,iCAEVE,EAAcF,sCACdG,EAAcH,sCACdI,EAAWC,EAAOC,KAAP,UAAeJ,EAAf,YAA8BC,GAAe,QAAQI,SAAS,UAEzEC,EAAQ,CACZwsF,mBAAoB,GACpBq+B,aAAc,GACdz9B,iBAAkB,GAClBy4F,sBAAuB,KACvBl4F,WAAY,GACZm4F,eAAgB,GAChBC,aAAc,GACdC,kBAAmB,GACnBC,mBAAoB,GACpBC,gBAAiB,GACjB53D,cAAe,GACft+D,UAAW,GACXm2H,eAAgB,GAChBC,WAAY,GACZC,oBAAqB,GACrBC,aAAc,GACdC,qBAAsB,GACtBhmE,cAAe,GACfimE,sBAAuB,GACvBC,gBAAiB,GACjBC,mBAAmB,EACnBC,aAAc,GACdC,eAAgB,GAChBC,mBAAmB,EACnBC,UAAW,KACXC,aAAc,KACdC,UAAW,KACXC,aAAc,KACdC,cAAe,KACfC,UAAW,KACXp7F,aAAc,KACdq7F,kBAAmB,GACnB13E,eAAgB,GAChB23E,gBAAiB,GACjBC,aAAc,GACdC,kBAAmB,GACnBC,UAAW,KACXC,WAAY,KACZC,UAAW,GACXC,aAAc,GACdC,gBAAiB,GACjBvuI,gBAAgB,EAChBwuI,eAAe,EACfC,kBAAmB,GACnBC,WAAY,KACZC,iBAAkB,KAClBC,mBAAoB,GACpBC,kBAAmB,GACnBC,oBAAqB,GACrBC,mBAAoB,GACpBC,kBAAkB,EAClBC,kBAAkB,EAClBC,eAAe,GAGXtnL,EAAU,CACdurF,mBAAoB,SAACxsF,GAAD,OAAWA,EAAMwsF,oBACrCq+B,aAAc,SAAC7qH,GAAD,OAAWA,EAAM6qH,cAC/Bz9B,iBAAkB,SAACptF,GAAD,OAAWA,EAAMotF,kBACnCy4F,sBAAuB,SAAC7lL,GAAD,OAAWA,EAAM6lL,uBACxCl4F,WAAY,SAAC3tF,GAAD,OAAWA,EAAM2tF,YAC7Bm4F,eAAgB,SAAC9lL,GAAD,OAAWA,EAAM8lL,gBACjCC,aAAc,SAAC/lL,GAAD,OAAWA,EAAM+lL,cAC/BE,mBAAoB,SAACjmL,GAAD,OAAWA,EAAMimL,oBACrC33D,cAAe,SAACtuH,GAAD,OAAWA,EAAMsuH,eAChCt+D,UAAW,SAAChwD,GAAD,OAAWA,EAAMgwD,WAC5Bm2H,eAAgB,SAACnmL,GAAD,OAAWA,EAAMmmL,gBACjCC,WAAY,SAACpmL,GAAD,OAAWA,EAAMomL,YAC7B7lE,cAAe,SAACvgH,GAAD,OAAWA,EAAMugH,eAChCimE,sBAAuB,SAACxmL,GAAD,OAAWA,EAAMwmL,uBACxCC,gBAAiB,SAACzmL,GAAD,OAAWA,EAAMymL,iBAClCC,kBAAmB,SAAC1mL,GAAD,OAAWA,EAAM0mL,mBACpCE,eAAgB,SAAC5mL,GAAD,OAAWA,EAAM4mL,gBACjCI,UAAW,SAAChnL,GAAD,OAAWA,EAAMgnL,WAC5BC,aAAc,SAACjnL,GAAD,OAAWA,EAAMinL,cAC/BC,cAAe,SAAClnL,GAAD,OAAWA,EAAMknL,eAChCH,aAAc,SAAC/mL,GAAD,OAAWA,EAAM+mL,cAC/Bh7F,aAAc,SAAC/rF,GAAD,OAAWA,EAAM+rF,cAC/Bq7F,kBAAmB,SAACpnL,GAAD,OAAWA,EAAMonL,mBACpC13E,eAAgB,SAAC1vG,GAAD,OAAWA,EAAM0vG,gBACjCy3E,UAAW,SAACnnL,GAAD,OAAWA,EAAMmnL,WAC5BI,kBAAmB,SAACvnL,GAAD,OAAWA,EAAMunL,mBACpCC,UAAW,SAACxnL,GAAD,OAAWA,EAAMwnL,WAC5BK,cAAe,SAAC7nL,GAAD,OAAWA,EAAM6nL,eAChCC,kBAAmB,SAAC9nL,GAAD,OAAWA,EAAM8nL,mBACpCC,WAAY,SAAC/nL,GAAD,OAAWA,EAAM+nL,YAC7BC,iBAAkB,SAAChoL,GAAD,OAAWA,EAAMgoL,kBACnCC,mBAAoB,SAACjoL,GAAD,OAAWA,EAAMioL,oBACrCC,kBAAmB,SAACloL,GAAD,OAAWA,EAAMkoL,mBACpCC,oBAAqB,SAACnoL,GAAD,OAAWA,EAAMmoL,qBACtCC,mBAAoB,SAACpoL,GAAD,OAAWA,EAAMooL,oBACrCC,iBAAkB,SAACroL,GAAD,OAAWA,EAAMqoL,kBACnCC,iBAAkB,SAACtoL,GAAD,OAAWA,EAAMsoL,kBACnCC,cAAe,SAACvoL,GAAD,OAAWA,EAAMuoL,gBAG5BrnL,EAAU,CAEdsnL,aAFc,YAES,IAATpnL,EAAS,EAATA,OAEZ,OAAOC,IAAMlD,IAAIoB,EAAU,6GAA+GgC,OAAMvB,MAAM2F,YAAa,CAACrE,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACvQqE,EAAO,YAAarE,EAAOrB,SAC1BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B8mL,gBAVc,YAUY,IAATrnL,EAAS,EAATA,OAEf,OAAOC,IAAMlD,IAAIoB,EAAU,sBAAuB,CAAC+B,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAGtJ,IADA,IAAIomG,EAAY,GACRnnG,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IACjCe,EAAOrB,KAAKM,GAAG6C,IAAIo6C,SAAS,eAC9BkqD,EAAU3mG,KAAKO,EAAOrB,KAAKM,IAK/B,IADA,IAAI4qL,EAAiB,GACb1pL,EAAI,EAAGA,EAAIimG,EAAUjnG,OAAQgB,IACN,IAA1B0pL,EAAe1qL,OAChB0qL,EAAezjF,EAAUjmG,GAAG2B,KAAOskG,EAAUjmG,GAAG+sB,QAE7C28J,EAAezjF,EAAUjmG,GAAG2B,KAC1BskG,EAAUjmG,GAAG+sB,QAAU28J,EAAezjF,EAAUjmG,GAAG2B,OACpD+nL,EAAezjF,EAAUjmG,GAAG2B,KAAOskG,EAAUjmG,GAAG+sB,SAGlD28J,EAAezjF,EAAUjmG,GAAG2B,KAAOskG,EAAUjmG,GAAG+sB,QAKtD7oB,EAAO,kBAAmBwlL,GAC1BxlL,EAAO,gBAAiB+hG,EAAUjnG,QAClCkF,EAAO,gBAAiB+hG,MACvBzhG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B+mL,cA3Cc,WA2CU14H,GAAW,IAApB5uD,EAAoB,EAApBA,OAEb,OAAOC,IAAMlD,IAAIoB,EAAU,uBAAyBywD,EAAY,OAAQ,CAAC1uD,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC5KqE,EAAO,cAAerE,EAAOrB,KAAKitL,cACjCjnL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BinL,oBAnDc,YAmD2B,IAApBtxK,EAAoB,EAApBA,UAAWlW,EAAS,EAATA,OAC1BwsB,EAAMplB,KAEV,OAAOnH,IAAMlD,IAAIoB,EAAU,oBAAqB,CAAC+B,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACpJ,IAAMoF,EAAa,GACnB,GAAGpF,EAAOrB,KAAKQ,OAAS,EACtB,IAAI,IAAIF,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IACrCmG,EAAW3F,KACT6E,IAAMlD,IAAIoB,EAAU,2CAA6CxC,EAAOrB,KAAKM,GAAG+pL,aAAc,CAACzkL,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAe,GAAI,OAAI,IAAIC,SAAQ,SAAAC,GAAO,OAC7NA,EAAQF,EAAK9G,KAAK,GAAGoC,aAK7B2E,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAE3BA,EAAIC,SAAQ,SAASC,EAAMC,GAEzB,GAAqC,MAAlChG,EAAOrB,KAAKqH,GAAO2xB,YAAqB,CACzC,IAAIzyB,EAAU,CACZ,WAAclF,EAAOrB,KAAKqH,GAAOhB,GACjC,UAAahF,EAAOrB,KAAKqH,GAAOgjL,cAElCn4J,EAAIrpB,SAAS,YAAatC,GAASR,MAAM,WACvCmsB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKqH,GAAOhB,IAAIN,MAAM,WACrDy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,SAAUuU,EAAU9X,QAAQwnL,sBAI5D9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,SAAUhG,EAAOrB,KAAKqH,GAAO2xB,aAE3DwK,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,cAAeD,MAG7C1B,EAAO,0BAA2BrE,EAAOrB,KAAKQ,QAC9CkF,EAAO,oBAAqBrE,EAAOrB,YAGpCgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAGrBirF,aA7FQ,WA6FiC3qF,GAAS,6KAApCqV,EAAoC,EAApCA,UAAWtX,EAAyB,EAAzBA,MAAOoB,EAAkB,EAAlBA,OAChC4rF,EAAY/qF,EAAQ+qF,UACpB67F,EAAY,CACd,UAAa,CACX,YAAe,CAAE,MAAS5mL,EAAQ0D,YAAa,KAAQ,UACvD,oBAAuB,CAAE,MAAS1D,EAAQwgC,oBAAqB,KAAQ,UACvE,iBAAoB,CAAE,MAASxgC,EAAQygC,iBAAkB,KAAQ,UACjE,MAAS,CAAE,MAASzgC,EAAQoD,MAAO,KAAQ,QAC3C,OAAU,CAAE,MAASpD,EAAQsV,OAAQ,KAAQ,SAE/C,uBAAyB,EACzB,YAAevX,EAAMmnL,WAX+B,SAehD,EAAK5iL,SAAS,iBAAkBtC,EAAQpD,KAAK4C,MAAM,WACvD,GAAG6V,EAAUmoB,OAAO27C,YAAY78E,MAG9B,IAFA,IAAI68E,EAAcprE,KAAKC,MAAMqH,EAAUmoB,OAAO27C,YAAY78E,OAElDvC,EAAI,EAAGA,EAAIo/E,EAAYl/E,OAAQF,IAAK,CAC1C,IAAIimH,EAAU7mC,EAAYp/E,GAAGimH,QACzBW,EAAWxnC,EAAYp/E,GAAG4mH,SAC1B3B,EAAU7lC,EAAYp/E,GAAGilH,QAEf,WAAXA,IACD2B,EAAWnzE,SAASmzE,IAGR,WAAX3B,IAEC2B,EADa,QAAZA,GAOS,QAAX3B,IACD2B,EAAW5yG,KAAKkL,UAAU0nG,IAG5BimE,EAAU/5K,UAAUmzG,GAAW,CAAE,MAASW,EAAU,KAAQ3B,GAIhE,OAAO5/G,IAAMqC,KAAKnE,EAAU,2BAA6B0C,EAAQpD,IAAM,6BAA8BgqL,EAAW,CAACvnL,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACpN,IAAIkF,EAAU,CACZ,WAAclF,EAAOrB,KAAKqG,GAC1B,UAAahF,EAAOrB,KAAKqqL,aACzB,UAAa/4F,GAEf,EAAKzoF,SAAS,YAAatC,GAC3Bb,EAAO,eAAgBrE,EAAOrB,SAC7BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,UArD2B,8CAyDxDmnL,qBAtJc,WAsJwB7mL,GAAS,WAAzBjC,EAAyB,EAAzBA,MAAOoB,EAAkB,EAAlBA,OACvB4rF,EAAY/qF,EAAQ+qF,UACxB,OAAO3rF,IAAMqC,KAAKnE,EAAU,2BAA6B0C,EAAQpD,IAAM,6BAA8B,CAAE61B,YAAa10B,EAAMmnL,WAAa,CAAC7lL,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAClO,IAAIkF,EAAU,CACZ,WAAclF,EAAOrB,KAAKqG,GAC1B,UAAahF,EAAOrB,KAAKqqL,aACzB,UAAa/4F,GAEf,EAAKzoF,SAAS,oBAAqBtC,GACnCb,EAAO,eAAgBrE,EAAOrB,SAC7BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BonL,sBApKc,WAoKkB9mL,GAAS,WAAlBb,EAAkB,EAAlBA,OACrB,OAAOC,IAAMkC,OAAOhE,EAAU,qBAAuB0C,EAAQF,GAAK,gDAAiD,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAmB,GACtM,KAAdA,EAAIS,SACL,EAAKkB,SAAS,iBAAkBtC,EAAQF,IACxCX,EAAO,sBAAuBa,EAAQF,QAEvCL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqnL,8BA9Kc,WA8K0B/mL,GAAS,IAAlBb,EAAkB,EAAlBA,OAC7B,OAAOC,IAAMkC,OAAOhE,EAAU,6BAA+B0C,EAAQF,GAAI,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAmB,GAC5J,KAAdA,EAAIS,QACLjC,EAAO,sBAAuBa,EAAQF,OAEvCL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BsnL,kCAvLc,WAuL8BhnL,GAG1C,IAHmD,IAAlBb,EAAkB,EAAlBA,OAC3Be,EAAa,GACb2tB,EAAQ7tB,EAAQ6tB,MACd9zB,EAAI,EAAGA,EAAI8zB,EAAM5zB,OAAQF,IAC/BmG,EAAW3F,KACT6E,IAAMkC,OAAOhE,EAAU,6BAA+BuwB,EAAM9zB,GAAG+F,GAAI,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAe,GAAI,OAAI,IAAIC,SAAQ,SAAAC,GAAO,OAClMA,EAAQF,EAAKa,eAInBZ,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAC3B,IAAI6a,GAAU,EACd7a,EAAIC,SAAQ,SAASC,GACR,KAARA,IACD2a,GAAU,MAIdrc,EAAO,gBAAiBqc,OAG5ByrK,sBA5Mc,WA4M6BjnL,GAAS,WAA7BqV,EAA6B,EAA7BA,UAAWlW,EAAkB,EAAlBA,OAC5B2a,EAAW,yQAcf,OAbG9Z,EAAQgqG,gBACTlwF,GAAY,kBAAoBotK,mBAAmBlnL,EAAQgqG,gBAE1DhqG,EAAQqqG,eACTvwF,GAAY,iBAAmBotK,mBAAmBlnL,EAAQqqG,eAEzDrqG,EAAQwqG,iBACT1wF,GAAY,mBAAqBotK,mBAAmBlnL,EAAQwqG,iBAE3DxqG,EAAQ2qG,gBACT7wF,GAAY,kBAAoBotK,mBAAmBlnL,EAAQ2qG,gBAGtDvrG,IAAMlD,IAAIoB,EAAUwc,EAAU,CAACza,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzI,IAAIqsL,EAAY,GAChB,GAAGrsL,EAAOrB,KAAKQ,OAAS,EAAG,CACzB,IADyB,eACjBF,GACN,IAAIe,EAAOrB,KAAKM,GAAG2zG,qBAAqB12D,SAAS,cAAe,CAC7B,MAA9Bl8C,EAAOrB,KAAKM,GAAG04B,YAChB,EAAKnwB,SAAS,YAAaxH,EAAOrB,KAAKM,GAAGqtL,uBAAuB5nL,MAAM,WACrEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUsb,EAAU9X,QAAQwnL,cAGtD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUe,EAAOrB,KAAKM,GAAG04B,aAGnD,IAAI40J,EAAQ,IAAI37J,KAAK5wB,EAAOrB,KAAKM,GAAG8zG,WACpC5wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAa,IAAIw5E,KAAKC,eAAe,QAC3D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOszG,IACZ,IAAIC,EAAQ,IAAI57J,KAAK5wB,EAAOrB,KAAKM,GAAG+zG,SACjCw5E,EAAMxpL,WAAWk5C,SAAS,QAC3B/Z,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAEnCkjC,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOuzG,IAGZH,EAAU5sL,KAAKO,EAAOrB,KAAKM,MArCzBA,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,EAApCA,GAwCRoF,EAAO,sBAAuBgoL,QAE9BhoL,EAAO,sBAAuB,OAE/BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B6nL,qBA9Qc,WA8QiBvnL,GAAS,IAAlBb,EAAkB,EAAlBA,OACpB,OAAOC,IAAMlD,IAAIoB,EAAU,gDAAkD0C,EAAQwnL,kBAAmB,CAACnoL,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACxL,KAAjBA,EAAOsG,QACRjC,EAAO,qBAAsBrE,EAAOrB,SAErCgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B+nL,uBAvRc,WAuRmB3nL,GAAI,IAAbX,EAAa,EAAbA,OACtB,OAAOC,IAAMkC,OAAOhE,EAAU,8BAAgCwC,EAAI,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAClJ,KAAjBA,EAAOsG,QACRjC,EAAO,mBAAoBW,MAE5BL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BgoL,cAhSc,WAgSU/6E,GAAM,IAAfxtG,EAAe,EAAfA,OACb,OAAOC,IAAMqC,KAAKnE,EAAU,qBAAsBqvG,EAAM,CAACttG,QAAS,CAAC,eAAgB,sBAAuB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC3I,KAAjBA,EAAOsG,QACRjC,EAAO,mBAAoBrE,EAAOrB,MAClC0F,EAAO,sBAAsB,IAE7BA,EAAO,sBAAsB,MAE9BM,OAAM,SAAAC,GAEP,MADAP,EAAO,sBAAsB,GACvB,IAAIQ,MAAJ,cAAiBD,QAG3BioL,iBA7Sc,WA6Sa3nL,GAAS,WAAlBb,EAAkB,EAAlBA,OAChB,OAAOC,IAAMkC,OAAOhE,EAAU,eAAiB0C,EAAQF,GAAK,6DAA8D,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC1M,KAAjBA,EAAOsG,SACR,EAAKkB,SAAS,oBAAqBtC,EAAQ+tD,WAC3C5uD,EAAO,wBAAyBa,EAAQF,QAEzCL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BkoL,eAvTc,WAuTW5nL,GAAS,IAAlBb,EAAkB,EAAlBA,OACV1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,OAAQ,KAAQ,UACrC,KAAQ,CAAE,MAASuG,EAAQnE,KAAM,KAAQ,UACzC,YAAe,CAAE,MAASmE,EAAQsa,YAAa,KAAQ,UACvD,WAAc,CAAE,MAASta,EAAQo7E,WAAY,KAAQ,UACrD,IAAO,CAAE,MAASp7E,EAAQ8kG,IAAK,KAAQ,OACvC,QAAW,CAAE,MAAS9kG,EAAQgoB,QAAS,KAAQ,WAC/C,WAAc,CAAE,MAAShoB,EAAQ6nL,WAAY,KAAQ,QACrD,SAAY,CAAE,MAAS7nL,EAAQi/G,SAAU,KAAQ,WACjD,SAAY,CAAE,MAASj/G,EAAQ26B,SAAU,KAAQ,WAEnD,uBAAyB,GAG3B,OAAOv7B,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzLqE,EAAO,gBAAiBrE,EAAOrB,SAC9BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BooL,uBA9Uc,WA8UmB9nL,GAAS,IAAlBb,EAAkB,EAAlBA,OAClB1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,OAAQ,KAAQ,UACrC,KAAQ,CAAE,MAASuG,EAAQnE,KAAM,KAAQ,UACzC,YAAe,CAAE,MAASmE,EAAQsa,YAAa,KAAQ,UACvD,WAAc,CAAE,MAASta,EAAQo7E,WAAY,KAAQ,UACrD,IAAO,CAAE,MAASp7E,EAAQ8kG,IAAK,KAAQ,OACvC,QAAW,CAAE,MAAS9kG,EAAQgoB,QAAS,KAAQ,WAC/C,WAAc,CAAE,MAAShoB,EAAQ6nL,WAAY,KAAQ,QACrD,SAAY,CAAE,MAAS7nL,EAAQi/G,SAAU,KAAQ,WACjD,SAAY,CAAE,MAASj/G,EAAQ26B,SAAU,KAAQ,WAEnD,uBAAyB,GAG3B,OAAOv7B,IAAMqC,KAAKzB,EAAQ0X,OAAS,8DAA+Dje,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC5MqE,EAAO,yBAA0BrE,EAAOrB,SACvCgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqoL,iBArWc,YAqWa,IAAT5oL,EAAS,EAATA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,QAAW,CAAE,MAAS,EAAG,KAAQ,YAEnC,uBAAyB,GAG3B,OAAO2F,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzL,IAAIktL,EAASj6K,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUm7K,OAAO1rL,OACrD6C,EAAO,kBAAmB6oL,MACzBvoL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAGrBuoL,yBAtXQ,YAsXsC,uKAApB9oL,EAAoB,EAApBA,OAAQkW,EAAY,EAAZA,UAAY,SAC5C,EAAK/S,SAAS,uBAAuB9C,MAAM,WAY/C,IAXA,IAAMU,EAAa,GACfgoL,EAAQ7yK,EAAUioB,MAAMr7B,WACxBkmL,EAAU,GACV1uL,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,QAAW,CAAE,MAAS,EAAG,KAAQ,YAEnC,uBAAyB,GAEnBM,EAAI,EAAGA,EAAImuL,EAAMjuL,OAAQF,IAC/BmG,EAAW3F,KACT6E,IAAMqC,KAAKymL,EAAMnuL,GAAGoI,IAAM,8DAA+D1I,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAAM,OAAI,IAAI0F,SAAQ,SAAAC,GAAO,OAChOA,EAAQsN,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUm7K,OAAO1rL,eAItDkE,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAC3BA,EAAIC,SAAQ,SAASC,EAAMC,GACzBD,EAAK,UAAYqnL,EAAMpnL,GAAOsB,YAC9B+lL,EAAQ5tL,KAAKsG,MAGf1B,EAAO,2BAA4BgpL,SA1BW,8CA8BpDC,mBApZc,WAoZepoL,GAAS,IAAlBb,EAAkB,EAAlBA,OACd1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,MAAO,KAAQ,UACpC,SAAY,CAAE,MAASuG,EAAQ26B,SAAU,KAAQ,UACjD,WAAc,CAAE,MAAS36B,EAAQo7E,WAAY,KAAQ,UACrD,QAAW,CAAE,MAASp7E,EAAQgoB,QAAS,KAAQ,YAEjD,uBAAyB,GAG3B,OAAO5oB,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzL,IAAIgqG,EAAM/2F,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUi4F,IAAIxoG,OAC3CurL,EAAa95K,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUg7K,WAAWvrL,QACxE6C,EAAO,oBAAqB2lG,GAC5B3lG,EAAO,qBAAsB0oL,MAC5BpoL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B8oH,iBAzac,WAyaa6/D,GAAO,IAAhBlpL,EAAgB,EAAhBA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,MAAS,CAAE,MAAS4uL,EAAO,KAAQ,WACnC,QAAW,CAAE,MAAS,EAAG,KAAQ,aAIrC,OAAOjpL,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,sBAAuBkpL,MAC7B5oL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B4oL,iBAzbc,WAybatoL,GAAS,IAAlBb,EAAkB,EAAlBA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,MAAO,KAAQ,UACnC,OAAU,CAAE,MAAS,gBAAiB,KAAQ,UAC9C,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,QAAW,CAAE,MAASp7E,EAAQgoB,QAAS,KAAQ,YAEjD,uBAAyB,GAG3B,OAAO5oB,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,uBAAuB,MAC7BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B6oL,cA1cc,WA0cUzoL,GAAI,IAAbX,EAAa,EAAbA,OACb,OAAOC,IAAMlD,IAAIoB,EAAU,uBAAyBwC,EAAK,OAAQ,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACjJ,KAAjBA,EAAOsG,QACRjC,EAAO,cAAerE,EAAOrB,KAAKitL,cAEnCjnL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B8oL,oBAndc,WAmdgB1oL,GAAI,IAAbX,EAAa,EAAbA,OACnB,OAAOC,IAAMlD,IAAIoB,EAAU,+EAAiFwC,EAAI,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAChM,KAAjBA,EAAOsG,QACRjC,EAAO,oBAAqBrE,EAAOrB,SAEpCgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BmlL,UA5dc,WA4dM7kL,GAAS,IAAlBb,EAAkB,EAAlBA,OACL1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,OAAQ,KAAQ,UACrC,WAAc,CAAE,MAASuG,EAAQ0rF,WAAY,KAAQ,UACrD,UAAa,CAAE,MAAS1rF,EAAQ+tD,UAAW,KAAQ,UACnD,UAAa,CAAE,MAAS/tD,EAAQ+qF,UAAW,KAAQ,WAErD,uBAAyB,GAG3B,OAAO3rF,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,cAAea,EAAQ0rF,YAC9BvsF,EAAO,iBAAkBa,EAAQ+qF,cAChCtrF,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B+oL,kBA/ec,WA+eczoL,GAAS,IAAlBb,EAAkB,EAAlBA,OACb1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,OAAQ,KAAQ,UACrC,WAAc,CAAE,MAASuG,EAAQ0rF,WAAY,KAAQ,UACrD,UAAa,CAAE,MAAS1rF,EAAQ+tD,UAAW,KAAQ,UACnD,UAAa,CAAE,MAAS/tD,EAAQ+qF,UAAW,KAAQ,WAErD,uBAAyB,GAG3B,OAAO3rF,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,WAChLL,EAAO,cAAea,EAAQ0rF,YAC9BvsF,EAAO,iBAAkBa,EAAQ+qF,cAChCtrF,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BgpL,iBAlgBc,WAkgBaruK,GAAQ,IAAjBlb,EAAiB,EAAjBA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,OAAU,CAAE,MAAS4gB,EAAQ,KAAQ,YAEvC,uBAAyB,GAG3B,OAAOjb,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAChLqE,EAAO,iBAAkBrE,EAAOrB,KAAKoT,UAAUk+E,UAAUzuF,UACxDmD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BipL,iBAlhBc,WAkhBaC,GAAS,IAAlBzpL,EAAkB,EAAlBA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,QAAW,CAAE,MAASmvL,EAAS,KAAQ,WAEzC,uBAAyB,GAG3B,OAAOxpL,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAChLqE,EAAO,iBAAkBrE,EAAOrB,KAAKoT,UAAUg8K,WAAWvsL,UACzDmD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqlL,UAliBc,WAkiBMr5F,GAAY,IAArBvsF,EAAqB,EAArBA,OACL1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,MAAO,KAAQ,UACpC,WAAc,CAAE,MAASiyF,EAAY,KAAQ,WAE/C,uBAAyB,GAG3B,OAAOtsF,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAChLqE,EAAO,cAAerE,EAAOrB,KAAKoT,UAAUwN,OAAO/d,OACnD6C,EAAO,iBAAkBrE,EAAOrB,KAAKoT,UAAUk+E,UAAUzuF,UACxDmD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BopL,aAnjBc,YAmjBS,IAAT3pL,EAAS,EAATA,OACR1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,SAAU,KAAQ,WAEzC,uBAAyB,GAG3B,OAAO2F,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzLqE,EAAO,cAAerE,EAAOrB,KAAKoT,UAAUq4K,UAAU5oL,UACrDmD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqpL,cAlkBc,WAkkBU/oL,GAAS,IAAlBb,EAAkB,EAAlBA,OACT1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,WAAc,CAAE,MAASuG,EAAQ0rF,WAAY,KAAQ,UACrD,OAAU,CAAE,MAAS1rF,EAAQgpL,OAAQ,KAAQ,WAC7C,OAAU,CAAE,MAAShpL,EAAQqa,OAAQ,KAAQ,UAC7C,OAAU,CAAE,MAASra,EAAQ+oG,OAAQ,KAAQ,UAC7C,SAAY,CAAE,MAAS/oG,EAAQyoG,SAAU,KAAQ,YAIrD,OAAOrpG,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,aAAca,EAAQgpL,WAC5BvpL,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BupL,cArlBc,WAqlBUjpL,GAAS,IAAlBb,EAAkB,EAAlBA,OACT1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,WAAc,CAAE,MAASuG,EAAQ0rF,WAAY,KAAQ,UACrD,UAAa,CAAE,MAAS1rF,EAAQ+tD,UAAW,KAAQ,UACnD,OAAU,CAAE,MAAS/tD,EAAQqa,OAAQ,KAAQ,UAC7C,OAAU,CAAE,MAASra,EAAQ+oG,OAAQ,KAAQ,UAC7C,SAAY,CAAE,MAAS/oG,EAAQyoG,SAAU,KAAQ,YAIrD,OAAOrpG,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,aAAc,cACpBM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BwpL,gBAxmBc,WAwmBYlpL,GAAS,IAAlBb,EAAkB,EAAlBA,OACX1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,cAAe,KAAQ,UAC5C,OAAU,CAAE,MAASuG,EAAQqa,OAAQ,KAAQ,WAC7C,UAAa,CAAE,MAASra,EAAQ+qF,UAAW,KAAQ,WAErD,uBAAyB,GAG3B,OAAO3rF,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,iBAAkBa,EAAQ+qF,cAChCtrF,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BypL,eAznBc,WAynBWnpL,GAAS,IAAlBb,EAAkB,EAAlBA,OACV1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,iBAAkB,KAAQ,UAC/C,WAAc,CAAE,MAASuG,EAAQ0rF,WAAY,KAAQ,UACrD,OAAU,CAAE,MAAS1rF,EAAQgpL,OAAQ,KAAQ,WAC7C,OAAU,CAAE,MAAShpL,EAAQqa,OAAQ,KAAQ,UAC7C,OAAU,CAAE,MAASra,EAAQ+oG,OAAQ,KAAQ,UAC7C,SAAY,CAAE,MAAS/oG,EAAQyoG,SAAU,KAAQ,YAIrD,OAAOrpG,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,gBAAiB,cACvBM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B0pL,eA5oBc,WA4oBW19F,GAAY,IAArBvsF,EAAqB,EAArBA,OACV1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,aAAc,KAAQ,UAC3C,WAAc,CAAE,MAASiyF,EAAY,KAAQ,YAIjD,OAAOtsF,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,oBAAqB,cAC3BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B2pL,kBA3pBc,WA2pBct7H,GAAW,IAApB5uD,EAAoB,EAApBA,OACb1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,oBAAqB,KAAQ,UAClD,UAAa,CAAE,MAASs0D,EAAW,KAAQ,YAI/C,OAAO3uD,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACzLL,EAAO,oBAAqB,cAC3BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B4pL,iBA1qBc,WA0qBatpL,GAAS,IAAlBb,EAAkB,EAAlBA,OACZ1F,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,YAAa,KAAQ,UACzC,UAAa,CAAE,MAASuG,EAAQ+tD,UAAW,KAAQ,WACnD,WAAc,CAAE,MAAS/tD,EAAQo7E,WAAY,KAAQ,UACrD,UAAa,CAAE,MAASp7E,EAAQs7B,UAAW,KAAQ,WAErD,uBAAyB,GAE3B,OAAOl8B,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzL,IAAIma,EAAU,CACZ,cAAiBna,EAAOrB,KAAKoT,UAAU+4K,cAActpL,MACrD,kBAAqBxB,EAAOrB,KAAKoT,UAAUg5K,kBAAkBvpL,OAE/D6C,EAAO,qBAAsB8V,MAC5BxV,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B6pL,UA9rBc,WA+rBZ,IAAI9vL,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,YAAa,KAAQ,UACzC,UAAa,CAAE,MAAS,EAAG,KAAQ,WACnC,aAAgB,CAAE,MAAS6F,OAAMvB,MAAM2F,YAAa,KAAQ,UAC5D,UAAa,CAAE,MAAS,YAAa,KAAQ,WAE/C,uBAAyB,GAE3B,OAAOtE,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,eAExLC,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqoH,aA9sBc,WA8sBS/nH,GAAS,WAAlBb,EAAkB,EAAlBA,OAER1F,EAAO,CACT,0BAA6BuG,EAAQwpL,mBACrC,0BAA6BxpL,EAAQypL,mBACrC,qBAAuB,GAEzB,OAAOrqL,IAAMqC,KAAKnE,EAAU,sBAAuB7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAkqL,GAE7J,IAAIC,EAAgB,CAClB,cAAiBD,EAAKjwL,KACtB,mBAAsBuG,EAAQsqH,iBAQhC,OAAOlrH,IAAMqC,KAAKnE,EAAU,qBAAsBqsL,EAAe,CAACtqL,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACrKL,EAAO,qBAAqB,GAG5B,IAAIyqL,EAAc77K,KAAKkL,UAAUjZ,EAAQsqH,iBACzCs/D,EAAcA,EAAYp6K,QAAQ,MAAO,KACzCo6K,EAAcA,EAAYp6K,QAAQ,MAAO,KACzC,IAAIsrE,EAAS,sCAAwC96E,EAAQypL,mBAAqB,0BAA4BG,EAC1GvxG,EAAY,CACd,OAAU,EACV,OAAUyC,GAEZ,EAAKx4E,SAAS,kBAAmB+1E,MAChC54E,OAAM,SAAAC,GAEP,MADAP,EAAO,qBAAqB,GACtB,IAAIQ,MAAJ,cAAiBD,UAExBD,OAAM,SAAAC,GAEP,MADAP,EAAO,qBAAqB,GACtB,IAAIQ,MAAJ,cAAiBD,QAG3B+oH,aAvvBc,WAuvBSzoH,GAAS,IAAlBb,EAAkB,EAAlBA,OACR6gH,EAAUhgH,EAAQggH,QAClBW,EAAW3gH,EAAQ2gH,SAED,WAAnB3gH,EAAQg/G,UAEP2B,EADa,QAAZA,GAOiB,QAAnB3gH,EAAQg/G,UACT2B,EAAW5yG,KAAKkL,UAAU0nG,IAG5B,IAAI,IAAI5mH,EAAI,EAAGA,EAAIiG,EAAQsqH,gBAAgBrwH,OAAQF,IAAK,CACtD,IAAIN,EAAO,CACT,cAAiB,IAGnBA,EAAKowL,cAAc7pE,GAAW,CAAE,MAASW,EAAU,KAAQ3gH,EAAQg/G,SAEnE5/G,IAAMqC,KAAKnE,EAAU,qBAAuB0C,EAAQsqH,gBAAgBvwH,GAAK,aAAcN,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC7K,KAAjBA,EAAOsG,QACRjC,EAAO,mBAAmB,MAE3BM,OAAM,SAAAC,GAEP,MADAP,EAAO,mBAAmB,GACpB,IAAIQ,MAAJ,cAAiBD,UAMzBiE,EAAY,CAChBmmL,UADgB,SACN/rL,EAAOiC,GACfjC,EAAMwsF,mBAAqBvqF,GAE7B+pL,cAJgB,SAIFhsL,EAAOiC,GACnBjC,EAAM6qH,aAAe5oH,GAEvBgqL,cAPgB,SAOFjsL,EAAOiC,GACnBjC,EAAM+rF,aAAe9pF,GAEvBiqL,kBAVgB,SAUElsL,EAAOiC,GACvBjC,EAAMotF,iBAAmBnrF,GAE3BkqL,wBAbgB,SAaQnsL,EAAOiC,GAC7BjC,EAAM6lL,sBAAwB5jL,GAEhCmqL,aAhBgB,SAgBHpsL,EAAOiC,GAClBjC,EAAM2tF,WAAa1rF,EAAQF,GAC3B/B,EAAM+lL,aAAe9jL,EAAQ8jL,cAE/BsG,qBApBgB,SAoBKrsL,EAAOiC,GAC1BjC,EAAM+lL,aAAe9jL,GAEvBqqL,mBAvBgB,SAuBGtsL,EAAOiC,GACxBjC,EAAM2tF,WAAa1rF,GAErBsqL,wBA1BgB,SA0BQvsL,EAAOiC,GAC7BjC,EAAM8lL,eAAiB7jL,GAEzBuqL,oBA7BgB,SA6BIxsL,EAAOiC,GACzBjC,EAAMgmL,kBAAoB/jL,GAE5BwqL,oBAhCgB,SAgCIzsL,EAAOiC,GACzBjC,EAAMimL,mBAAqBhkL,GAE7ByqL,iBAnCgB,SAmCC1sL,EAAOiC,GACtBjC,EAAMkmL,gBAAkBjkL,GAE1B0qL,sBAtCgB,SAsCM3sL,EAAOiC,GAC3BjC,EAAMsuH,cAAgBrsH,GAExB2qL,kBAzCgB,SAyCE5sL,EAAOiC,GACvBjC,EAAMgwD,UAAY/tD,GAEpB4qL,uBA5CgB,SA4CO7sL,EAAOiC,GAC5BjC,EAAMmmL,eAAiBlkL,GAEzB6qL,YA/CgB,SA+CJ9sL,EAAOiC,GACjBjC,EAAMomL,WAAankL,GAErB8qL,gBAlDgB,SAkDA/sL,EAAOiC,GACrBjC,EAAMugH,cAAgBt+G,GAExB+qL,yBArDgB,SAqDShtL,EAAOiC,GAC9BjC,EAAMwmL,sBAAwBvkL,GAEhCgrL,sBAxDgB,SAwDMjtL,EAAOiC,GAC3BjC,EAAMqmL,oBAAsBpkL,GAE9BirL,cA3DgB,SA2DFltL,EAAOiC,GACnBjC,EAAMsmL,aAAerkL,GAEvBkrL,uBA9DgB,SA8DOntL,EAAOiC,GAC5BjC,EAAMumL,qBAAuBtkL,GAE/BmrL,kBAjEgB,SAiEEptL,EAAOiC,GACvBjC,EAAMymL,gBAAkBxkL,GAE1BorL,mBApEgB,SAoEGrtL,EAAOiC,GACxBjC,EAAM0mL,kBAAoBzkL,GAE5BqrL,oBAvEgB,SAuEIttL,EAAOiC,GACzBjC,EAAM2mL,aAAe1kL,GAEvBsrL,gBA1EgB,SA0EAvtL,EAAOiC,GACrBjC,EAAM4mL,eAAiB3kL,GAEzBurL,oBA7EgB,SA6EIxtL,EAAOiC,GACzBjC,EAAM6mL,kBAAoB5kL,GAE5BwrL,YAhFgB,SAgFJztL,EAAOiC,GACjBjC,EAAM8mL,UAAY7kL,GAEpByrL,eAnFgB,SAmFD1tL,EAAOiC,GACpBjC,EAAM+mL,aAAe9kL,GAEvB0rL,YAtFgB,SAsFJ3tL,EAAOiC,GACjBjC,EAAMgnL,UAAY/kL,GAEpB2rL,eAzFgB,SAyFD5tL,EAAOiC,GACpBjC,EAAMinL,aAAehlL,GAEvB4rL,eA5FgB,SA4FD7tL,EAAOiC,GACpBjC,EAAMknL,cAAgBjlL,GAExB6rL,YA/FgB,SA+FJ9tL,EAAOiC,GACjBjC,EAAMmnL,UAAYllL,GAEpB8rL,WAlGgB,SAkGL/tL,EAAOiC,GAChBjC,EAAMynL,WAAaxlL,GAErB+rL,WArGgB,SAqGLhuL,EAAOiC,GAChBjC,EAAM0nL,UAAYzlL,GAEpBgsL,cAxGgB,SAwGFjuL,EAAOiC,GACnBjC,EAAM2nL,aAAe1lL,GAEvBisL,mBA3GgB,SA2GGluL,EAAOiC,GACxBjC,EAAMonL,kBAAoBnlL,GAE5BksL,wBA9GgB,SA8GQnuL,EAAOiC,GAC7BjC,EAAM0vG,eAAiBztG,GAEzBmsL,iBAjHgB,SAiHCpuL,EAAOiC,GACtBjC,EAAMqnL,gBAAkBplL,GAE1BosL,cApHgB,SAoHFruL,EAAOiC,GACnBjC,EAAMsnL,aAAerlL,GAEvBqsL,mBAvHgB,SAuHGtuL,EAAOiC,GACxBjC,EAAMunL,kBAAoBtlL,GAE5BssL,kBA1HgB,SA0HEvuL,EAAOiC,GACvBjC,EAAMwnL,UAAYvlL,GAEpBusL,kBA7HgB,SA6HExuL,EAAOiC,GACvBjC,EAAM4nL,gBAAkB3lL,GAE1BwsL,gBAhIgB,SAgIAzuL,EAAOiC,GACrBjC,EAAMq5C,eAAiBp3C,GAEzBysL,mBAnIgB,SAmIG1uL,EAAOiC,GACxBjC,EAAM6nL,cAAgB5lL,EAAQ4lL,cAC9B7nL,EAAM8nL,kBAAoB7lL,EAAQ6lL,mBAEpC6G,YAvIgB,SAuIJ3uL,EAAOiC,GACjBjC,EAAM+nL,WAAa9lL,GAErB2sL,kBA1IgB,SA0IE5uL,EAAOiC,GACvBjC,EAAMgoL,iBAAmB/lL,GAE3B4sL,qBA7IgB,SA6IK7uL,EAAOiC,GAC1BjC,EAAMioL,mBAAqBhmL,GAE7B6sL,oBAhJgB,SAgJI9uL,EAAOiC,GACzBjC,EAAMkoL,kBAAoBjmL,GAE5B8sL,sBAnJgB,SAmJM/uL,EAAOiC,GAC3BjC,EAAMmoL,oBAAsBlmL,GAE9B+sL,qBAtJgB,SAsJKhvL,EAAOiC,GAC1BjC,EAAMooL,mBAAqBnmL,GAE7BgtL,mBAzJgB,SAyJGjvL,EAAOiC,GACxBjC,EAAMqoL,iBAAmBpmL,GAE3BitL,kBA5JgB,SA4JElvL,EAAOiC,GACvBjC,EAAMsoL,iBAAmBrmL,GAE3BktL,gBA/JgB,SA+JAnvL,EAAOiC,GACrBjC,EAAMuoL,cAAgBtmL,IAIX,QACbjC,QACAiB,UACAC,UACA0E,e,yEC3iCF,IAAI2oD,EAAWznD,EAAQ,QAEnB2vB,EAAsB3vB,EAAQ,QAE9B2jB,EAAqB3jB,EAAQ,QAC7Bod,EAA2Bpd,EAAQ,QAEnCW,EAAKX,EAAQ,QAAqDW,GAGlE2nL,EAAetoL,EAAQ,QACvBuoL,EAAavoL,EAAQ,QACrBwoL,EAAYxoL,EAAQ,QACpByoL,EAAqBzoL,EAAQ,QAC7B0oL,EAAU1oL,EAAQ,QAClB2oL,EAAY3oL,EAAQ,QACpB4oL,EAAkB5oL,EAAQ,QAG1B6oL,EAA2B7oL,EAAQ,QACnC8oL,EAAgB9oL,EAAQ,QACxB+oL,EAAgC/oL,EAAQ,QACxCgpL,EAAoBhpL,EAAQ,QAC5BipL,EAAqBjpL,EAAQ,QAC7BkpL,EAAmBlpL,EAAQ,QAC3BmpL,EAAcnpL,EAAQ,QACtBopL,EAAappL,EAAQ,QACrBqpL,EAAYrpL,EAAQ,QACpBspL,EAAsBtpL,EAAQ,QAC9BupL,EAAkBvpL,EAAQ,QAC1BmwC,EAAanwC,EAAQ,QACrBwpL,EAAwBxpL,EAAQ,QAEhCypL,EAAgBzpL,EAAQ,QACxB0pL,EAAkB1pL,EAAQ,QAC1B2pL,EAAiB3pL,EAAQ,QAGzB4pL,EAAkC5pL,EAAQ,QAC1C6pL,EAA8B7pL,EAAQ,QACtC8pL,EAA6B9pL,EAAQ,QACrC+pL,EAAsC/pL,EAAQ,QAC9CgqL,EAAuChqL,EAAQ,QAC/CiqL,EAA6BjqL,EAAQ,QACrC8iB,EAAgB9iB,EAAQ,QAA8B8iB,cAGtDoF,EAAkBloB,EAAQ,QAC1BD,EAAmBC,EAAQ,QAC3BkqL,EAAclqL,EAAQ,QAGtBmqL,EAAmBnqL,EAAQ,QAC3BoqL,EAA2BpqL,EAAQ,QACnCqqL,EAA4BrqL,EAAQ,QAGpCggB,EAAahgB,EAAQ,QAGrBsqL,EAAmBtqL,EAAQ,QAG3B+qH,EAAoB/qH,EAAQ,QAG5Bm9E,EAAmBn9E,EAAQ,QAG3B+oD,EAAW/oD,EAAQ,QAGnBuqL,EAA4BvqL,EAAQ,QAGpC8nC,EAAkB9nC,EAAQ,QAE1BY,EAAoBZ,EAAQ,QAAqDY,kBACjFgjB,EAAwB5jB,EAAQ,QAChCc,EAA2Bd,EAAQ,QAInCwqL,GAAgC,SAAStqL,GAC3C,IAAI0qB,EAAiBhqB,EAAkBV,GAGvC,GAAIS,EAAGT,EAAS,iBAAmBS,EAAGT,EAAS,qBAAuB0qB,EAAevzB,IAAI,cACvF,OAAO,EAGT,IAAIozL,EAAartK,EAAyBxb,iCAAiC1B,GACvEwqL,EAAgF,aAA/DttK,EAAyB8B,sBAAsBurK,GAGpE,QAASrtK,EAAyB+lB,kBAAkBsnJ,IAAeC,GAGjEC,GAAqB,SAASzqL,GAChC,IAAI0qB,EAAiBhqB,EAAkBV,GAEvC,GAAIS,EAAGT,EAAS,iBAAmBS,EAAGT,EAAS,qBAAuB0qB,EAAevzB,IAAI,cACvF,OAAO,EAIT,IAAI4J,EAAKL,EAAkBV,GAC3B,SAAIyjB,EAAmBE,cAAc5iB,KAAO0iB,EAAmBG,aAAa7iB,OAKxEN,EAAGT,EAAS,iBACL0jB,EAAsBjG,wBAAwBzd,IAMvD0qL,GAAmB,SAASniK,EAAOroB,GAErC,OAAIO,EAAG8nB,EAAO,+BACLroB,EAAU,sBAGfO,EAAG8nB,EAAO,0BACLroB,EAAU,iBAGZ,IAGLyqL,GAAmB,2CACnBC,GAAgB,wCAEpB,SAASC,GAAa7qL,GAEpB,OAAIS,EAAGT,EAAS,oBACP,CAAEjF,GAAI,iBAAkB2I,MAAO,kBAGpCjD,EAAGT,EAAS,gBACP,CAAEukB,YAAaomK,IAGpBlqL,EAAGT,EAAS,iBACP,CAAEukB,YAAaqmK,SADxB,EAKF,SAASE,GAAe9qL,GACtB,GAAIS,EAAGT,EAAS,oBACd,MAAO,CAAEjF,GAAI,mBAAoB2I,MAAO,oBAI5C,SAASqnL,GAAkB/qL,GACzB,GAAIS,EAAGT,EAAS,oBACd,MAAO,CAAE8oD,qBAAsB6hI,IAInC,SAASK,GACLhrL,EACAC,EACAyC,EACAyf,EACAkF,EACA62B,EACAzzC,EACA0jB,EACAjuB,GACF,IAAIgF,EAAa0d,EAAc5iB,GAE/B,IAAKkF,EACH,MAAO,GAGT,IAAI+lL,EAAmBvB,EACrB1pL,EAASmiB,EAAckF,EAAkB62B,EAAUzzC,EAAS0jB,EAAWjuB,GAErEgrL,EAAYL,GAAa7qL,IAAY,GAEzCkrL,EAAUnwL,GAAK,8BAEf,IAAI0I,EAAc,CAAE1I,GAAI,iCAExBytL,EAAQyC,EAAkBjrL,EAASE,EAAWgrL,GAC9CzC,EAAUwC,EAAkBjrL,EAASC,EAAayC,EAAQxC,EAAWuD,GACrE2kL,EAAa6C,EAAkBjrL,EAASE,EAAW6qL,GAAkB/qL,IAErE,IAAImrL,EAAsC,CACxCpwL,GAAI,kBACJ2I,MAAOxD,EAAU,oBACjBI,QAAS,IAEXupL,EAAoCsB,EAAqCnrL,EAASqnB,EAAkBpnB,EAAaC,GAEjH,IAAIkrL,EAAuC,CACzCrwL,GAAI,mBACJ2I,MAAOxD,EAAU,qBACjBI,QAAS,IAEXwpL,EAAqCsB,EAAsCprL,EAASqnB,EAAkBpnB,EAAaC,GAGnH,IAAImrL,EAA6B,CAC/BtwL,GAAI,kBACJ2I,MAAOxD,EAAU,UACjBI,QAAS,IAEXypL,EAA2BsB,EAA4BrrL,EAASqnB,EAAkBpnB,EAAaC,GAE/F,IAAIorL,EAAqB1B,EAA2B5pL,EAASqnB,EAAkBpnB,EAAaC,GAE5F,MAAO,CACL+qL,EACAE,EACAC,EACAC,GACA9qL,OAAO+qL,GAGX,SAASC,GACLvrL,EAAS0C,EAAQzC,EACjBikC,EAAiB7c,EAAkBnnB,GAGrCF,EAAUA,EAAQ0kB,aAAe1kB,EAEjC,IAAIwrL,EAAe,CACjBzwL,GAAI,UACJ2I,MAAOxD,EAAU,WACjBI,QAAS,IAGXkoL,EAAQgD,EAAcxrL,EAASE,EAAW2qL,GAAa7qL,IACvDyoL,EAAU+C,EAAcxrL,EAASC,EAAayC,EAAQxC,EAAW4qL,GAAe9qL,IAChFooL,EAAaoD,EAAcxrL,EAASE,EAAW6qL,GAAkB/qL,IACjEiwC,EAAWu7I,EAAcxrL,EAASE,GAClCwoL,EAAgB8C,EAAcxrL,EAASE,GACvCypL,EAA4B6B,EAAcxrL,EAASqnB,EAAkBnnB,GAErE,IAAIurL,EAAe,CACjB1wL,GAAI,UACJ2I,MAAOxD,EAAU,WACjBI,QAAS,IAEXqoL,EAAyB8C,EAAczrL,EAASC,EAAaC,GAC7D0oL,EAAc6C,EAAczrL,EAASE,GACrC+oL,EAAYwC,EAAczrL,EAASC,EAAaC,GAChDooL,EAAUmD,EAAczrL,EAASE,GACjC4oL,EAAkB2C,EAAczrL,EAASC,EAAaC,GACtDmoL,EAAWoD,EAAczrL,EAASC,EAAaikC,EAAiBhkC,GAChEgpL,EAAWuC,EAAczrL,EAASC,EAAaC,GAC/C8oL,EAAiByC,EAAczrL,EAASC,EAAaC,GACrDkpL,EAAoBqC,EAAczrL,EAASE,GAE3C,IAAIwrL,EAAqB,CACvB3wL,GAAI,gBACJ2I,MAAOxD,EAAU,kBACjBI,QAAS,IAEXyoL,EAAmB2C,EAAoB1rL,EAASC,EAAaC,GAE7D,IAAIyrL,EAAa,CACf5wL,GAAK,QACL2I,MAAOxD,EAAU,8BACjBI,QAAU,IAEZuoL,EAA8B8C,EAAY3rL,EAASC,EAAaC,GAEhE,IAAI0rL,EAAwB,CAC1B7wL,GAAK,mBACL2I,MAAQxD,EAAU,qBAClBI,QAAU,GACVurL,QAASpB,IAEXL,EAAiBwB,EAAuB5rL,EAASC,EAAaC,GAE9D,IAAI4rL,EAAoB,CACtB/wL,GAAK,4BACL2I,MAAQxD,EAAU,+BAClBI,QAAU,GACVurL,QAASvB,IAEXD,EAA0ByB,EAAmB9rL,EAASC,EAAaC,GAGnE,IAAI6rL,EAAwB,CAC1BhxL,GAAI,gCACJ2I,MAAOxD,EAAU,mCACjBI,QAAS,IAEX28E,EAAiB8uG,EAAuB/rL,EAASC,EAAaC,GAE9D,IAAI8rL,EAAyB,CAC3BjxL,GAAI,uBACJ2I,MAAOxD,EAAU,yBACjBI,QAAS,IAEXuqH,EAAkBmhE,EAAwBhsL,EAASC,EAAaC,GAEhE,IAAI+rL,EAAgB,CAClBlxL,GAAI,WACJ2I,MAAOxD,EAAU,0BACjBI,QAAS,IAEXuoD,EAASojI,EAAejsL,EAASC,EAAaC,GAE9C,IAAIgsL,EAAqB,CACvBnxL,GAAI,gBACJ2I,MAAOxD,EAAU,iBACjBI,QAAS,IAEXioL,EAAmB2D,EAAoBlsL,EAASC,EAAaC,GAE7D,IAAIqQ,EAAS,GAYb,OAXAA,EAAO/a,KAAKg2L,GACZj7K,EAAO/a,KAAKi2L,GACZl7K,EAAO/a,KAAKs2L,GACZv7K,EAAO/a,KAAKk2L,GACZn7K,EAAO/a,KAAKm2L,GACZp7K,EAAO/a,KAAKo2L,GACZr7K,EAAO/a,KAAKu2L,GACZx7K,EAAO/a,KAAKw2L,GACZz7K,EAAO/a,KAAKy2L,GACZ17K,EAAO/a,KAAK02L,GAEL37K,EAGT,SAAS47K,GAAyBnsL,EAASC,EAAaikC,EAAiBhkC,GACvE,IAAIksL,EAAiB,CACnBrxL,GAAK,YACL2I,MAAQxD,EAAU,aAClBI,QAAS,IAIX,OAFA+oL,EAAgB+C,EAAgBpsL,EAASC,EAAaC,GAE/C,CACLksL,GAIJ,SAASC,GAAgCrsL,EAASE,GAChD,IAAIosL,EAAwB,CAC1BvxL,GAAK,oBACL2I,MAAQxD,EAAU,aAClBI,QAAS,IAKX,OAFAgpL,EAAsBgD,EAAuBtsL,EAASE,GAE/C,CACLosL,GAIJ,SAASC,GAAqBvsL,EAASC,EAAaikC,EAAiBhkC,GACnE,IAAIssL,EAAY,CACdzxL,GAAK,QACL2I,MAAQxD,EAAU,SAClBI,QAAS,IAIX,OAFA6oL,EAAUqD,EAAWxsL,EAASC,EAAaC,GAEpC,CACLssL,GAIJ,SAASC,GAAyBzsL,EAASC,EAAaikC,EAAiBhkC,GAEvE,IAAIwsL,EAAiB,CACnB3xL,GAAK,YACL2I,MAAOxD,EAAU,aACjBI,QAAS,IAGP+B,EAAUknL,EAAcmD,EAAgB1sL,EAASC,EAAaC,GAE9DysL,EAAuB,CACzB5xL,GAAI,mBACJuF,QAAS,GACTurL,QAAS,SAAS7rL,EAAS2b,GACzB,OAAOtZ,EAAQ2b,oBAAoBhe,EAAS2b,IAE9CjY,MAAO,SAAS1D,EAAS2b,GACvB,IAAI4M,EAAQlmB,EAAQ2b,oBAAoBhe,EAAS2b,GACjD,OAAO+uK,GAAiBniK,EAAOroB,KAInCspL,EAAgBmD,EAAsB3sL,EAASC,EAAaoC,EAASnC,GAErE,IAAI0sL,EAAsB,CACxB7xL,GAAI,kBACJ2I,MAAOxD,EAAU,mBACjBI,QAAS,GACTurL,QAAS,SAAS7rL,EAAS2b,GACzB,OAAOtZ,EAAQ2b,oBAAoBhe,EAAS2b,KAMhD,OAFA8tK,EAAemD,EAAqB5sL,EAASC,EAAaoC,EAASnC,GAE5D,CACLwsL,EACAC,EACAC,GAIJ,SAASC,GAA2B7sL,EAASC,EAAaonB,EAAkBnnB,GAE1E,IAAI4sL,EAAuB,CACzB/xL,GAAI,mBACJ2I,MAAOxD,EAAU,oBACjBI,QAAS,IAGX0nB,EAAgB8kK,EAAsB9sL,EAASC,EAAaonB,EAAkBnnB,GAE9E,IAAI6sL,EAAwB,CAC1BhyL,GAAI,oBACJ2I,MAAOxD,EAAU,qBACjBI,QAAS,IAGXT,EAAiBktL,EAAuB/sL,EAASC,EAAaonB,EAAkBnnB,GAEhF,IAAI8sL,EAAc,CAChBjyL,GAAI,SACJ2I,MAAOxD,EAAU,UACjBI,QAAS,GAETurL,QAAS,SAAS7rL,EAAS2b,GACzB,IAAI+O,EAAiBhqB,EAAkBV,GACnC0oF,EAAgF,aAAnExrE,EAAyB8B,sBAAsB0L,GAEhE,OAAOjqB,EAAGT,EAAS,qBAAuB0oF,IAM9C,OAFAshG,EAAYgD,EAAahtL,EAASC,EAAaonB,EAAkBnnB,GAE1D,CACL4sL,EACAC,EACAC,GAIJ,SAASC,GAAyBjtL,EAASC,EAAaikC,EAAiBhkC,GACvE,IAAIgtL,EAAwB,CAC1BnyL,GAAI,oBACJ2I,MAAOxD,EAAU,WACjBI,QAAS,IAGX2pL,EAAiBiD,EAAuBltL,EAASC,EAAaC,GAE9D,IAAIitL,EAAgC,CAClCpyL,GAAI,6BACJ2I,MAAOxD,EAAU,oBACjBI,QAAS,IAGX4pL,EAAyBiD,EAA+BntL,EAASC,EAAaC,GAE9E,IAAIktL,EAAiC,CACnCryL,GAAI,8BACJ2I,MAAOxD,EAAU,qBACjBI,QAAS,IAKX,OAFA6pL,EAA0BiD,EAAgCptL,EAASC,EAAaC,GAEzE,CACLgtL,EACAC,EACAC,GAIJ,SAASC,GAA+BrtL,EAASC,EAAaikC,EAAiBhkC,GAE7E,IAAIotL,EAAa,CACfvyL,GAAI,8BACJ2I,MAAOxD,EAAU,oBACjBI,QAAS,IAKX,OAFAsnC,EAAgB0lJ,EAAYttL,EAASC,EAAaC,GAE3C,CACLotL,GAIJ,SAASC,GAA8BvtL,EAASC,EAAaikC,EAAiBhkC,GAE5E,IAAIstL,EAAkB,CACpBzyL,GAAK,+BACL2I,MAAOxD,EAAU,cACjBI,QAAS,IAIX,OAFAwf,EAAW0tK,EAAiBxtL,EAASC,EAAaC,GAE3C,CACLstL,GAoBJ,SAASC,GACLxtL,EACAyC,EACAyf,EACA+hB,EACA7c,EACAnF,EACAg8B,EACAzzC,EACA0jB,EACAjuB,GAEFuvB,EAAoBn6B,KAAKkM,KAAM0gB,GAE/B1gB,KAAKksL,QAAU,SAAS1tL,GAEtB,IAAI2tL,EAAa,CACf5yL,GAAI,UACJ2I,MAAOxD,EAAU,WACjBqQ,OAAQg7K,GACNvrL,EAAS0C,EAAQzC,EACjBikC,EAAiB7c,EAAkBnnB,IAGnC0tL,EAAqB,CACvB7yL,GAAI,mBACJ2I,MAAOxD,EAAU,YACjBqQ,OAAQy6K,GACNhrL,EACAC,EACAyC,EACAyf,EACAkF,EACA62B,EACAzzC,EACA0jB,EACAjuB,IAIA2tL,EAAe,CACjB9yL,GAAI,YACJ2I,MAAOxD,EAAU,aACjBqQ,OAAQ47K,GAAyBnsL,EAASC,EAAaikC,EAAiBhkC,IAGtE4tL,EAAsB,CACxB/yL,GAAI,oBACJ2I,MAAOxD,EAAU,aACjBqQ,OAAQ87K,GAAgCrsL,EAASE,IAG/C6tL,EAAW,CACbhzL,GAAI,QACJ2I,MAAOxD,EAAU,SACjBqQ,OAAQg8K,GAAqBvsL,EAASC,EAAaikC,EAAiBhkC,IAGlE8tL,EAAe,CACjBjzL,GAAI,YACJ2I,MAAOxD,EAAU,aACjBqQ,OAAQk8K,GAAyBzsL,EAASC,EAAaikC,EAAiBhkC,GACxE2rL,QAAS,SAAS7rL,GAChB,OAAQ0jB,EAAsBuO,uBAAuBjyB,KAC9CS,EAAGT,EAAS,gCACd0jB,EAAsBuO,uBAAuBjyB,KAIlDiuL,EAAiB,CACnBlzL,GAAI,eACJ2I,MAAOxD,EAAU,gBACjBqQ,OAAQs8K,GAA2B7sL,EAASC,EAAaonB,EAAkBnnB,IAGzEguL,EAAe,CACjBnzL,GAAI,YACJ2I,MAAOxD,EAAU,aACjBqQ,OAAQ08K,GAAyBjtL,EAASC,EAAaikC,EAAiBhkC,GACxE2rL,QAAS,SAAS7rL,GAChB,IAAIe,EAAKH,EAAyBc,iCAAiC1B,GACnE,OAAOe,GAA6D,cAAvDH,EAAyBoe,sBAAsBje,KAI5DotL,EAAqB,CACvBpzL,GAAI,mBACJ2I,MAAOxD,EAAU,oBACjBqQ,OAAQ88K,GAA+BrtL,EAASC,EAAaikC,EAAiBhkC,IAG5EkuL,EAAgB,CAClBrzL,GAAI,oBACJ2I,MAAOxD,EAAU,cACjBqQ,OAAQg9K,GAA8BvtL,EAASC,EAAaikC,EAAiBhkC,IAG/E,MAAO,CACLytL,EACAC,EACAC,EACAC,EACAI,EACAH,EACAC,EACAC,EACAE,EACAC,IAMNX,GAA4BlrK,QAAU,CACpC,cACA,SACA,eACA,kBACA,mBACA,WACA,WACA,UACA,YACA,aAGFglC,EAASkmI,GAA6Bh+J,GAEtCh5B,EAAOD,QAAUi3L,I,sDCnpBjB,IAAIvyK,EAAYpb,EAAQ,QAEpBqb,EAAerb,EAAQ,QAEvB8hD,EAA2B9hD,EAAQ,QACnC+hD,EAA2B/hD,EAAQ,QAEnCilB,EAAWjlB,EAAQ,QAAWklB,MAElCvuB,EAAOD,QAAU,SAASmE,EAAOsF,EAAaD,EAASqC,EAASnC,GAE9DmC,EAAUA,GAAW,GAErB,IAAIjC,EAAWiC,EAAQjC,UAAY,GAE/BiuL,EACDhsL,EAAQgsL,UAAwC,oBAArBhsL,EAAQgsL,SAClC,WACE,OAAOhsL,EAAQgsL,YAEjB,WACE,OAAO1zL,GAGT5E,EAAS,GACTuK,EAAU,GAEdvK,EAAOuK,QAAUA,EAEjB,IAAIguL,EAAsB,WACxB,IAAI3zL,EAAQ0zL,IACRnpK,EAAQ,sBAQZ,OANIvqB,EAAMsnC,WACR/c,EAAQvqB,EAAMsnC,SAASnrC,KACnB6D,EAAMsnC,SAAS+3I,YACjB90J,GAAS,YAAcvqB,EAAMsnC,SAAS+3I,UAAY,MAG/C90J,GAIL0O,EAAczY,EAAayY,YAAY,CACzC74B,GAAIqF,EAAW,cACf8kB,MAAOopK,IACP/pK,YAAa8pK,IAAWxwK,YAAc,GACtC0H,WAAY,CAAE,yBACdJ,MAAM,EACNG,SAAUjjB,EAAQijB,SAClBF,SAAU/iB,EAAQ+iB,SAClBjuB,IAAK,WACH,MAAO,CACL+tB,MAAOopK,IACP/pK,YAAa8pK,IAAWxwK,YAAc,OAKxC6H,EAASrjB,EAAQqjB,QAAUkO,EAAYlO,OA0F3C,OAxFA3vB,EAAO4vB,QAAU,SAASpuB,GACxB,IAAIquB,EAAYb,EAAS,gBAAkB6O,EAAY74B,GAAK,MAC5D64B,EAAYjO,QAAQpuB,EAAOquB,IAG7BtlB,EAAQ9K,KAAKo+B,GAEbtzB,EAAQ9K,KAAK2lB,EAAamJ,yBAAyBpkB,EAAW,CAC5DnF,GAAIqF,EAAW,mBACfsD,MAAOxD,EAAU,oBACjByD,cAAe,aAEf6gB,YAAa,SAASxkB,EAAS2b,GAC7B,OAAOhhB,EAAMkjB,YAGf4G,YAAa,SAASzkB,EAASoD,EAAQuY,GACrC,OAAOT,EAAU2B,qBAAqB7c,EAASrF,EAAOyI,IAGxD4Z,SAAU,SAAShd,EAASoD,EAAQuY,GAClC,IAAIyQ,EAAa,GACbf,EAAkBjoB,EAAOya,WAM7B,OAJKwN,IACHe,EAAWvO,WAAa3d,EAAU,kCAG7BksB,GAGTtP,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAKZplB,EAAQ9K,KAAKK,MAAMyK,EAASshD,EAAyB5hD,EAASrF,EAAOsF,EAAa,CAChFlF,GAAIqF,EAAW,kBACfsD,MAAOxD,EAAU,2BACjB4hD,YAAa,QACbC,YAAa,aACb/W,kBAAmB,WACnBgX,mBAAoB,SAEpBllC,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAKZplB,EAAQ9K,KAAKK,MAAMyK,EAASuhD,EAAyB7hD,EAASrF,EAAOsF,EAAaC,EAAW,CAC3FnF,GAAIqF,EAAW,qBACfsD,MAAOxD,EAAU,QACjB8qC,kBAAmB,WACnBrnC,cAAe,OACfs+C,gBAAgB,EAEhBnlC,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAKZplB,EAAQ9K,KAAKK,MAAMyK,EAASuhD,EAAyB7hD,EAASrF,EAAOsF,EAAaC,EAAW,CAC3FnF,GAAIqF,EAAW,qBACfsD,MAAOxD,EAAU,QACjB8qC,kBAAmB,WACnBrnC,cAAe,YACfs+C,gBAAgB,EAEhBnlC,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAKZplB,EAAQ9K,KAAKK,MAAMyK,EAASuhD,EAAyB7hD,EAASrF,EAAOsF,EAAaC,EAAW,CAC3FnF,GAAIqF,EAAW,wBACfsD,MAAOxD,EAAU,WACjB8qC,kBAAmB,WACnBrnC,cAAe,eAEfmZ,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAIL3vB,I,mECrJT,IAAI8F,EAAUiE,EAAQ,QAElBmb,EAAgBnb,EAAQ,QAiB5B,SAASyuL,EAAgCrqJ,EAAiBjkC,GACxDuB,KAAK2iC,iBAAmBD,EACxB1iC,KAAK4iC,aAAenkC,EAOtB,SAASokC,EAAcpjC,EAAMnK,GAC3B,IAAKmK,EACH,MAAM,IAAIrG,MAAM9D,EAAO,aAEzB,OAAOmK,EAGT,SAASutL,EAAWvtL,EAAMnK,GACxB,IAAKmK,GAAiD,mBAAzC9L,OAAOC,UAAU2D,SAASzD,KAAK2L,GAC1C,MAAM,IAAIrG,MAAM9D,EAAO,uBAEzB,OAAOmK,EAfTstL,EAAgChsK,QAAU,CAAE,kBAAmB,eAE/D9rB,EAAOD,QAAU+3L,EAiCjBA,EAAgCn5L,UAAUkvC,QAAU,SAAShhC,GAE3D,IAAIypB,EAAgBsX,EAAc/gC,EAAQypB,cAAe,iBACrDzG,EAAe+d,EAAc/gC,EAAQgjB,aAAc,gBACnDmoK,EAAaD,EAAWlrL,EAAQmrL,WAAY,cAC5ClqJ,EAAU,CAAEjhC,EAAQtD,SAGpB0uL,EAAe,GACflrK,EAAOhiB,KAiBX,OAdA3F,EAAQ4yL,GAAY,SAAS7kJ,GAC3B,IAAI5pC,EAAUib,EAAcc,cAAc6tB,EAAI5oC,KAAM4oC,EAAI9pB,WAAYiN,EAAevJ,EAAK4gB,cAExFsqJ,EAAal5L,KAAKwK,MAEpBsD,EAAQqrL,YAAcD,EAGtBprL,EAAQsrL,eAAiB7hK,EAAczG,GACvCyG,EAAczG,GAAgBooK,EAE9BprL,EAAQihC,QAAUA,EAGXA,GAYTgqJ,EAAgCn5L,UAAUwvC,OAAS,SAASthC,GAE1D,IAAIypB,EAAgBzpB,EAAQypB,cACxBzG,EAAehjB,EAAQgjB,aACvBsoK,EAAiBtrL,EAAQsrL,eAK7B,OAFA7hK,EAAcnpB,IAAI0iB,EAAcsoK,GAEzBtrL,EAAQihC,U,kCC1GjB,IAAI63I,EAAYt8K,EAAQ,QAexB,SAAS+uL,EAAuBC,EAAe5sK,EAAUmF,GACvD7lB,KAAKutL,eAAiBD,EACtBttL,KAAKs2F,UAAY51E,EACjB1gB,KAAKwtL,kBAAoB3nK,EAEzB,IAAI7D,EAAOhiB,KAEX0gB,EAASE,GAAG,gBAAgB,WAC1BoB,EAAKyrK,YAITx4L,EAAOD,QAAUq4L,EAEjBA,EAAuBtsK,QAAU,CAC/B,0BACA,WACA,oBAIFssK,EAAuBz5L,UAAU65L,OAAS,WAExC,IAAIzrK,EAAOhiB,KAEPstL,EAAgBttL,KAAKutL,eAGzB,GAA6B,qBAAlBD,EAKX,MAA6B,oBAAlBA,EAEFA,GAAc,SAAS1hJ,EAAKlqB,GAEjC,GAAIkqB,EACF,OAAO5pB,EAAK0rK,eAAe,CAAE9hJ,IAG/B5pB,EAAK2rK,aAAajsK,MAKlB4rK,EAAc55L,OACTsM,KAAK2tL,aAAaL,QAD3B,GAMFD,EAAuBz5L,UAAU+5L,aAAe,SAASjsK,GAEvD,IAAImE,EAAmB7lB,KAAKwtL,kBAExBI,GAAY,IAAIhT,GAAYI,OAAOt5J,GAEnCusC,EAAS2/H,EAAUrS,YACnBsS,EAAiBD,EAAUpS,oBAE/B31J,EAAiBzjB,IAAIyrL,GAEjB5/H,EAAOv6D,QACTsM,KAAK0tL,eAAez/H,GAGtBjuD,KAAK8tL,oBAGPT,EAAuBz5L,UAAUk6L,iBAAmB,WAClD9tL,KAAKs2F,UAAUoB,KAAK,6BAGtB21F,EAAuBz5L,UAAU85L,eAAiB,SAASz/H,GACzDjuD,KAAKs2F,UAAUoB,KAAK,0BAA2B,CAC7CzpC,OAAQA,M,kCC7FZ,W,2GCEA,IAAI/uD,EAAoBZ,EAAQ,QAA2DY,kBAEvFua,EAAgBnb,EAAQ,QACxBa,EAA0Bb,EAAQ,QAClC6nB,EAAoB7nB,EAAQ,QAC5Bob,EAAYpb,EAAQ,QACpB4f,EAAQ5f,EAAQ,QAEhB8nB,EAAwB9nB,EAAQ,QAEhCilB,EAAWjlB,EAAQ,QAAWklB,MAE9B6C,EAAuB/nB,EAAQ,QAwCnC,SAASgoB,EAAqB9nB,EAASC,EAAaoC,GAClD,IAAIjC,EAAWiC,EAAQjC,UAAY,GAC/B+b,EAAS9Z,EAAQ8Z,OACjBnb,EAAOqB,EAAQrB,KACfC,EAAOoB,EAAQpB,KACfZ,EAAkBgC,EAAQhC,gBAE1B0hB,EAAQ,CACVhnB,GAAIqF,EAAW+b,EAAS,WACxBoJ,WAAY,CAAE,oBACdnG,KAAM,uLAwBR,SAASrD,IACP,IAAI0E,EAAW,GACX1f,EAAKL,EAAkBV,GACvBkgB,EAAoBnf,EAAG5J,IAAI,qBAE1B+oB,IACHA,EAAoBjF,EAAcc,cAAc,yBAA0B,CAAE3Y,OAAQ,IAAMrC,EAAId,GAC9FwgB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI,CAAEmf,kBAAmBA,MAGjF,IAAI7e,EAAcC,EAAetB,EAASK,GAC1C,IAAKgB,EAAa,CAChB,IAAIwa,EAAUxb,EAAsCoB,EAAazB,GAAjCkgB,EAChC7e,EAAc0mB,EAAkBlM,EAAQ5b,EAAa,CACnD+nB,gBAAiB,GACjBnoB,iBAAkB,KAGfQ,EAUHogB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAAS6b,EAAQ,CAAExa,YAAaA,KAT7Eof,EAASjrB,KAAK0lB,EAAUwF,6BACtB1gB,EACAkgB,EACA,SACA,oBACA,CAAE7e,GACF,KAON,IAAI4mB,EAAUC,EAAgBlnB,EAAMK,EAAapB,EAAa,CAAEnJ,KAAMqxB,EAAkBhM,KAGxF,OAFAsE,EAASjrB,KAAK0lB,EAAU2F,kBAAkB7gB,EAASqB,EAAaJ,EAAM,GAAI,CAAEgnB,KAErExH,EAST,SAASuF,EAAiBvF,EAAUmF,GAClC7D,EAAM8D,UAAYpF,EAGlB,IAAIwF,EAAQlB,EAAS,uBAAwBa,GAC7CK,EAAM1uB,MAAQ,EAGhB,OAtEAwqB,EAAMhG,cAAgB,SAASqM,EAAGxC,GAChC,IAAInF,EAAW1E,IAEf,GAAI0E,EAEF,OADAuF,EAAiBvF,EAAUmF,IACpB,GAIX7D,EAAMne,IAAM,WACV,IAAI6c,EAAWsB,EAAM8D,UAErB,GAAIpF,EAEF,cADOsB,EAAM8D,UACNpF,GAwDJsB,EAGT,SAASwtK,EAA0BvvL,EAASC,EAAaoC,EAASnC,GAChE,IAIII,EAJAF,EAAWiC,EAAQjC,SACnBC,EAAkBgC,EAAQhC,gBAC1BgB,EAAcC,EAAetB,EAASK,GACtCioB,EAAS1mB,EAAoB5B,EAASK,GAG1C,IAAKioB,EAAOpzB,OAAQ,CAClB,IAAIqvB,EAAcqD,EAAsB1nB,EAAWA,EAAU,0BAE7D,MAAO,CAAC,CACNnF,GAAIqF,iCACJmlB,WAAY,CAAE,gCACdnG,KAAMmF,IAIV,IAAI1kB,EAAmByoB,EAAO/E,KAAI,SAASgF,EAAOxsB,GAChD,SAASupB,IACP,IAAI7E,EAAW,GAIf,GAHAA,EAASjrB,KAAK0lB,EAAUkG,uBAAuBphB,EAASqB,EAAa,mBAAoB,KAAM,CAACknB,KAG7C,IAA/ClnB,EAAYlK,IAAI,oBAAoBjC,QAAsE,KAArDmM,EAAYlK,IAAI,oBAAsB,IAAIjC,OAEjG,GAAKmL,EAGA,CACH,IAAIkB,EAAYE,EAAazB,GAC7BygB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASuB,EAAW,CAAEF,iBAAaya,UAJhF2E,EAASjrB,KAAKmL,EAAwB0gB,YAAY3gB,EAAkBV,GAAUA,EAASqB,IAQ3F,OAAOof,EAGT,OAAOoH,EAAqBU,EAAOtoB,EACjC,CACEG,SAAUA,EAAW,oBAAsBrE,EAC3CupB,SAAUA,EACVF,SAAUA,GACTllB,MASP,SAASklB,EAAS7tB,EAAOquB,GACvB,GAAKruB,EAAL,CAIA,IAAIixB,EAAiB5C,EAAU6C,QAAQ1G,MAEvCliB,EAAiBhE,SAAQ,SAAS43B,GAC5BA,EAAgBnzB,QAAQ,GAAGvF,KAAOytB,GAItCiL,EAAgB9N,SAAQ,EAAOC,EAAU+C,mBAQ7C,OAJAroB,EAAUT,EAAiB0jB,KAAI,SAAS0C,GACtC,OAAOA,EAAM3lB,WAGRmiB,EAAQniB,GAGjB,SAASsoB,EAAOC,EAAOC,GACrBC,MAAM3zB,UAAUI,KAAKK,MAAMgzB,EAAOC,GAGpC,SAASrG,EAAQuG,GACf,OAAOD,MAAM3zB,UAAUmL,OAAO1K,MAAM,GAAImzB,GAG1C,SAASb,EAAkBhM,GAEzB,OADAA,GAAkB,IACXuD,EAAME,OAAOzD,GAGtB,SAAS7a,EAAetB,EAASK,GAC/B,OAAOsnB,EAAkBrmB,eAAetB,EAASK,GAGnD,SAASoB,EAAazB,GACpB,OAAO2nB,EAAkBlmB,aAAazB,GAGxC,SAAS4B,EAAoB5B,EAASK,GACpC,OAAOsnB,EAAkB/lB,oBAAoB5B,EAASK,GAGxD,SAAS0b,EAAc/a,EAAM6a,EAAQ4D,EAASK,GAC5C,OAAO7E,EAAcc,cAAc/a,EAAM8e,EAAYjE,EAAQ4D,GAG/D,SAASsI,EAAkBlM,EAAQ5b,EAAa6f,GAC9C,OAAO/D,EAAc,wBAAyBF,EAAQ5b,EAAa6f,GAGrE,SAASoI,EAAgBlnB,EAAM6a,EAAQ5b,EAAa6f,GAClD,OAAO/D,EAAc/a,EAAM6a,EAAQ5b,EAAa6f,GA3OlDrpB,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvDmC,EAAUA,GAAW,GAErB,IAAIhC,IAAoBgC,EAAQhC,gBAC5BD,EAAWiC,EAAQjC,UAAY,GAE/BrK,EAAS,GAETuK,EAAUvK,EAAOuK,QAAU,GAE/B,IAAKqnB,EAAkB3lB,uBAAuBhC,EAASK,KACpDsnB,EAAkB1lB,6BAA6BjC,EAASK,GACzD,OAAOtK,EAGT,IAAIkzB,EAAoB,CACtB5oB,gBAAiBA,EACjBD,SAAUA,GAiBZ,OAbAE,EAAQ9K,KACNsyB,EAAqB9nB,EAASC,EAAa,CACzCG,SAAUA,EACVC,gBAAiBA,EACjBW,KAAM,4BACNC,KAAM,mBACNkb,OAAQ,YAGZyM,EAAOtoB,EACLivL,EAA0BvvL,EAASC,EAAagpB,EAAmB/oB,IAG9DnK,I,oFCjDT,IAAI2K,EAAoBZ,EAAQ,QAA2DY,kBAGvFknB,EAAwB9nB,EAAQ,QAEhCmb,EAAgBnb,EAAQ,QACxBa,EAA0Bb,EAAQ,QAClCob,EAAYpb,EAAQ,QAEpB0vL,EAAgB1vL,EAAQ,QAExBilB,EAAWjlB,EAAQ,QAAWklB,MAwBlC,SAASyqK,EAAiBzvL,EAASC,EAAaoC,GAC9C,IAAI8Z,EAAS9Z,EAAQ8Z,OAEjB4F,EAAQ,CACVhnB,GAAIohB,EAAS,WACboJ,WAAY,CAAE,aACdnG,KAAM,gLAwBR,SAASrD,IACP,IAAI0E,EAAW,GACX1f,EAAKL,EAAkBV,GACvBkgB,EAAoBnf,EAAG5J,IAAI,qBAE1B+oB,IACHA,EAAoBjF,EAAcc,cAAc,yBAA0B,CAAE3Y,OAAQ,IAAMrC,EAAId,GAC9FwgB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI,CAAEmf,kBAAmBA,MAEjF,IAAI+H,EAAUhN,EAAcc,cAAc,iCAAkC,GAAImE,EAAmBjgB,GAGnG,OAFAwgB,EAASjrB,KAAK0lB,EAAU2F,kBAAkB7gB,EAASkgB,EAAmB,SAAU,CAAE+H,KAE3ExH,EAST,SAASuF,EAAiBvF,EAAUmF,GAClC7D,EAAM8D,UAAYpF,EAGlB,IAAIwF,EAAQlB,EAAS,uBAAwBa,GAC7CK,EAAM1uB,MAAQ,EAGhB,OA/CAwqB,EAAMhG,cAAgB,SAASqM,EAAGxC,GAChC,IAAInF,EAAW1E,IAEf,GAAI0E,EAEF,OADAuF,EAAiBvF,EAAUmF,IACpB,GAIX7D,EAAMne,IAAM,WACV,IAAI6c,EAAWsB,EAAM8D,UAErB,GAAIpF,EAEF,cADOsB,EAAM8D,UACNpF,GAiCJsB,EAGT,SAASg7J,EAAUh8K,GACjB,OAAOJ,EAAwBQ,qBAAqBJ,EAAI,mCAAqC,GAI/F,SAAS2uL,EAAiB1vL,EAASC,EAAaoC,EAASnC,GACvD,IAIII,EAJAF,EAAWiC,EAAQjC,UAAY,GAC/BW,EAAKL,EAAkBV,GACvBgiC,EAAwB+6I,EAAUh8K,GAClCmf,EAAoBnf,EAAG5J,IAAI,qBAG/B,GAAI6qC,IAA0BA,EAAsB9sC,OAAQ,CAC1D,IAAIqvB,EAAcqD,EAAsB1nB,EAAWA,EAAU,uBAE7D,MAAO,CAAC,CACNnF,GAAIqF,EAAW,oBACfmlB,WAAY,CAAE,yBACdnG,KAAMmF,IAIV,IAAIorK,EAAgB3tJ,EAAsBze,KAAI,SAAS3G,EAAY7gB,GAEjE,SAASupB,IACP,IAAI7E,EAAW,GAGf,OADAA,EAASjrB,KAAK0lB,EAAUkG,uBAAuBphB,EAASkgB,EAAmB,SAAU,oBAAqB,CAACtD,KACpG6D,EAGT,OAAO+uK,EAAc5yK,EAAY3c,EAAaD,EAC5C,CACEI,SAAUA,EAAW,SAAWrE,EAChCupB,SAAUA,EACVF,SAAUA,GACTllB,GAQL,SAASklB,EAAS7tB,EAAOquB,GACvB,GAAKruB,EAAL,CAIA,IAAIixB,EAAiB5C,EAAU6C,QAAQ1G,MAEvC4tK,EAAc9zL,SAAQ,SAASkmB,GACzBA,EAAMzhB,QAAQ,GAAGvF,KAAOytB,GAI5BzG,EAAM4D,SAAQ,EAAOC,EAAU+C,uBAUrC,OAJAroB,EAAUqvL,EAAcpsK,KAAI,SAAS0C,GACnC,OAAOA,EAAM3lB,WAGRmiB,EAAQniB,GAGjB,SAASmiB,EAAQuG,GACf,OAAOD,MAAM3zB,UAAUmL,OAAO1K,MAAM,GAAImzB,GAG1C,SAASJ,EAAOC,EAAOC,GACrBC,MAAM3zB,UAAUI,KAAKK,MAAMgzB,EAAOC,GA9JpCryB,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvDmC,EAAUA,GAAW,GAErB,IAAItM,EAAS,GAETuK,EAAUvK,EAAOuK,QAAU,GAa/B,OAXAA,EAAQ9K,KACNi6L,EAAiBzvL,EAASC,EAAa,CACrCe,KAAM,iCACNC,KAAM,uBACNkb,OAAQ,WAGZyM,EAAOtoB,EACLovL,EAAiB1vL,EAASC,EAAa,GAAIC,IAGtCnK,I,yDChCT,IAAIolB,EAAerb,EAAQ,QACvBob,EAAYpb,EAAQ,QAExBrJ,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvD,IAAI8e,EAAwB3c,EAAQ2c,sBAChCte,EAAoB2B,EAAQ3B,kBAEhC,SAASgoF,EAAW1oF,GAClB,MAA0C,aAAnCgf,EAAsBhf,GAG/B,IAAI4vL,EAAaz0K,EAAa4B,UAAU7c,EAAW,CACjDnF,GAAI,gBACJ2I,MAAOxD,EAAU,SACjByD,cAAe,gBAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GAC3B,MAAO,CAAE6vL,cAAe9uL,EAAG5J,IAAI,qBAGjCyM,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI5a,EAAKL,EAAkBV,GAC3B,OAAOkb,EAAU2B,qBAAqB7c,EAASe,EAAI,CACjD,kBAAmBqC,EAAOysL,iBAI9B7yK,SAAU,SAAShd,EAASoD,EAAQuY,GAClC,OAAO+sE,EAAW1oF,KAAaoD,EAAOysL,cAAgB,CAAEA,cAAe3vL,EAAU,yBAA4B,IAG/G4c,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+sE,EAAW1oF,MAKvB,MAAO,CAAE4vL,K,kCCzCX,W,4CCEA,IAAIz0K,EAAerb,EAAQ,QACvBob,EAAYpb,EAAQ,QACpBa,EAA0Bb,EAAQ,QAClCmb,EAAgBnb,EAAQ,QAExBqC,EAASrC,EAAQ,QACjByjB,EAAMzjB,EAAQ,QAEdgwL,EAAyB,CAAE,QAAS,aAAc,sBAElDC,EAAiB,CACnB,uBAAmBj0K,EACnB,4BAAwBA,EACxB,oCAAgCA,EAChC,gCAA4BA,GAG1Bk0K,EAAoB,CACtB,6BAAyBl0K,EACzB,+BAAgC,SAChC,oCAAgCA,EAChC,8BAA+B,aAC/B,qCAAiCA,GAI/Bm0K,EAAyB,CAC3B,sBAAkBn0K,EAClB,uBAAmBA,GAGrBrlB,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvD,IAAIk/F,EAAkB,CACpB,CAAE7nG,MAAO,QAAST,KAAMoJ,EAAU,eAClC,CAAE3I,MAAO,aAAcT,KAAMoJ,EAAU,eACvC,CAAE3I,MAAO,qBAAsBT,KAAMoJ,EAAU,yBAG7CgwL,EAAa,CACf,CAAE34L,MAAO,MAAOT,KAAMoJ,EAAU,SAG9BiwL,EAAkB,CACpB,CAAE54L,MAAO,WAAYT,KAAMoJ,EAAU,cAGnCkwL,EAAmB,CACrB,CAAE74L,MAAO,YAAaT,KAAMoJ,EAAU,eAGpCmwL,EAAgB,CAClB,CAAE94L,MAAO,SAAUT,KAAMoJ,EAAU,YAGjCowL,EAAUjuL,EAAQ2c,sBAClBte,EAAoB2B,EAAQ3B,kBAE5B4iC,EAAgBjhC,EAAQihC,cACxBC,EAAqBlhC,EAAQkhC,mBAC7BC,EAA4BnhC,EAAQmhC,0BACpC+sJ,EAAmBluL,EAAQkuL,iBAE3BjwL,EAAU,GAEV4b,EAAgBkjF,EAAgB7+F,OAAO,IA8G3C,OA5GI+iC,IACFpnB,EAAgBA,EAAc3b,OAAO2vL,IAGnC3sJ,IACFrnB,EAAgBA,EAAc3b,OAAO4vL,IAGnC3sJ,IACFtnB,EAAgBA,EAAc3b,OAAO6vL,IAGnCG,IACFr0K,EAAgBA,EAAc3b,OAAO8vL,IAGvCn0K,EAAc1mB,KAAK,CAAE+B,MAAO,KAE5B+I,EAAQ9K,KAAK2lB,EAAakB,UAAUnc,EAAW,CAC7CnF,GAAK,iBACL2I,MAAOxD,EAAU,kBACjBgc,cAAeA,EACfvY,cAAe,WAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,MAAO,CACL60K,SAAUF,EAAQtwL,IAAY,KAIlC4D,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI5a,EAAKL,EAAkBV,GACvB2c,EAAU2zK,EAAQtwL,GAClB0c,EAAUtZ,EAAOotL,SAEjB/zK,EAAQta,EAAO,GAAI4tL,GAEvB,IAAiD,IAA7CD,EAAuBlvK,QAAQlE,GAAiB,CAElD,IAAI8pC,EAAW,IACkC,IAA7CspI,EAAuBlvK,QAAQjE,KACjC6pC,EAAWzlD,EAAG5J,IAAI,aAAewlB,IAEnCF,EAAM,aAAeC,GAAW8pC,EAG9BljB,IACF7mB,EAAQta,EAAOsa,EAAOuzK,GACN,QAAZtzK,IACFD,EAAM,yBAA2B,KAIjC8mB,IACF9mB,EAAQta,EAAOsa,EAAOwzK,GACN,aAAZvzK,IACFD,EAAM,kBAAoB,WAC1BA,EAAM,mBAAqB,KAI3B8zK,IACF9zK,EAAM,yBAAsBX,EAEZ,WAAZY,IACFD,EAAM,oBAAsBxB,EAAcc,cAAc,mBAAoB,GAAIhb,EAAId,KAIxF,IAAIwgB,EAAW,GAGf,GAFAA,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI0b,IAE1C,aAAZE,GAAsC,aAAZD,EAAwB,CACpD,IAAIslB,EAAwBrhC,EAAwBQ,qBAAqBJ,EAAI,kCAC7E0f,EAASjrB,KAAK+tB,EAAIye,GAAuB,SAASwF,GAChD,OAAO7mC,EAAwB0gB,YAAYtgB,EAAIf,EAASwnC,OAI5D,GAAIhE,EAA2B,CAC7B,IAAIynC,EAAatqE,EAAwBQ,qBAAqBJ,EAAI,uBAKlE,GAJA0f,EAASjrB,KAAK+tB,EAAI0nD,GAAY,SAAS1pE,GACrC,OAAOZ,EAAwB0gB,YAAYtgB,EAAIf,EAASuB,OAG1C,cAAZmb,EAAyB,CAC3B,IAAIwD,EAAoBnf,EAAG5J,IAAI,qBAC1B+oB,IACHA,EAAoBjF,EAAcc,cAAc,yBAA0B,CAAE3Y,OAAQ,IAAMrC,EAAId,GAC9FwgB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI,CAAEmf,kBAAmBA,MAEjF,IAAI3e,EAAY0Z,EAAcc,cAAc,sBAAuB,GAAImE,EAAmBjgB,GAC1FwgB,EAASjrB,KAAK0lB,EAAUwF,6BACtB1gB,EACAkgB,EACA,SACA,oBACA,CAAE3e,GACF,MAKN,OAAOkf,MAKJngB,I,kCCjLT,W,kCCEA,IAAI6a,EAAerb,EAAQ,QACvBob,EAAYpb,EAAQ,QAEpB2wL,EAAiB,CACnB,QACA,aACA,sBAGEC,EAAa,CACf9yK,MAAO,kBACPC,WAAY,uBACZC,mBAAoB,gCAGtB,SAAS6yK,EAAW3vL,GAClB,OAAyC,IAAlCyvL,EAAe7vK,QAAQ5f,GAGhC,SAASiiD,EAAajiD,GACpB,OAAO0vL,EAAW1vL,GAIpBvK,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvD,IAAI8e,EAAwB3c,EAAQ2c,sBAChCte,EAAoB2B,EAAQ3B,kBAEhC,SAASkwL,EAAmB5vL,GAC1B,OAAQA,GACR,IAAK,QACH,OAAOd,EAAU,cACnB,IAAK,aACH,OAAOA,EAAU,cACnB,IAAK,qBACH,OAAOA,EAAU,uBACnB,QACE,MAAO,IAIX,IAAI2wL,EAAgB11K,EAAa4B,UAAU7c,EAAW,CACpDnF,GAAI,WACJ2I,MAAOxD,EAAU,SACjB+e,eAAgB,kBAChBtb,cAAe,WAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GACvBgB,EAAOge,EAAsBhf,GAC7BmjD,EAAOF,EAAajiD,GACpB0C,EAAQktL,EAAmB5vL,GAC/B,MAAO,CACL4hC,SAAU7hC,EAAG5J,IAAIgsD,GACjB2tI,gBAAiBptL,IAIrBE,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI5a,EAAKL,EAAkBV,GACvBgB,EAAOge,EAAsBhf,GAC7BmjD,EAAOF,EAAajiD,GACpBC,EAAO,GAEX,OADAA,EAAKkiD,GAAQ//C,EAAOw/B,UAAY,GACzB1nB,EAAU2B,qBAAqB7c,EAASe,EAAIE,IAGrD+b,SAAU,SAAShd,EAASoD,EAAQuY,GAClC,OAAOg1K,EAAW3xK,EAAsBhf,MAAcoD,EAAOw/B,SAAW,CAAEA,SAAU1iC,EAAU,yBAA4B,IAG5H4c,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQg1K,EAAW3xK,EAAsBhf,OAK7C,MAAO,CAAE6wL,K,oFC9EX,IAAI/rK,EAAahlB,EAAQ,QAAYglB,WAEjCoE,EAASppB,EAAQ,QAAWopB,OAC5BnE,EAAWjlB,EAAQ,QAAWklB,MAE9BnpB,EAAUiE,EAAQ,QAElB8nB,EAAwB9nB,EAAQ,QAGhCixL,EAAS,SAASrX,GACpB,SAAUA,GAAiD,mBAAzCvkL,OAAOC,UAAU2D,SAASzD,KAAKokL,KAG/CI,EAAoB,SAASJ,GAC/B,OAAOA,EAAKn5K,OAAO,CAAE,CAAEzJ,KAAM,GAAIS,MAAO,OAGtCs5B,EAAe,SAASpF,GAC1B,MAAO,kBAAoBA,EAAOl0B,MAAQ,KAAOk0B,EAAO30B,KAAO,aAgB7Dk6L,EAAY,SAAS9wL,EAAWmC,EAAS+mB,GAC3C,IAAIC,EAAWD,EACX1lB,EAAQrB,EAAQqB,OAAS2lB,EAAStuB,GAClCmhB,EAAgB7Z,EAAQ6Z,eAAiB,CAAE,CAAEplB,KAAM,GAAIS,MAAO,KAC9DoM,EAAgBtB,EAAQsB,cACxB2Y,EAAiBja,EAAQia,eACzB6N,IAAkB9nB,EAAQ+nB,UAAwC,oBAArB/nB,EAAQ+nB,SACrDd,IAAgBjnB,EAAQya,QAAoC,oBAAnBza,EAAQya,OACjDyH,EAAcliB,EAAQkiB,YAGtBjI,IACFJ,EAAgB49J,EAAkB59J,IAIpCmN,EAASjK,KACP8J,EAAO,yBAA2BpE,EAAWuE,EAAStuB,IAAM,KAC3DovB,EAAgB,6BAA+B,KAC/Cb,EAAc,wBAA0B,IACzC,IAAMxE,EAAWphB,GAHV,iCAIoBohB,EAAWuE,EAAStuB,IAAM,kBACrD+pB,EAAWnhB,GAAiB,KAC3BwmB,EAAgB,6BAA+B,KAC/Cb,EAAc,wBAA0B,IACzC,yBAEF,IAAI8gD,EAASrlD,EAAS,SAAUsE,EAASjK,MA6EzC,OA3EI2xK,EAAO70K,IACTrgB,EAAQqgB,GAAe,SAASuP,GAC9B2+C,EAAOtgD,YACLZ,EACE,kBAAoBpE,EAAW2G,EAAOl0B,QACrCk0B,EAAOvG,MAAQ,YAAcJ,EAAW2G,EAAOvG,OAAS,IACzD,MACCuG,EAAO30B,KAAOguB,EAAW2G,EAAO30B,MAAQ,IACzC,iBAOJytB,GAAkD,oBAA5BliB,EAAQswE,iBAChCtpD,EAASjK,KAAK0K,YAAYlC,EAAsB1nB,EAAWqkB,EAAa,CAAEwF,KAAMT,GAAe,cAejGD,EAAS8H,gBAAkB,SAASnxB,EAAS4lB,EAAWimB,EAAWolJ,EAAWzqI,GAC5E,GAA6B,oBAAlBtqC,EAA8B,CAEvC,IAAI7Z,EAAU6Z,EAAclc,EAAS6rC,GAErC,GAAIxpC,EAAS,CAGX,MAAOwpC,EAAUqZ,WACfrZ,EAAUva,YAAYua,EAAUqZ,YAIlCrpD,EAAQwG,GAAS,SAASopB,GACxB,IAAIpM,EAAW6J,EAAO2H,EAAapF,IAEnCogB,EAAU/hB,YAAYzK,YAQXvD,IAAb0qC,IACF3a,EAAUt0C,MAAQivD,IAKlBr8B,IACFd,EAASgB,WAAa,WACpB,OAAOhoB,EAAQ+nB,SAASv0B,MAAMwzB,EAAUY,aAIxCX,IACFD,EAASiB,SAAW,WAClB,OAAQjoB,EAAQya,OAAOjnB,MAAMwzB,EAAUY,aAI3CZ,EAAS9D,WAAa,CAAC,gBAEhB8D,GAGT5yB,EAAOD,QAAUw6L,G,mPC1IXz4L,EAAUC,iCACV8C,EAAW9C,6BAEXE,EAAcF,sCACdG,EAAcH,sCACdI,EAAWC,EAAOC,KAAP,UAAeJ,EAAf,YAA8BC,GAAe,QAAQI,SAAS,UAEzE25G,EAAa,CACjB,eAAgB,mBAChB,8BAA0B95G,IAGxByW,EAAW,GACXmlC,EAAW,GAEf,SAASnV,EAAShwB,EAAUmlC,GAC1B,IAAMh6C,EAAQ3B,EAAOC,KAAP,UAAeuW,EAAf,YAA2BmlC,GAAY,QAAQz7C,SAAS,UACtEwB,OAAMH,OAAO,WAAYI,GAG3B,IAAM02L,EAAe,WAMnB,IANmC,IAAfh8L,EAAe,uDAAN,EAEzB6b,EAAQ,iEAGRD,EAAM,GACD9b,EAAI,EAAGA,EAAIE,EAAQF,IACxB8b,GAAOC,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAGzD,OAAO4b,GAIH9X,EAAQ,CACZm6C,aAAc,GACd/W,gBAAgB,EAChB+0J,iBAAiB,EACjBvlL,aAAa,EACbwlL,WAAY,GACZC,kBAAmB,KACnBC,aAAc,GACdC,aAAc,GACdC,SAAU,GACVC,eAAe,EACfC,cAAc,EACdC,iBAAiB,EACjBC,iBAAkB,IAGd33L,EAAU,CACdk5C,aAAc,SAACn6C,GAAD,OAAWA,EAAMm6C,cAC/B/W,eAAgB,SAACpjC,GAAD,OAAWA,EAAMojC,gBACjC+0J,gBAAiB,SAACn4L,GAAD,OAAWA,EAAMm4L,iBAClCC,WAAY,SAACp4L,GAAD,OAAWA,EAAMo4L,YAC7BC,kBAAmB,SAACr4L,GAAD,OAAWA,EAAMq4L,mBACpCC,aAAc,SAACt4L,GAAD,OAAWA,EAAMs4L,cAC/BC,aAAc,SAACv4L,GAAD,OAAWA,EAAMu4L,cAC/BG,aAAc,SAAC14L,GAAD,OAAWA,EAAM04L,cAC/BC,gBAAiB,SAAC34L,GAAD,OAAWA,EAAM24L,iBAClCC,iBAAkB,SAAC54L,GAAD,OAAWA,EAAM44L,mBAG/B13L,EAAU,CACdqqF,MADc,WACEtpF,GAAS,WAAlBb,EAAkB,EAAlBA,OAEL,OAAOC,IAAMlD,IAAIoB,EAAU,sBAAwB0C,EAAQoU,SAAU,CAAC/U,QAASo4G,IAAaj4G,MAAM,SAAAe,GAChG,IAAK,IAAIxG,EAAI,EAAGA,EAAIwG,EAAK9G,KAAKQ,OAAQF,IACpC,GAAGwG,EAAK9G,KAAKM,GAAG+F,IAAMO,EAAU,CAC9B,IAAI5G,EAAO,CACT,SAAYuG,EAAQoU,SACpB,SAAYpU,EAAQu5C,UAGtB,OAAOn6C,IAAMqC,KAAKnE,EAAU,mBAAoB7D,EAAM,CAAC4F,QAASo4G,IAAaj4G,MAAM,SAAA1E,GAEjF,GAAGA,EAAOrB,KAAKm9L,cAEb,OAAOx3L,IAAMlD,IAAIoB,EAAU,YAAc0C,EAAQoU,SAAU,CAAC/U,QAASo4G,IAAaj4G,MAAM,SAAA2U,GACtFC,EAAWpU,EAAQoU,SACnBmlC,EAAWv5C,EAAQu5C,SACnBnV,EAAShwB,EAAUmlC,GACnBj6C,OAAMH,OAAO,iBAAkBa,EAAQoU,UACvC9U,OAAMH,OAAO,yBAA0BgV,EAAK1a,KAAK,GAAG+b,UAAY,IAAMrB,EAAK1a,KAAK,GAAGgc,UACnFnW,OAAMH,OAAO,sBAAuBgV,EAAK1a,KAAK,GAAGic,OACjDpW,OAAMH,OAAO,YAAakB,GAC1Bf,OAAMH,OAAO,eAAgB7B,GAC7B,IAAIojC,EAAYu1J,EAAa,KAC7B32L,OAAMH,OAAO,eAAgBuhC,GAC7B,IAAIm2J,EAASC,IAASC,IAAIC,QAAQh3L,EAAQu5C,SAAU7Y,GAAW5iC,WAC/DwB,OAAMH,OAAO,gBAAiB03L,GAC9B,IAAII,EAAYH,IAASC,IAAIC,QAAQt5L,EAAagjC,GAAW5iC,WAO7D,OANAwB,OAAMH,OAAO,kBAAmB83L,GAGhC,EAAK30L,SAAS,iBAGPlD,IAAMlD,IAAIoB,EAAU,2BAA6B8W,EAAU,CAAC/U,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAK,SAAAqX,GAClKA,EAAKpd,KAAKQ,OAAS,IACpBqF,OAAMH,OAAO,iBAAkB0X,EAAKpd,KAAK,GAAGqG,IAGtB,aAAnB+W,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,cAAc,GAIP,iBAAnB0X,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,kBAAkB,GAIX,kBAAnB0X,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,mBAAmB,GAIZ,eAAnB0X,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,gBAAgB,IAIjCA,EAAO,iBAAkBrE,EAAOrB,SAC/BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,UAExBD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,UAG1BD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,YAMjCw3L,UA3Ec,YA2EM,IAAT/3L,EAAS,EAATA,OACL1F,EAAO,CACT,UAAa,CACX,IAAO,CAAE,MAAS,OAAQ,KAAQ,WAEpC,uBAAyB,GAG3B,OAAO2F,IAAMqC,KAAKnE,EAAU,8CAA+C7D,EAAM,CAAC4F,QAASo4G,IAAaj4G,MAAM,SAAAe,GAC5G,IAAI42L,EAAWppL,KAAKC,MAAMzN,EAAK9G,KAAKoT,UAAUuqL,aAAa96L,OAE3Da,OAAO+sB,KAAKitK,GACZh4L,EAAO,YAAaoB,MACnBd,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B23L,iBA5Fc,WA4FoBr3L,GAAS,WAAzBjC,EAAyB,EAAzBA,MAAOoB,EAAkB,EAAlBA,OAEvB,OAAOC,IAAMlD,IAAIoB,EAAU,sBAAwB0C,EAAQoU,SAAU,CAAC/U,QAASo4G,IAAaj4G,MAAM,SAAAe,GAChG,IAAK,IAAIxG,EAAI,EAAGA,EAAIwG,EAAK9G,KAAKQ,OAAQF,IACpC,GAAGwG,EAAK9G,KAAKM,GAAG+F,IAAMO,EAEpB,OAAOjB,IAAMlD,IAAIoB,EAAU,YAAc0C,EAAQoU,SAAU,CAAC/U,QAASo4G,IAAaj4G,MAAM,SAAA2U,GACtF7U,OAAMH,OAAO,WAAYxB,GACzB2B,OAAMH,OAAO,iBAAkBgV,EAAK1a,KAAK,GAAGqG,IAC5CR,OAAMH,OAAO,yBAA0BgV,EAAK1a,KAAK,GAAG+b,UAAY,IAAMrB,EAAK1a,KAAK,GAAGgc,UACnFnW,OAAMH,OAAO,sBAAuBgV,EAAK1a,KAAK,GAAGic,OACjDpW,OAAMH,OAAO,YAAakB,GAC1Bf,OAAMH,OAAO,eAAgB7B,GAC7B,IAAIojC,EAAYu1J,EAAa,KAC7B32L,OAAMH,OAAO,eAAgBuhC,GAC7B,IAAIm2J,EAASC,IAASC,IAAIC,QAAQh3L,EAAQu5C,SAAU7Y,GAAW5iC,WAC/DwB,OAAMH,OAAO,gBAAiB03L,GAC9B,IAAII,EAAYH,IAASC,IAAIC,QAAQt5L,EAAagjC,GAAW5iC,WAI7D,GAHAwB,OAAMH,OAAO,kBAAmB83L,GAG7Bl5L,EAAM4S,YAAa,CACpB,IAAI2mL,EAAWR,IAASC,IAAIQ,QAAQj4L,OAAMvB,MAAM6iC,aAActhC,OAAMvB,MAAM2iC,WACtEokD,EAAW,CACb,SAAY9kF,EAAQu5C,SACpB,0BAA6B+9I,EAASx5L,SAASg5L,IAASU,IAAIC,OAE9Dr4L,IAAMsC,IAAIpE,EAAU,SAAW0C,EAAQoU,SAAW,eAAgB0wE,EAAU,CAACzlF,QAASo4G,IAAaj4G,MAAM,SAAAmB,GACtF,KAAdA,EAAIS,QACLjC,EAAO,qBAAsBa,EAAQoU,aAEtC3U,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OAI3B,IAAIg4L,EAAe,CACjB,kBAAqB13L,EAAQoU,SAC7B,eAAiB,GAOnB,OAHA,EAAK9R,SAAS,iBAGPlD,IAAMlD,IAAIoB,EAAU,2BAA6B0C,EAAQoU,SAAU,CAAC/U,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAK,SAAAqX,GAC1KA,EAAKpd,KAAKQ,OAAS,IACpBqF,OAAMH,OAAO,iBAAkB0X,EAAKpd,KAAK,GAAGqG,IAGtB,aAAnB+W,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,cAAc,GAIP,kBAAnB0X,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,mBAAmB,GAIZ,eAAnB0X,EAAKpd,KAAK,GAAGqG,IACdR,OAAMH,OAAO,gBAAgB,IAI9BpB,EAAMojC,gBACPhiC,EAAO,gBAAiBa,EAAQq2L,cAE/Bt4L,EAAMqjC,gBACPjiC,EAAO,gBAAiBa,EAAQs2L,cAElCn3L,EAAO,iBAAkBu4L,MACxBj4L,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,UAExBD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OAM7B,GAAwB,IAArBa,EAAK9G,KAAKQ,SAAiB8D,EAAM04L,aAAc,CAChDn3L,OAAMH,OAAO,WAAYxB,GACzB,IAAI9B,EAAOmE,EAAQnE,KAAK2W,MAAM,KAC1BgD,EAAY,OACZC,EAAW,OAEZ5Z,EAAK,KACN2Z,EAAY3Z,EAAK,IAEhBA,EAAK,KACN4Z,EAAW5Z,EAAK,IASlB,IALA,IAAI87L,EAAU,GACV19L,EAAS,EACT6b,EAAQ,6BAGH/b,EAAI,EAAGA,EAAIE,EAAQF,IAC1B49L,GAAW7hL,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAG3DA,EAAS,EACT6b,EAAQ,UAGR,IAAK,IAAI/b,EAAI,EAAGA,EAAIE,EAAQF,IAC1B49L,GAAW7hL,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAG3DA,EAAS,EACT6b,EAAQ,6BAGR,IAAK,IAAI/b,EAAI,EAAGA,EAAIE,EAAQF,IAC1B49L,GAAW7hL,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAG3DA,EAAS,EACT6b,EAAQ,aAGR,IAAK,IAAI/b,EAAI,EAAGA,EAAIE,EAAQF,IAC1B49L,GAAW7hL,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAG3DA,EAAS,EACT6b,EAAQ,wEAGR,IAAK,IAAI/b,EAAI,EAAGA,EAAIE,EAAQF,IAC1B49L,GAAW7hL,EAAMC,OAAOC,KAAKC,MAAMD,KAAKE,SAAWJ,EAAM7b,SAG3D,IAAI29L,EAAY,GACb75L,EAAMojC,iBACPy2J,EAAY53L,EAAQq2L,cAEnBt4L,EAAMqjC,iBACPw2J,EAAY53L,EAAQs2L,cAGtB,IAAIlyG,EAAc,CAChB,QAAW,CACT,GAAMpkF,EAAQoU,SACd,UAAaoB,EACb,SAAYC,EACZ,MAASmiL,GAEX,YAAe,CACb,SAAYD,IAGhB,EAAKr1L,SAAS,UAAW8hF,GAAa5kF,MAAK,WAEzC,IAAIsD,EAAc,CAChB,GAAM,WACN,OAAU9C,EAAQoU,UAEpB,EAAK9R,SAAS,gBAAiBQ,GAAatD,MAAM,WAChDL,EAAO,kBAAkB,cAMnC04L,cArQc,YAqQU,WAAT14L,EAAS,EAATA,OACb,OAAOC,IAAMlD,IAAIiB,OAAOmS,SAASuwE,OAAS,kBAAmB,CAACxgF,QAAS,CAAC,eAAgB,sBAAsBG,MAAM,SAAAe,GAClH,IAAIu3L,EAAkBv3L,EAAK9G,KAAKs+L,aAAa,GAAGD,gBAC5CE,EAAaz3L,EAAK9G,KAAKs+L,aAAa,GAAGC,WAE3C,IAAIF,GAAmBE,EAAY,CACjC74L,EAAO,mBAAmB,GAE1BA,EAAO,SAAU,IACjBA,EAAO,sBAAuB,IAC9BA,EAAO,YAAa,IACpBA,EAAO,mBAAoB,IAC3BA,EAAO,aAAc,IACrBA,EAAO,WAAY,IACnBA,EAAO,oBAAqB,IAC5BA,EAAO,YAAa,IACpBA,EAAO,gBAAiB,IACxBA,EAAO,kBAAmB,IAC1BA,EAAO,aAAc,IACrBA,EAAO,YAAa,IACpBA,EAAO,gBAAiB,IACxBA,EAAO,kBAAmB,IAC1BA,EAAO,cAAe,IACtBA,EAAO,YAAa,IACpBA,EAAO,YAAa,IACpBA,EAAO,oBAAqB,IAC5BA,EAAO,mBAAoB,IAC3BA,EAAO,aAAc,IACrBA,EAAO,sBAAsB,GAG7B,IAAIqD,EAAM,QAAUlD,OAAMvB,MAAM2F,YAAc,eAC1Cu0L,EAAK,IAAIvsK,KACTjR,EAAW,IAAI84D,KAAKC,eAAe,QACrC,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOkkH,GAER99K,EAAU,CACZ,SAAY,QACZ,OAAU7a,OAAMvB,MAAM2F,YACtB,OAAU,EACV,YAAe,KACf,SAAY,KACZ,UAAa,SACb,IAAOlB,EACP,SAAYiY,GAEd,EAAKnY,SAAS,cAAe6X,GAE7B,EAAK7X,SAAS,aAAa9C,KAA3B,wCAAiC,8GACzB,EAAK8C,SAAS,UACnB9C,MAAK,WACJ,EAAK8C,SAAS,sBAHe,gDAOlC7C,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAGrBw4L,UAxUQ,WAwUYl4L,GAAS,uKAAlBb,EAAkB,EAAlBA,OAEXg5L,EAAan4L,EAAQoU,SAEtB+jL,EAAWnhJ,SAAS,QACrBmhJ,EAAaA,EAAW3lL,MAAM,MAAM,IAEtC2lL,EAAaA,EAAW3oL,QAAQ,cAAe,IAPd,SAS3B,EAAKlN,SAAS,YAAa61L,GAAY34L,MAAM,SAAAmkF,GACjD,GAAGA,EAAQ,CACT,IAAIlqF,EAAO,CACT,UAAa,CACX,YAAe,CAAE,MAAS,QAAS,KAAQ,UAC3C,aAAgB,CAAE,MAASuG,EAAQoU,SAAU,KAAQ,UACrD,aAAgB,CAAE,MAASpU,EAAQu5C,SAAU,KAAQ,WAEvD,uBAAyB,GAG3B,OAAOn6C,IAAMqC,KAAKnE,EAAU,oDAAsD+C,EAAW,SAAU5G,EAAM,CAAC4F,QAASo4G,IAAaj4G,MAAM,SAAAe,GACxI,IAAIm2L,EAAkBn2L,EAAK9G,KAAKoT,UAAU6pL,gBAAgBp6L,MAE1D6C,EAAO,oBAAqBu3L,MAC3Bj3L,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OAGzBP,EAAO,sBAAuB,gFA5BD,8CAgCnCi5L,gBAxWc,WAyWZ92I,OAAO/mD,KAAK,MAER89C,OA3WQ,YA2WgB,+KAAhBt6C,EAAgB,EAAhBA,MAAOoB,EAAS,EAATA,OACfiV,EAAW9U,OAAMvB,MAAM2F,YAExB3F,EAAMojC,gBAA8B,WAAZ/sB,IACnBikL,EAAU,IAAIC,OAA6Bv6L,EAAMo4L,YAEjDoC,EAAY,CAChBC,QAASH,EAAQI,qBAAqB16L,EAAMs4L,eAE9CgC,EAAQK,YAAYH,IAGnBx6L,EAAMqjC,iBAAmBrjC,EAAMy4L,eAA6B,WAAZpiL,IAC7CukL,EAAUx7L,OAAOmS,SAASuwE,OAAS,mBACvC1iF,OAAOmS,SAASC,KAAOopL,GAQzB,EAAKr2L,SAAS,YAEdnD,EAAO,mBAxBqB,mBA0BrB,GA1BqB,+CA8B1BwE,EAAY,CAChBi1L,eADgB,SACD76L,EAAOiC,GACpBjC,EAAMm6C,aAAel4C,EACrBV,OAAMH,OAAO,iBAAiB,IAEhC05L,iBALgB,SAKC96L,EAAOiC,GACtBjC,EAAMojC,eAAiBnhC,EACvBV,OAAMH,OAAO,qBAAqB,GAClCG,OAAMH,OAAO,qBAAqB,IAEpC25L,iBAVgB,SAUC/6L,EAAOiC,GACtBjC,EAAMqjC,eAAiBphC,EACvBV,OAAMH,OAAO,qBAAqB,GAClCG,OAAMH,OAAO,qBAAqB,IAEpC45L,aAfgB,SAeHh7L,EAAOiC,GAClBjC,EAAM4S,YAAc3Q,GAEtBg5L,YAlBgB,SAkBJj7L,EAAOiC,GACjBjC,EAAMo4L,WAAan2L,GAErBi5L,oBArBgB,SAqBIl7L,EAAOiC,GACzBjC,EAAMq4L,kBAAoBp2L,GAE5Bk5L,cAxBgB,SAwBFn7L,EAAOiC,GACnBjC,EAAMs4L,aAAer2L,GAEvBm5L,eA3BgB,SA2BDp7L,EAAOiC,GACpBjC,EAAMu4L,aAAet2L,GAEvBo5L,eA9BgB,SA8BDr7L,EAAOiC,GACpBjC,EAAM04L,aAAez2L,GAEvBq5L,UAjCgB,SAiCNt7L,EAAOiC,GACfjC,EAAMw4L,SAAWv2L,GAEnBs5L,gBApCgB,SAoCAv7L,EAAOiC,GACrBjC,EAAMy4L,cAAgBx2L,GAExBu5L,kBAvCgB,SAuCEx7L,EAAOiC,GACvBjC,EAAM24L,gBAAkB12L,GAE1Bw5L,oBA1CgB,SA0CIz7L,EAAOiC,GACzBjC,EAAM44L,iBAAmB32L,GAE3By5L,gBA7CgB,WAiDdn6L,OAAMH,OAAO,iBAAiB,GAC9BG,OAAMH,OAAO,qBAAqB,GAClCG,OAAMH,OAAO,qBAAqB,GAClCG,OAAMH,OAAO,kBAAkB,GAG/B2mC,eAAe+K,UAIJ,QACb9yC,QACAiB,UACAC,UACA0E,e,0JC3gBF,IAAI4zB,EAAa1yB,EAAQ,QAAW2yB,QAChCvJ,EAASppB,EAAQ,QAAWopB,OAC5BnE,EAAWjlB,EAAQ,QAAWklB,MAE9B7iB,EAASrC,EAAQ,QAAYqC,OAC7B8a,EAAOnd,EAAQ,QAAYmd,KAC3BphB,EAAUiE,EAAQ,QAAYjE,QAC9B84L,EAAW70L,EAAQ,QAAY60L,SAE/B7vK,EAAahlB,EAAQ,QAAYglB,WAEjC8C,EAAwB9nB,EAAQ,QAEhC80L,EAAe,SAEfC,EAAoB,MAEpBC,EAAiB,QAEjBC,EAAgC,GAEhC1vK,EAAO,aAGP2vK,EAAqB,SAAS90L,EAAWmC,EAAS+mB,GAEpD,IAAIC,EAAWD,EACX1lB,EAAQrB,EAAQqB,OAAS2lB,EAAStuB,GAClC0nF,IAAepgF,EAAQ0nB,MAAgC,oBAAjB1nB,EAAQ0nB,KAC9CxF,EAAcliB,EAAQkiB,YA2I1B,SAAS0wK,EAA0BC,EAAU92F,GAC3C,IAAI+2F,EAAQC,IAAoBD,MAC5BE,EAAeF,EAAMv2D,wBACrB02D,EAAel3F,EAAUwgC,wBACzB22D,EAAaL,EAASt2D,wBAEtBpoC,EAAc,CAChB,WAAY,CACVznD,EAAGsmJ,EAAajjE,MAAQmjE,EAAW7oJ,MACnCoC,EAAGumJ,EAAazlG,IAAM2lG,EAAW5oJ,QAEnC,YAAa,CACXoC,EAAGsmJ,EAAajjE,MAChBtjF,EAAGumJ,EAAazlG,IAAM2lG,EAAW5oJ,QAEnC,cAAe,CACboC,EAAGsmJ,EAAajjE,MAAQmjE,EAAW7oJ,MACnCoC,EAAGumJ,EAAazlG,IAAMmlG,GAExB,eAAgB,CACdhmJ,EAAGsmJ,EAAajjE,MAChBtjF,EAAGumJ,EAAazlG,IAAMmlG,IAItB9iE,EAAc,GAclB,OAXEA,EADEojE,EAAazlG,IAAMmlG,EAAgCQ,EAAW5oJ,OAAU2oJ,EAAa3oJ,OAAS2oJ,EAAa1lG,IAC/F,OAEA,UAGZylG,EAAajjE,MAAQmjE,EAAW7oJ,MAAS4oJ,EAAa5oJ,MAAQ4oJ,EAAah5D,KAC7ErK,GAAe,OAEfA,GAAe,QAGV,CAAEA,YAAaA,EAAavjF,SAAU8nD,EAAYy7B,IAQ3D,OAxLA5oG,EAASjK,KACP8J,EAAO,yBACepE,EAAWuE,EAAStuB,IAAM,MAC7C0nF,EAAa,sBAAwB,IACtC,IAAM/+E,EAHD,2CAKJ++E,EAAa,sBAAwB,IALjC,6CASgB39D,EAAWuE,EAAStuB,IATpC,WAUQ+pB,EAAWziB,EAAQsB,eAV3B,uHAiBL4gB,GACFQ,EAAS,qBAAsBsE,EAASjK,MAAM0K,YAAYlC,EAAsB1nB,EAAWqkB,IAGzFk+D,IACFp5D,EAASu7B,QAAU,WACjB,OAAOviD,EAAQ0nB,KAAKl0B,MAAMwzB,EAAUY,aAOxCZ,EAASmsK,iBAAmBb,GAAS,SAAS30L,EAAS4lB,GACrD6vK,EAAoB7vK,GACpB8vK,EAAmB9vK,KAClBivK,GASHxrK,EAASssK,aAAe,SAAS31L,EAAS4lB,EAAWpI,GACnD,IAAIo4K,EAAap4K,EAAMq4K,eACnBV,EAAQC,IACRU,EAAYX,EAAMW,UAClBC,EAAgBC,EAAiBb,EAAMA,OACvCc,EAAa5zL,EAAQ4zL,YAAc5wK,EACnC6wK,EAAW7zL,EAAQ6zL,SAEvB,SAASC,EAAqBrtK,GAC5B,IAAIosK,EAAWnwK,EAAS,wBAAyBa,GAMjD,GAHA6vK,EAAoB7vK,GAGfkD,EAAM5zB,OAAX,CAIAs9B,EAAW0iK,GAAUn6K,IAAI65K,GAGzB/4L,EAAQitB,GAAO,SAAShtB,GACtBs6L,EAAqBlB,EAAUp5L,MAIjC,IAAI4yC,EAAWumJ,EAA0BC,EAAUtrK,SAASzT,MAAMu4B,SAClE2nJ,EAAYnB,EAAUxmJ,EAASK,EAAGL,EAASI,IAG7C,SAASsnJ,EAAqBrrK,EAAYxzB,GACxC,IAAI++L,EAAWptK,EAAO,4CACtBotK,EAASC,UAAYzxK,EAAWvtB,GAEhCwzB,EAAWjB,YAAYwsK,GAEvBA,EAASpgJ,iBAAiB,QAASsgJ,GAGrC,SAASA,EAAgBh5K,GACvB,IAAIjmB,EAAQimB,EAAMiR,OAAO8nK,UACrBE,EAAYC,EAAY36L,MACxBoiI,EAAQs4D,EACR12C,EAAM02C,EAAYC,EAAY,GAAGxhM,OAErCyhM,EAAYb,EAAW33D,EAAO4hB,GAE9Bn2H,SAASgtK,YAAY,cAAc,EAAOr/L,GAE1Ck+L,EAAoB7vK,GACpB8vK,EAAmB9vK,GAGrB8vK,EAAmB9vK,GAEnB,IAAI8wK,EAAeG,EAAmBf,EAAWC,IAAkB,GAEnE,GAAIW,GAAeT,EAAWS,EAAad,EAAYE,GAAY,CACjE,IAAIhtK,EAAQotK,EAASl2L,EAAS4lB,GAC1BkjD,EAAU,GACVvxE,EAAQm/L,EAAY,GAKxB76L,EAAQitB,GAAO,SAAShtB,GACtB,IAAIg7L,EAAgBh7L,EAAKmzB,cACrB8nK,EAAiBx/L,GAASA,EAAM03B,cAEU,IAA1C6nK,EAAcl2K,QAAQm2K,IACxBjuH,EAAQtzE,KAAKsG,MAIjBD,EAAQitB,GAAO,SAAShtB,GACtB,IAAIg7L,EAAgBh7L,EAAKmzB,YAAYnzB,GACjCi7L,EAAiBx/L,GAASA,EAAM03B,cAEhC6nK,EAAcl2K,QAAQm2K,IAAmB,GAC3CjuH,EAAQtzE,KAAKsG,MAIjBq6L,EAAqBrtH,KAoDzBz/C,EAAS4rK,0BAA4BA,EAGrC5rK,EAAS9D,WAAa,CAAC,2BAEhB8D,GAQT,SAAS+rK,IACP,IAAIjnK,EAAYvE,SAASotK,eAEzB,MAAO,CACL7B,MAAOhnK,EAAU8oK,WAAW,GAC5BnB,UAAW3nK,EAAU2nK,WAIzB,SAASE,EAAiBb,GACxB,OAAOA,EAAM+B,YAGf,SAASP,EAAYb,EAAW33D,EAAO4hB,GACrC,IAAIo1C,EAAQvrK,SAASutK,cACjBhpK,EAAY/1B,OAAO4+L,eAEvB7B,EAAMiC,SAAStB,EAAW33D,GAC1Bg3D,EAAMkC,OAAOvB,EAAW/1C,GAExB5xH,EAAUmpK,kBAEVnpK,EAAUopK,SAASpC,GAGrB,SAASO,EAAmB9vK,GAC1B,IAAIsvK,EAAWnwK,EAAS,wBAAyBa,GACjD4M,EAAW0iK,GAAU9hK,OAAOwhK,GAG9B,SAASa,EAAoB7vK,GAC3B,IAAIsvK,EAAWnwK,EAAS,wBAAyBa,GACjD,MAAOsvK,EAAShwI,WACdgwI,EAAS5jK,YAAY4jK,EAAShwI,YAIlC,SAAS2xI,EAAmBl7K,EAAM67K,GAChC,IAAIjgM,EAAQokB,EAAK87K,WAAa3C,EAAiBn5K,EAAK+7K,UAAY/7K,EAAK46K,UACjEoB,EAAWC,EAAUrgM,GAEzB,OAAO0lB,EAAK06K,GAAU,SAASE,GAC7B,IAAIC,EAAaD,EAAK,GAClBE,EAAYF,EAAK97L,MACjBi8L,EAAUD,EAAYD,EAAW5iM,OAAS,EAE9C,OACE6iM,GAAcP,EAAuB,GACrCQ,GAAYR,EAAuB,KAYzC,SAASI,EAAUrgM,GAGjB,OAAO0gM,EAAS1gM,EAAO,+BAGzB,SAAS0gM,EAAS1gM,EAAO2gM,GACvB,IACIxoJ,EADA7F,EAASC,OAAOouJ,GAEhBtvG,EAAU,GAEd,MAAwC,QAAhCl5C,EAAQ7F,EAAO+F,KAAKr4C,IAC1BqxF,EAAQpzF,KAAKk6C,GAGf,OAAOk5C,EAGT,SAASytG,EAAYjzJ,EAAI2L,EAAGD,GAC1B3sC,EAAOihC,EAAGmsD,MAAO,CAAE+sC,KAAMvtF,EAAI,KAAM6gD,IAAK9gD,EAAI,OApF9Cr4C,EAAOD,QAAUw+L,G,yDC1NjB,IAAIv0L,EAAKX,EAAQ,QAAwDW,GACrEqiB,EAAQhjB,EAAQ,QAAwFgjB,MACxGpiB,EAAoBZ,EAAQ,QAAwDY,kBACpFgjB,EAAwB5jB,EAAQ,QAEhCjE,EAAUiE,EAAQ,QAElBypC,EAAUzpC,EAAQ,QAClBq4L,EAASr4L,EAAQ,QACjBnF,EAAQmF,EAAQ,QAChBs4L,EAAat4L,EAAQ,QACrBub,EAAQvb,EAAQ,QAChBu0F,EAAev0F,EAAQ,QACvBurC,EAAYvrC,EAAQ,QAGxBrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaikC,EAAiBhkC,GACtE,IAAIm4L,EAAS,CACX,kBACA,gBACA,8BACA,qBACA,+BAIFx8L,EAAQw8L,GAAQ,SAAS76K,GACvB,GAAI/c,EAAGT,EAASwd,GAAQ,CAEtB,IAAIutD,EAAyBrnD,EAAsBmO,0BAA0B7xB,GACzEqtB,EAAwB3J,EAAsB4J,yBAAyBttB,GAEvE+qE,GACFxhC,EAAQxpC,EAAOC,EAASC,EAAa8qE,EAAwB7qE,GAG3DmtB,GACF8qK,EAAOp4L,EAAOC,EAASC,EAAaotB,EAAuBntB,OAO7DO,EAAGT,EAAS,qBACdupC,EAAQxpC,EAAOC,EAASC,EAAaS,EAAkBV,GAAUE,GAInE,IAAI2hF,EAAc,CAChB,kBACA,qBACA,iBAGFhmF,EAAQgmF,GAAa,SAASrkE,GAC5B,GAAI/c,EAAGT,EAASwd,GAAQ,CAEtB,IAAIgqB,EAAuB9jB,EAAsBoO,wBAAwB9xB,GAErEwnC,GAEF7sC,EAAMoF,EAAOC,EAASC,EAAaunC,EAAsBtnC,OAM/D,IAAIo4L,EAAmB,CACrB,kBACA,qBACA,8BACA,iBAGFz8L,EAAQy8L,GAAkB,SAAS96K,GACjC,GAAI/c,EAAGT,EAASwd,GAAQ,CAEtB,IAAIktD,EAA6BjqE,EAAGT,EAAS,oBAAsBS,EAAGT,EAAS,sBAG3EyqE,EAA4B/mD,EAAsBqO,6BAA6B/xB,GAE/EyqE,GACF2tH,EAAWr4L,EAAOC,EAASC,EAAawqE,EAA2BC,EACjExqE,OAOR,IAAIq4L,EAAc,CAChB,kBACA,qBACA,+BAGF18L,EAAQ08L,GAAa,SAAS/6K,GAC5B,GAAI/c,EAAGT,EAASwd,GAAQ,CAGtB,IAAIvB,EAAuByH,EAAsBjG,wBAAwBzd,GAErEic,GACFZ,EAAMtb,EAAOC,EAASC,EAAagc,EAAsB/b,OAM/D,IAAIs4L,EAAqB,CACvB,gBACA,+BAGF38L,EAAQ28L,GAAoB,SAASh7K,GACnC,GAAI/c,EAAGT,EAASwd,GAAQ,CAGtB,IAAI+6J,EAA4B70J,EAAsBsO,6BAA6BhyB,GAE/Eu4K,GACFlkF,EAAat0F,EAAOC,EAASC,EAAas4K,EAA2Br0I,EAAiBhkC,OAO5F,IAAIu4L,EAAoB,CACtB,kBACA,qBACA,8BACA,+BAGF,GAAI31K,EAAM9iB,EAASy4L,GAAoB,CAGrC,IAAIvtJ,EAA6BxnB,EAAsBwO,8BAA8BlyB,GAEjFkrC,GACFG,EAAUtrC,EAAOC,EAASC,EAAairC,EAA4BhH,EAAiBhkC,M,kCC/I1F,IAAI+9C,EAA+Bn+C,EAAQ,QAE3C,SAAS44L,EAAiBv2K,EAAckF,EAAkBnF,GACxDC,EAAaG,gBACX,2CACA27B,GAIF/7B,EAASE,GAAG,CAAE,2CAA4C,SAAS9e,GACjEq1L,EAAqBr1L,EAAQA,QAAQomF,MAAOriE,EAAkBlF,MAIhED,EAASE,GAAG,CAAE,gDAAiD,SAAS9e,GACtEq1L,EAAqBr1L,EAAQA,QAAQysF,WAAY1oE,EAAkBlF,MAYvE,SAASw2K,EAAqB34L,EAASqnB,EAAkBlF,GAEvD,IAAKkF,EAAiBlwB,IAAI6I,IAAYqnB,EAAiBlE,WAAWnjB,GAAU,CAE1E,IAAI44L,EAAU,2CACVC,EAAiB,CACnB74L,QAASA,EACTo9C,YAAa/1B,EAAiBlE,WAAWnjB,IAG3CmiB,EAAamiB,QAAQs0J,EAASC,IAlBlCH,EAAiBn2K,QAAU,CAAE,eAAgB,mBAAoB,YAGjE9rB,EAAOD,QAAU,CACfgsB,SAAU,CAAEk2K,K,gECvBd,IAAIj4L,EAAKX,EAAQ,QAAwDW,GACrEC,EAAoBZ,EAAQ,QAAwDY,kBAEpFmqH,EAAoB/qH,EAAQ,QAEhCrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaC,GACrD,IAAIwqB,EAAiBhqB,EAAkBV,IAEnCS,EAAGT,EAAS,sBACZS,EAAGT,EAAS,qBAAuB0qB,EAAevzB,IAAI,iBAExD4I,EAAMO,QAAUP,EAAMO,QAAQC,OAAOsqH,EAAkB7qH,EAASC,EAAa,CAC3ES,kBAAmB,SAASV,GAC1B,IAAIe,EAAKL,EAAkBV,GAE3B,OAAKS,EAAGM,EAAI,oBAILA,EAAG5J,IAAI,cAHL4J,IAKVb,O,kCCrBP,IAAIib,EAAerb,EAAQ,QAEvBob,EAAYpb,EAAQ,QAExBrJ,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvD,IAAIQ,EAAoB2B,EAAQ3B,kBAE5Bo4L,EAAyB39K,EAAa4B,UAAU7c,EAAW,CAC7DnF,GAAI,oBACJ2I,MAAOxD,EAAU,wBACjByD,cAAe,oBAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GACvB6qH,EAAoB9pH,EAAG5J,IAAI,+BAE/B,MAAO,CACL0zH,kBAAmBA,GAAwC,KAI/DjnH,IAAK,SAAS5D,EAASoD,GACrB,IAAIrC,EAAKL,EAAkBV,GAC3B,OAAOkb,EAAU2B,qBAAqB7c,EAASe,EAAI,CACjD,8BAA+BqC,EAAOynH,wBAAqB/uG,OAMjE,MAAO,CAAEg9K,K,kCC/BX,IAAI32L,EAASrC,EAAQ,QAEjBqb,EAAerb,EAAQ,QAEvB2jB,EAAqB3jB,EAAQ,QAC7B4jB,EAAwB5jB,EAAQ,QAChCob,EAAYpb,EAAQ,QAExB,SAAS6jB,EAAc5iB,GACrB,OAAO0iB,EAAmBE,cAAc5iB,GAG1C,SAAS6iB,EAAa7iB,GACpB,OAAO0iB,EAAmBG,aAAa7iB,GAGzC,SAASg4L,EAAYh4L,GACnB,OAAO0iB,EAAmBs1K,YAAYh4L,GAGxC,SAAS+iB,EAA8B/iB,EAAIf,GACzC,OAAOyjB,EAAmBK,8BAA8B/iB,EAAIf,GAG9D,SAASg5L,EAAiCh5L,GACxC,OAAQ0jB,EAAsBjG,wBAAwBzd,GAGxDvJ,EAAOD,QAAU,SAASwJ,EAASC,EAAaoC,EAASnC,GAEvD,IAAIQ,EAAoB2B,EAAQ3B,kBAE5BN,EAAWiC,EAAQjC,UAAY,GAC/B8jB,EAAc7hB,EAAQ6hB,aAAe,GAGrC+0K,EAAmB99K,EAAasM,SAASvnB,EAAW,CACtDnF,GAAIqF,EAAW,cACfsD,MAAOwgB,EAAchkB,EAAU,uBAC/ByD,cAAe,cAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GAC3B,MAAO,CACLk5L,YAAav1K,EAAc5iB,KAI/B6C,IAAK,SAAS5D,EAASoD,GACrB,IAAIrC,EAAKL,EAAkBV,GACvBk5L,IAAgB91L,EAAO81L,YAEvBz8K,EAAQ,CACV,wBAAyBy8K,EACzB,mBAAmB,GAGjBz4K,EAAW,GASf,OARKmD,EAAa7iB,IAAQm4L,IACxBz8K,EAAQta,EAAO,CAAE,uBAAwB,GAAQsa,GAC7Cu8K,EAAiCh5L,IACnCygB,EAASjrB,KAAKsuB,EAA8B/iB,EAAIf,KAIpDygB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI0b,IACnDgE,KAKP04K,EAAkBh+K,EAAasM,SAASvnB,EAAW,CACrDnF,GAAIqF,EAAW,aACfsD,MAAOwgB,EAAchkB,EAAU,sBAC/ByD,cAAe,aAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GAC3B,MAAO,CACLo5L,WAAYx1K,EAAa7iB,KAI7B6C,IAAK,SAAS5D,EAASoD,GACrB,IAAIrC,EAAKL,EAAkBV,GACvBo5L,IAAeh2L,EAAOg2L,WAEtB38K,EAAQ,CACV,uBAAwB28K,GAGtB34K,EAAW,GASf,OARKkD,EAAc5iB,IAAQq4L,IACzB38K,EAAQta,EAAO,CAAE,uBAAwB,GAAQsa,GAC7Cu8K,EAAiCh5L,IACnCygB,EAASjrB,KAAKsuB,EAA8B/iB,EAAIf,KAIpDygB,EAASjrB,KAAK0lB,EAAU2B,qBAAqB7c,EAASe,EAAI0b,IACnDgE,KAKP44K,EAAiBl+K,EAAasM,SAASvnB,EAAW,CACpDnF,GAAIqF,EAAW,YACfsD,MAAOwgB,EAAchkB,EAAU,aAC/ByD,cAAe,YAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAI5a,EAAKL,EAAkBV,GAC3B,MAAO,CAAEs5L,UAAWP,EAAYh4L,KAGlC6C,IAAK,SAAS5D,EAASoD,GACrB,IAAIrC,EAAKL,EAAkBV,GAC3B,OAAOkb,EAAU2B,qBAAqB7c,EAASe,EAAI,CAAE,wBAAyBqC,EAAOk2L,aAGvFx8K,OAAQ,SAAS9c,GACf,IAAIe,EAAKL,EAAkBV,GAC3B,OAAOe,IAAO6iB,EAAa7iB,KAAQ4iB,EAAc5iB,MAIrD,MAAO,CAAEk4L,EAAkBE,EAAiBE,K,oFC9H9C,IAAI54L,EAAKX,EAAQ,QAA2DW,GACxEC,EAAoBZ,EAAQ,QAA2DY,kBAEvFoiB,EAAQhjB,EAAQ,QAA2FgjB,MAE3G25D,EAAuB38E,EAAQ,QAAuC28E,qBAEtE36D,EAAShiB,EAAQ,QAAYgiB,OAC7ByB,EAAMzjB,EAAQ,QAAYyjB,IAC1Bu/D,EAAShjF,EAAQ,QAAYgjF,OAE7B7nE,EAAgBnb,EAAQ,QACxBob,EAAYpb,EAAQ,QACpB4f,EAAQ5f,EAAQ,QAEhBqb,EAAerb,EAAQ,QACvBqd,EAAuBrd,EAAQ,QAE/BilB,EAAWjlB,EAAQ,QAAWklB,MAmXlC,SAASjJ,EAAc/a,EAAM6a,EAAQ4D,EAASK,GAC5C,OAAO7E,EAAcc,cAAc/a,EAAM8e,EAAYjE,EAAQ4D,GAG/D,SAASH,EAASa,GAChB,OAAO1f,EAAG0f,EAAM,oBAGlB,SAAS4wK,EAAO5wK,GACd,OAAO1f,EAAG0f,EAAM,kBAGlB,SAASo5K,EAAMp5K,GACb,OAAO1f,EAAG0f,EAAM,iBAGlB,SAAS4iE,EAAWj7E,GAClB,OAAOg7E,EAAOh7E,GAAW,SAAS+yE,GAChC,OAAOA,EAAS/jF,QAIpB,SAASqkF,EAASn7E,GAChB,IAAI0qB,EAAiBhqB,EAAkBV,GAEvC,GAAI8iB,EAAM4H,EAAgB,CAAE,eAAgB,oBAC1C,OAAOA,EAAe3vB,GAIxB,IAAI8gB,EAAS6O,EAEb,MAAO7O,EAAO7Y,UAAY8f,EAAMjH,EAAQ,CAAE,eAAgB,oBACxDA,EAASA,EAAO7Y,QAGlB,OAAO6Y,EAAO9gB,GAGhB,SAAS+H,EAAe9C,GACtB,IAAI0qB,EAAiBhqB,EAAkBV,GACnC6b,EAAS6O,EAEb,MAAO7O,EAAO7Y,UAAYvC,EAAGob,EAAQ,gBACnCA,EAASA,EAAO7Y,QAGlB,OAAO6Y,EAGT,SAAS29K,EAAmBjiM,EAAOwE,GACjC,IAAI09L,EAAYliM,EAAMqpB,QAAQ,MAC1B84K,EAAaniM,EAAMqpB,QAAQ,KAE/B,OACE64K,GAAa,GAAKA,GAAa19L,GAC/B29L,GAAc,GAAK39L,EAAQ29L,EAI/B,SAASC,EAA2BpiM,EAAOwE,GACzC,IAAI29L,EAAaniM,EAAMqiM,YAAY,IAAK79L,GACpC09L,EAAYliM,EAAMqpB,QAAQ,KAAM84K,EAAa,GAEjD,OACED,GAAa,GAAKA,GAAa19L,EAInC,SAAS89L,EAA0BhC,EAAMjC,EAAYE,GAMnD,IAHA,IAAIrnL,EAAWmnL,EAAWkE,WACtBC,EAAa,GAER/kM,EAAI,EAAGA,GAAKyZ,EAASvZ,OAAS,EAAGF,IAAK,CAC7C,IAAI+5I,EAAQtgI,EAASzZ,GAErB,GAAI+5I,EAAM2sC,SAASoa,GACjB,MAGFiE,IAAehrD,EAAMwnD,WAAaxnD,EAAM2oD,WAAa,KAGvD,OAAOqC,EAAW7kM,QAAU2iM,EAAK97L,OAAS,GAG5C,SAASi+L,EAAe3rK,GACtB,IAAIzR,EAAayR,EAAUl3B,IAAI,cAE/B,OAAKylB,EAID0C,EAAS1C,GACJA,EAAWrlB,MACTw5L,EAAOn0K,GACT,OACE28K,EAAM38K,GACR,WADF,EAPEyR,EAAU92B,MA7crBd,EAAOD,QAAU,SAAS63B,EAAWpuB,EAAaoC,EAASnC,GAEzD,IAAI+5L,EAAW,CACb,gBAAiB,CACf1iM,MAAO,MACPmM,MAAOxD,EAAU,QAEnB,iBAAkB,CAChB3I,MAAO,OACPmM,MAAOxD,EAAU,SAEnB,mBAAoB,CAClB3I,MAAO,SACPmM,MAAOxD,EAAU,YAIrBmC,EAAUA,GAAW,GAErB,IAAIjC,EAAWiC,EAAQjC,UAAY,GAE/B4zB,EACD3xB,EAAQ2xB,cAAgD,oBAAzB3xB,EAAQ2xB,aACtC,WACE,OAAO3xB,EAAQ2xB,gBAEjB,WACE,OAAO3F,GAGTt4B,EAAS,GACTuK,EAAU,GAEdvK,EAAOuK,QAAUA,EAGjB,IAAIszB,EAAczY,EAAayY,YAAY,CACzC74B,GAAIqF,EAAW,cACf8kB,MAAOmJ,EAAUv3B,KACjBytB,YAAay1K,EAAe3rK,GAC5B9I,WAAY,CAAE,iCACdJ,MAAM,EACNG,SAAUjjB,EAAQijB,SAClBF,SAAU/iB,EAAQ+iB,SAClBjuB,IAAK,WACH,MAAO,CACL+tB,MAAO8O,IAAel9B,KACtBytB,YAAay1K,EAAehmK,SAK9BtO,EAASrjB,EAAQqjB,QAAUkO,EAAYlO,OAE3C3vB,EAAO4vB,QAAU,SAASpuB,EAAOoxB,GAC/B,IAAI/C,EAAYb,EAAS,gBAAkB6O,EAAY74B,GAAK,KAAM4tB,GAClEiL,EAAYjO,QAAQpuB,EAAOquB,IAG7BtlB,EAAQ9K,KAAKo+B,GAGbtzB,EAAQ9K,KAAK2lB,EAAamJ,yBAAyBpkB,EAAW,CAC5DnF,GAAIqF,EAAW,gBACfsD,MAAOjD,EAAG4tB,EAAW,4BACnBnuB,EAAU,uBAAyBA,EAAU,yBAC/CyD,cAAe,OAEf6gB,YAAa,SAASxkB,EAAS2b,GAC7B,OAAO0S,EAAUv3B,MAGnB2tB,YAAa,SAASzkB,EAASoD,EAAQuY,GACrC,OAAOT,EAAU2B,qBAAqB7c,EAASquB,EAAWjrB,IAG5D4Z,SAAU,SAAShd,EAASoD,EAAQuY,GAClC,IAAIyQ,EAAa,GACbC,EAAYjpB,EAAOtM,KAUvB,OARIu1B,EACE3M,EAAM4M,cAAcD,KACtBD,EAAWt1B,KAAOoJ,EAAU,iCAG9BksB,EAAWt1B,KAAOoJ,EAAU,8BAGvBksB,GAGTtP,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAOZ,IAAIxJ,EAAgB,CAClB,CAAE3kB,MAAO,OAAQT,KAAMoJ,EAAU,yBACjC,CAAE3I,MAAO,SAAUT,KAAMoJ,EAAU,WACnC,CAAE3I,MAAO,OAAQT,KAAMoJ,EAAU,SACjC,CAAE3I,MAAO,MAAOT,KAAMoJ,EAAU,SAGlCI,EAAQ9K,KAAK2lB,EAAakB,UAAUnc,EAAW,CAC7CnF,GAAKqF,EAAW,gBAChBsD,MAAOxD,EAAU,4BACjBgc,cAAeA,EACfvY,cAAe,gBAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,IAAIu+K,EAAgB,OAEhBt9K,EAAaoX,IAAe78B,IAAI,cACpC,GAA0B,qBAAfylB,EAA4B,CACrC,IAAI5b,EAAO4b,EAAWysD,MACtB6wH,EAAgBD,EAASj5L,GAAMzJ,MAGjC,MAAO,CACL2iM,cAAeA,IAInBt2L,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAImE,EAAa,CACfvoB,WAAOukB,EACPc,gBAAYd,GAGVq+K,EAA0B,SAASn5L,GACrC,OAAO+a,EAAc/a,EAAMgzB,IAAgB/zB,IAGzCi6L,EAAgB92L,EAAO82L,cAY3B,MAVsB,WAAlBA,EACFp6K,EAAWlD,WAAau9K,EAAwB,oBAEvB,SAAlBD,EACPp6K,EAAWlD,WAAau9K,EAAwB,kBAEvB,QAAlBD,IACPp6K,EAAWlD,WAAau9K,EAAwB,kBAG3Cj/K,EAAU2B,qBAAqB7c,EAASg0B,IAAgBlU,IAGjEhD,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAQZplB,EAAQ9K,KAAK2lB,EAAa+1B,YAAYhxC,EAAW,CAC/CnF,GAAKqF,EAAW,qBAChBsD,MAAQxD,EAAU,6BAClBqkB,YAAarkB,EAAU,+CACvByD,cAAe,QACfxM,IAAK,SAAS6I,EAAS2b,GACrB,MAAO,CACLpkB,MAAOy8B,IAAez8B,QAI1BqM,IAAK,SAAS5D,EAASoD,EAAQuY,GAE7B,OADAvY,EAAO7L,MAAQ6L,EAAO7L,YAASukB,EACxBZ,EAAU2B,qBAAqB7c,EAASg0B,IAAgB5wB,IAGjE2mB,KAAM,SAAS/pB,EAAS2b,GACtB,OAAO+J,MAAasO,IAAepX,YAGrCs5K,SAAU,SAASl2L,GACjB,IAAI8lB,EAAQq1D,EAASn7E,GACjB6C,EAAcC,EAAe9C,GAG7B8H,EAAY20E,EAAqB32D,EAAOjjB,GAG5CiF,EAAYga,EAAOha,GAAW,SAAS+yE,GACrC,IAAIC,EAASD,EAASC,OAClBs/G,EAAiBt4K,EAAOg5D,GAAQ,SAAS9jF,GACvC,OAAOA,EAAE+D,KAAOiF,EAAQjF,MAG9B,QAASq/L,EAAellM,UAI1B,IAAIuuF,EAASV,EAAWj7E,GAGxB,OAAOyb,EAAIkgE,GAAQ,SAAS5I,GAC1B,OAAOA,EAAS/jF,SAIpBm/L,WAAY,SAAS4B,EAAMjC,EAAYE,GACrC,IAAIuE,EAAcR,EAA0BhC,EAAMjC,EAAYE,GAE9D,QAAI0D,EAAmB5D,EAAWW,UAAW8D,MAIzCV,EAA2B/D,EAAWW,UAAW8D,OAWzD,IAAIt8K,EAASZ,EAAqB,eAAgB,SAAS,EAAMjd,EAAW,CAAEE,SAAUA,IA0IxF,OAzIAE,EAAQ9K,KAAK,CACXuF,GAAIqF,EAAW,uBACfgf,KAAM,yBACErB,EAAOsB,SACT,SACNloB,IAAK,SAAS6I,EAAS2b,GACrB,OAAO2D,EAAS0U,IAAepX,YAAcmB,EAAO5mB,IAAI6I,EAASg0B,IAAepX,YAAc,IAGhGhZ,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAImD,EAASf,EAAOna,IAAI5D,EAASoD,GACjC,OAAO8X,EAAU2B,qBAAqB7c,EAASg0B,IAAepX,WAAYkC,IAG5E9B,SAAU,SAAShd,EAASoD,EAAQuY,GAClC,OAAO2D,EAAS0U,IAAepX,YAAcmB,EAAOf,SAAShd,EAASg0B,IAAepX,YAAc,IAGrGmB,OAAQA,EACRgM,KAAM,SAAS/pB,EAAS2b,GACtB,OAAO+J,KAAYsO,IAAepX,YAAc0C,EAAS0U,IAAepX,eAO5Etc,EAAQ9K,KAAK2lB,EAAamG,MAAMphB,EAAW,CACzCnF,GAAIqF,EAAW,qBACfigB,gBAAiB,CAAE,SACnBkkC,OAAQ,CAAErkD,EAAU,UACpBqgB,SAAUrgB,EAAU,aAEpBY,YAAa,SAASd,EAAS2b,GAE7B,OAAIo1K,EAAO/8J,IAAepX,YACjBoX,IAAepX,WAAWkM,MAG5B,IAGThI,cAAe,SAAS9gB,EAASoD,EAAQuY,EAAM7Z,GAC7C,IAAIhG,EAAOk4B,IAAepX,WAAWkM,MAAMhnB,GAC3C,OAAOoZ,EAAU2B,qBAAqB7c,EAASlE,EAAMsH,IAGvDod,WAAY,SAASxgB,EAAS2b,GAC5B,IAAI6qC,EAAWzqC,EAAc,kBAAmBiY,IAAepX,WAAY3c,EAAa,CAAE1I,WAAOukB,IACjG,OAAOZ,EAAU2F,kBAAkB7gB,EAASg0B,IAAepX,WAAY,QAAS,CAAE4pC,KAGpFvlC,cAAe,SAASjhB,EAAS2b,EAAM7Z,GACrC,OAAOoZ,EAAUkG,uBAAuBphB,EAASg0B,IAAepX,WAAY,QAAS,KAAM,CAAEoX,IAAepX,WAAWkM,MAAMhnB,MAG/HumD,SAAU,SAASroD,EAAS2b,EAAM1a,EAAMa,GACtC,IAAIhG,EAAOk4B,IAAepX,WAAWkM,MAAMhnB,GAC3C,OAAQy3L,EAAMz9L,KAAUi1L,EAAOj1L,KAAUwjB,EAASxjB,IAGpDq1B,gBAAiB,SAASnxB,EAAS2b,EAAMsK,EAAOhlB,EAAM1J,EAAOuK,GAC3D,IAAIhG,EAAOk4B,IAAepX,WAAWkM,MAAMhnB,GAEtCy3L,EAAMz9L,IAAUi1L,EAAOj1L,IAAUwjB,EAASxjB,GAG7CmqB,EAAM1uB,MAAQ0iM,EAASn+L,EAAKutE,OAAO3lE,MAFnCuiB,EAAM1uB,MAAQA,GAMlBwyB,KAAM,SAAS/pB,EAAS2b,GACtB,OAAO+J,KAAYsO,IAAepX,YAAcm0K,EAAO/8J,IAAepX,gBAQ1Etc,EAAQ9K,KAAK2lB,EAAamG,MAAMphB,EAAW,CACzCnF,GAAIqF,EAAW,oBACfigB,gBAAiB,CAAE,MAAO,SAC1BkkC,OAAQ,CAAErkD,EAAU,OAAQA,EAAU,UACtCqgB,SAAUrgB,EAAU,aAEpBY,YAAa,SAASd,EAAS2b,GAE7B,OAAIqY,KAAkBulK,EAAMvlK,IAAepX,YAClCoX,IAAepX,WAAWtc,QAG5B,IAGTwgB,cAAe,SAAS9gB,EAASoD,EAAQuY,EAAM7Z,GAC7C,IAAIigB,EAAQiS,IAAepX,WAAWtc,QAAQwB,GAQ9C,OANIy3L,EAAMx3K,EAAMnF,aAAem0K,EAAOhvK,EAAMnF,aAAe0C,EAASyC,EAAMnF,eACxExZ,EAAS,CACPvL,IAAKuL,EAAOvL,MAITqjB,EAAU2B,qBAAqB7c,EAAS+hB,EAAO3e,IAGxDod,WAAY,SAASxgB,EAAS2b,GAC5B,IAAI2+K,EAAWv+K,EAAc,kBAAmBiY,IAAepX,WAAY3c,EAAa,CAAEpI,SAAKikB,EAAWvkB,WAAOukB,IACjH,OAAOZ,EAAU2F,kBAAkB7gB,EAASg0B,IAAepX,WAAY,UAAW,CAAE09K,KAGtFr5K,cAAe,SAASjhB,EAAS2b,EAAM7Z,GACrC,OAAOoZ,EAAUkG,uBAAuBphB,EAASg0B,IAAepX,WAAY,UAAW,KAAM,CAAEoX,IAAepX,WAAWtc,QAAQwB,MAGnIumD,SAAU,SAASroD,EAAS2b,EAAM1a,EAAMa,GACtC,IAAIigB,EAAQiS,IAAepX,WAAWtc,QAAQwB,GAC9C,MAAgB,QAATb,IAAoBs4L,EAAMx3K,EAAMnF,cAAgBm0K,EAAOhvK,EAAMnF,cAAgB0C,EAASyC,EAAMnF,aAGrGuU,gBAAiB,SAASnxB,EAAS2b,EAAMsK,EAAOhlB,EAAM1J,EAAOuK,GAC3D,IAAIigB,EAAQiS,IAAepX,WAAWtc,QAAQwB,GAEjC,QAATb,IAAoBs4L,EAAMx3K,EAAMnF,aAAgBm0K,EAAOhvK,EAAMnF,aAAgB0C,EAASyC,EAAMnF,aAG9FqJ,EAAM1uB,MAAQ0iM,EAASl4K,EAAMnF,WAAWysD,OAAO3lE,MAF/CuiB,EAAM1uB,MAAQA,GAMlBwyB,KAAM,SAAS/pB,EAAS2b,GACtB,OAAO+J,KAAYsO,IAAepX,YAAc28K,EAAMvlK,IAAepX,gBAKlE7mB,I,gEC9XT,IAAIunB,EAAWxd,EAAQ,SAEvBrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaC,GAErD,IAAIq6L,EAAgBj9K,EAAStd,EAASC,EAAa,GAAIC,GAIvD,OAFAH,EAAMO,QAAUP,EAAMO,QAAQC,OAAOg6L,EAAcj6L,SAE5C,CACL0d,oBAAqBu8K,EAAcv8K,uB,gECTvC,IAAIyxC,EAAS3vD,EAAQ,QAErBrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaonB,EAAkBnnB,GAEvE,IAAImf,EAAWgI,EAAiBlwB,IAAI6I,GAEpC,IAAIqf,EAAJ,CAIA,IAAIm7K,EAAc/qI,EAAOzvD,EAASC,EAAa,GAAIC,GAEnDH,EAAMO,QAAUP,EAAMO,QAAQC,OAAOi6L,EAAYl6L,Y,mECZnD,IAAIG,EAAKX,EAAQ,QAAwDW,GAQzE,SAASg6L,EAAgBpzK,EAAkBnF,GACzCA,EAASE,GAAG,8BAA8B,SAAS9e,GACjD,IAAIuY,EAASvY,EAAQuY,OACjB5jB,EAAWqL,EAAQrL,SACnBquB,EAAehjB,EAAQgjB,aAE3B,GAAqB,oBAAjBA,EAAJ,CAIA,IAAIujD,EAAkBxiD,EAAiBlwB,IAAIc,GAE3C,IAAK4xE,EACH,OAAO,EAGT,IAAIxmD,EAAYwmD,EAAgBxmD,UAE5B+zG,EAAU/zG,EAAUhV,QAAO,SAAS+oH,EAASp2H,GAC/C,OAAOo2H,GAAW32H,EAAGob,EAAQ7a,MAC5B,GAEH,QAAKo2H,QAAL,MAMJqjE,EAAgBl4K,QAAU,CAAC,mBAAoB,YAE/C9rB,EAAOD,QAAUikM,G,yDCtCjB,IAAIl3K,EAAMzjB,EAAQ,QAEda,EAA0Bb,EAAQ,QAUtC,SAAS6jB,EAAc5iB,GACrB,SAAUA,EAAG5J,IAAI,2BAA4B4J,EAAG5J,IAAI,oBAatD,SAASysB,EAAa7iB,GACpB,QAASA,EAAG5J,IAAI,wBAalB,SAAS4hM,EAAYh4L,GACnB,QAASA,EAAG5J,IAAI,uBAYlB,SAAS0sB,EAA2B9iB,GAClC,OAAOJ,EAAwBQ,qBAAqBJ,EAAI,qCAAqC,GAY/F,SAAS+iB,EAA8B/iB,EAAIf,GACzC,IAAI06L,EAAkB/5L,EAAwBQ,qBAAqBJ,EAAI,qCACvE,OAAOwiB,EAAIm3K,GAAiB,SAASz2K,GACnC,OAAOtjB,EAAwB0gB,YAAYtgB,EAAIf,EAASikB,MArD5DxtB,EAAOD,QAAQmtB,cAAgBA,EAc/BltB,EAAOD,QAAQotB,aAAeA,EAc9BntB,EAAOD,QAAQuiM,YAAcA,EAa7BtiM,EAAOD,QAAQqtB,2BAA6BA,EAgB5CptB,EAAOD,QAAQstB,8BAAgCA,G,sDCzE/C,IAAIrjB,EAAKX,EAAQ,QAAwDW,GACrE0a,EAAerb,EAAQ,QAG3BrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASE,GACpCO,EAAGT,EAAS,0BAGdD,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,WACL2I,MAAQxD,EAAU,YAClByD,cAAgB,cAIlB5D,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,iBACL2I,MAAQxD,EAAU,mBAClByD,cAAgB,oBAIlB5D,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,kBACL2I,MAAQxD,EAAU,oBAClByD,cAAgB,qBAIlB5D,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,UACLwpB,YAAcrkB,EAAU,gGACxBwD,MAAQxD,EAAU,YAClByD,cAAgB,aAIlB5D,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,eACLwpB,YAAcrkB,EAAU,sGAExBwD,MAAQxD,EAAU,kBAClByD,cAAgB,kBAIlB5D,EAAMO,QAAQ9K,KAAK2lB,EAAa4B,UAAU7c,EAAW,CACnDnF,GAAK,WACL2I,MAAQxD,EAAU,YAClByD,cAAgB,iB,kCCnDtB,mHAeO,SAASmf,EAAM9iB,EAASqhC,GAC7B,OAAOynD,kBAAKznD,GAAO,SAAA7pC,GAAC,OAAIiJ,gBAAGT,EAASxI,MAY/B,SAAS4oB,EAAUpgB,EAAS26L,GACV,kBAAZA,IACTA,EAAU,CAACA,IAGb,MAAQ36L,EAAUA,EAAQ6b,OACxB,GAAIiH,EAAM9iB,EAAS26L,GACjB,OAAO36L,EAIX,OAAO,O,uFCrCT,IAAIk7K,EAAiBp7K,EAAQ,QAAWo7K,eACpCp2J,EAAahlB,EAAQ,QAAWglB,WAEhCoE,EAASppB,EAAQ,QAAWopB,OAC5BnE,EAAWjlB,EAAQ,QAAWklB,MAC9B41K,EAAc96L,EAAQ,QAAW+6L,SACjCn5F,EAAY5hG,EAAQ,QAAWszB,OAC/BZ,EAAa1yB,EAAQ,QAAW2yB,QAChC3C,EAAahwB,EAAQ,QAAWiwB,QAChCy0B,EAAU1kD,EAAQ,QAAWqjD,KAC7B23I,EAAch7L,EAAQ,QAAW8iC,SACjCm4J,EAAaj7L,EAAQ,QAAW8oF,QAEhC/sF,EAAUiE,EAAQ,QAClBgiB,EAAShiB,EAAQ,QACjB3I,EAAM2I,EAAQ,QACdsJ,EAAOtJ,EAAQ,QACfspC,EAAUtpC,EAAQ,QAClBktD,EAAUltD,EAAQ,QAClBktC,EAAaltC,EAAQ,QACrByhB,EAAWzhB,EAAQ,QACnBk7L,EAAMl7L,EAAQ,QACd60L,EAAW70L,EAAQ,SACnBm7L,EAAcn7L,EAAQ,QACtBo7L,EAAQp7L,EAAQ,QAChByjB,EAAMzjB,EAAQ,QACduO,EAASvO,EAAQ,QAEjBq7L,EAAkBr7L,EAAQ,QAE1Bs7L,EAAat7L,EAAQ,QAAeqnB,QAEpCzmB,EAAoBZ,EAAQ,QAA+CY,kBAE3E26L,EAAa,aACbC,EAAiB,IAEjB9rK,EAAmB,IAEvB,SAAS+rK,EAAS5/K,GAChB,MAAqB,aAAdA,EAAK3a,MAAqC,UAAd2a,EAAK3a,KAG1C,SAASw6L,EAAS7/K,GAChB,MAAqB,eAAdA,EAAK3a,KAGd,SAASy6L,EAAkB9/K,GACzB,OAAO6oC,EAAQ7oC,EAAM,mBAGvB,SAAS+/K,EAAwB//K,GAC/B,IAAI8oC,EAAW,+DACXk3I,EAAef,EAAYn2I,EAAU9oC,GAIzC,OAHMggL,GAAiBA,EAAazmM,SAAW6lM,EAAWp/K,EAAM8oC,KAC9Dk3I,EAAe,CAAEhgL,IAEZggL,EAUT,SAASC,EAAgBjgL,EAAMhgB,GAC7B,IAAIkgM,EAAWjB,EAAY,+DAAgEj/K,GAY3F,OAVKkgL,GAAaA,EAAS3mM,SACzB2mM,EAAWd,EAAWp/K,EAAM,UAAY,CAAEA,GAASkgL,GAGhDlgM,IACHkgM,EAAW/5K,EAAO+5K,GAAU,SAASlgL,GACnC,OAAQmU,EAAWnU,EAAM,IAAM0/K,OAI5BQ,EAGT,SAASC,EAA4Bl2K,GACnC,IAAIxiB,EAAS,GAET24L,EAAeH,EAAgBh2K,GAgCnC,OA9BA/pB,EAAQkgM,GAAc,SAASC,GAC7B,IAAIzkM,EAAQykM,EAAYzkM,MAEpBT,EAAO0tD,EAAQw3I,EAAa,SAAWx3I,EAAQw3I,EAAa,aAG5DT,EAASS,GAKPzkM,EAJAykM,EAAYC,SACTz3I,EAAQw3I,EAAa,UAGhBA,EAAYzkM,MAGd,KAGRkkM,EAAkBO,KACpBzkM,EAAQykM,EAAYzF,WAGR,OAAVh/L,IAKF6L,EAAOtM,GAAQS,MAIZ6L,EAUT,SAAS84L,EAAqBt2K,GAE5B,IAAIxiB,EAEA+4L,EAAgBp3K,EAAS,8BAA+Ba,GAC5D,GAAIu2K,EAAe,CACjB/4L,EAAS,GACT,IAAIg5L,EAAYD,EAAc1tL,UAAY,GAC1C5S,EAAQugM,GAAW,SAASlH,GAC1B9xL,EAAO5N,KAAKsmM,EAA4B5G,YAG1C9xL,EAAS04L,EAA4Bl2K,GAGvC,OAAOxiB,EAWT,SAASi5L,EAAW9kM,EAAO+kM,GAEzB,GAAI/kM,IAAU+kM,EACZ,OAAO,EAGT,IAAIC,EAAUnzL,EAAK7R,GAAOgJ,OAAO6I,EAAKkzL,IAEtC,OAAOC,EAAQ1zG,OAAM,SAAShxF,GAC5B,OAAON,EAAMM,KAASykM,EAASzkM,MAYnC,SAAS2kM,EAAYp5L,EAAQq5L,GAE3B,OAAIzvI,EAAQ5pD,GAENA,EAAOlO,SAAWunM,EAAUvnM,QAIzBkO,EAAOylF,OAAM,SAASiuD,EAAGh1I,GAC9B,OAAOu6L,EAAWvlD,EAAG2lD,EAAU36L,OAI5Bu6L,EAAWj5L,EAAQq5L,GAS5B,SAASC,EAAeC,GACtB,OAAOzB,EAAMD,EAAY13K,EAAI03K,EAAY13K,EAAIo5K,EAAM,WAAY,YAAa,MAS9E,SAASC,EAAcD,GACrB,OAAOzB,EAAMD,EAAY13K,EAAIo5K,EAAM,WAAY,MAsBjD,SAASE,EAAgBxgJ,EAAQ02E,EAAU7wG,EAAUg8B,EAAU/7B,EAAczf,GAE3ElB,KAAKs2F,UAAY51E,EACjB1gB,KAAK48C,UAAYF,EACjB18C,KAAK28C,cAAgBh8B,EACrB3gB,KAAKu2F,QAAUr1F,EAEf,IAAIo5K,EAAqB/oD,EAAS57H,IAAI,sBAAsB,GAExD2kL,GACFt6K,KAAK63H,iBAAiByiD,GAGxBt6K,KAAKi+F,MAAMpjD,GA4/Bb,SAASygJ,EAAcnhL,EAAMpkB,GAE3B,IAII42B,EAJA4uK,EAAkBtB,EAAkB9/K,GAEpC2gL,EAAWS,EAAkBphL,EAAK46K,UAAY56K,EAAKpkB,WAKzCukB,IAAVvkB,IACFA,EAAQ,IAGN+kM,IAAa/kM,IAKbqyB,SAASozK,gBAAkBrhL,IAC7BwS,EAAYgtK,EAAgBnE,EAAar7K,GAAO2gL,EAAU/kM,IAGxDwlM,EACFphL,EAAK46K,UAAYh/L,EAEjBokB,EAAKpkB,MAAQA,EAGX42B,GACF8uK,EAAathL,EAAMwS,IAIvB,SAAS+uK,EAAevhL,EAAMpkB,QACdukB,IAAVvkB,IACFokB,EAAKpkB,MAAQA,GAIjB,SAAS4lM,EAAexhL,EAAMpkB,GAC5B,IAAI6lM,EAAYzhL,EAAKpkB,MAErBokB,EAAKsgL,QAAW1kM,IAAU6lM,IAAgB54I,EAAQ7oC,EAAM,UAAYpkB,EAGtE,SAAS8lM,EAAa1hL,EAAMpkB,GAC1BokB,EAAKuX,YAAc37B,EAGrB,SAASy/L,EAAar7K,GAEpB,OAAO8/K,EAAkB9/K,GAAQ2hL,EAA4B3hL,GAAQ,CACnEwiH,MAAOxiH,EAAK4hL,eACZx9C,IAAKpkI,EAAK6hL,cAId,SAASF,EAA4B3hL,GAEnC,IAAIwS,EAAY/1B,OAAO4+L,eAEnBlB,EAAY3nK,EAAU2nK,UACtB2H,EAActvK,EAAUsvK,YACxBC,EAAevvK,EAAUuvK,aAE7B,IAAK5H,EACH,MAAM,IAAIl7L,MAAM,gBAIlB,IAAK+gB,EAAK+/J,SAASoa,GACjB,MAAM,IAAIl7L,MAAM,gBAGlB,MAAO,CACLujI,MAAOltH,KAAKkxH,IAAIs7D,EAAaC,GAC7B39C,IAAK9uI,KAAKs+B,IAAIkuJ,EAAaC,IAI/B,SAAST,EAAathL,EAAMwS,GAEtBstK,EAAkB9/K,GACpBgiL,EAA4BhiL,EAAMwS,IAElCxS,EAAK4hL,eAAiBpvK,EAAUgwG,MAChCxiH,EAAK6hL,aAAervK,EAAU4xH,KAIlC,SAAS49C,EAA4BhiL,EAAMwS,GAEzC,IAAI2nK,EACA8H,EACAC,EAEJ/H,EAAYn6K,EAAKupC,YAAcvpC,EAC/BiiL,EAAWh0K,SAASutK,cACpByG,EAASxG,SAAStB,EAAW3nK,EAAUgwG,OACvCy/D,EAASvG,OAAOvB,EAAW3nK,EAAU4xH,KAErC89C,EAAezlM,OAAO4+L,eACtB6G,EAAavG,kBACbuG,EAAatG,SAASqG,GAGxB,SAASE,GAAe99L,GACtB,MAAsB,mBAAfA,EAAQjF,GApmCjB8hM,EAAgBt6K,QAAU,CACxB,yBACA,WACA,WACA,WACA,eACA,UAGF9rB,EAAOD,QAAUqmM,EAMjBA,EAAgBznM,UAAUikI,iBAAmB,SAAS3pG,EAAUquK,GAEzDA,IACHA,EAAWruK,EACXA,EAAWF,GAGbhuB,KAAKs2F,UAAU11E,GAAG,+BAAgCsN,GAAU,SAASlS,GACnEA,EAAMwgL,UAAUxoM,KAAKuoM,MAGvBv8L,KAAKs2F,UAAUoB,KAAK,qCAGtB2jG,EAAgBznM,UAAUqqG,MAAQ,SAASpjD,GAEzC,IAAI35C,EAASlB,KAAKu2F,QACd71E,EAAW1gB,KAAKs2F,UAEhBt0E,EAAOhiB,KAKX0gB,EAASE,GAAG,cAAc,SAAS+e,GACjC,IAAInhC,EAAUmhC,EAAEnhC,QAEZ89L,GAAe99L,IAInBwjB,EAAK1E,OAAO9e,MAGdkiB,EAASE,GAAG,qBAAqB,SAAS+e,GACxC,IAAItV,EAAasV,EAAE88J,aAAa,GAE5Bp7L,EAAcH,EAAOI,iBAErBg7L,GAAej7L,IAInB2gB,EAAK1E,OAAO+M,MAId3J,EAASE,GAAG,CACV,0BACA,4BACC,SAAS5E,GAEV,IAAI0gL,EAAan5K,EAAS,0BAA2BvB,EAAK+7E,YAE1D,GAAK2+F,EAAL,CAIA,IAAIC,EAAW/C,EAAWjkM,IAAI+mM,GAEzBC,IAKHA,EAAW/C,EAAW8C,EAAY,CAChCE,UAAW,CACTC,cAAe,6BACf1uK,IAAK,gCACL2uK,OAAQ,cACR3jE,OAAQ,iBAKZwjE,EAAS/7K,GAAG,UAAU,SAASm8K,EAAeC,EAAe1+C,GAE3D,IAAI2+C,EAAW15K,EAAS,oBAAqBw5K,GAEzCG,EAAQl6I,EAAQi6I,EAAU,mBAE9Bj7K,EAAKm7K,YAAYD,OAMrBP,EAASr/K,aAGXoD,EAASE,GAAG,oBAAoB,SAAS+e,GAEvC,IAAIu4C,EAAUl2D,EAAKo7K,SACf5+L,EAAU05E,GAAWA,EAAQ15E,QAE7BA,IACmC,IAAjCmhC,EAAEvf,SAAShB,QAAQ5gB,IACrBwjB,EAAK1E,OAAO9e,MAKlBkiB,EAASE,GAAG,CACV,2BACA,qCACC,WACD,IAAIs3D,EAAUl2D,EAAKo7K,SACf5+L,EAAU05E,GAAWA,EAAQ15E,QAE7BA,GACFwjB,EAAK1E,OAAO9e,MAIhBkiB,EAASE,GAAG,mBAAmB,WAC7BoB,EAAKq+E,YAGPrgG,KAAK+9F,WAAar2E,EAAO,4CAEzB1nB,KAAKq9L,eAAer9L,KAAK+9F,YAErBljD,GAAUA,EAAOxgC,QACnBra,KAAKogG,SAASvlD,EAAOxgC,SAKzBghL,EAAgBznM,UAAUwsG,SAAW,SAAS72E,GAE5C,IAAKA,EACH,MAAM,IAAInwB,MAAM,uBAKlB4G,KAAKqgG,SAGD92E,EAAW5zB,KAAO4zB,EAAWmiC,YAAY93D,UAAU0sG,SACrD/2E,EAAaA,EAAW5zB,IAAI,IAGJ,kBAAf4zB,IACTA,EAAahG,EAASgG,IAGxB,IAAIqzE,EAAY58F,KAAK+9F,WAErBx0E,EAAWjB,YAAYs0E,GAEvB58F,KAAK4+F,MAAM,WAGby8F,EAAgBznM,UAAUysG,OAAS,WAEjC,IAAIzD,EAAY58F,KAAK+9F,WACjBx0E,EAAaqzE,EAAUrzE,WAEtBA,IAILvpB,KAAK4+F,MAAM,UAEXr1E,EAAWuG,YAAY8sE,KASzBy+F,EAAgBznM,UAAUupM,YAAc,SAASD,GAC3Cn9K,EAASm9K,KACXA,EAAQA,EAAM3jM,IAGhB,IAAI4hM,EAAO/B,EAAY,sBAAuBp5L,KAAKo9L,SAASE,OACxDC,EAAWnE,EAAY,2BAA4Bp5L,KAAKo9L,SAASE,OAGrEjjM,EAAQ8gM,GAAM,SAAShtK,GACrB6C,EAAW7C,GAAKyD,OAAO,iBAGzBv3B,EAAQkjM,GAAU,SAASC,GACzBxsK,EAAWwsK,GAAS5rK,OAAO,iBAI7B,IAAI6rK,EAAcn9K,EAAO66K,GAAM,SAAShtK,GACtC,OAAQ6C,EAAW7C,GAAK4lG,IAAI8lE,MAG1B6D,EAAY7wL,EAAO4wL,GAAa,SAASC,EAAWvvK,GACtD,OAAI60B,EAAQ70B,EAAK,cAAgB+uK,EACxB/uK,EAGFuvK,IACND,EAAa,IAEZC,GACF1sK,EAAW0sK,GAAWnkL,IAAI,cAG5B,IAAIokL,EAAkBr9K,EAAOi9K,GAAU,SAASC,GAC9C,OAAQxsK,EAAWwsK,GAASzpE,IAAI8lE,MAG9B+D,EAAgB/wL,EAAO8wL,GAAiB,SAASC,EAAeJ,GAClE,OAAIx6I,EAAQz/B,EAAS,qBAAsBi6K,GAAU,qBAAuBN,EACnEM,EAGFI,IACND,EAAiB,IAEhBC,GACF5sK,EAAW4sK,GAAerkL,IAAI,eAIlC8hL,EAAgBznM,UAAUiqM,cAAgB,WAExC,IAAI7hL,EAAQhc,KAAKs2F,UAAUmI,YAAY,CACrCj/F,KAAM,+BACNg9L,UAAW,KAKb,OAFAx8L,KAAKs2F,UAAUoB,KAAK17E,GAEbA,EAAMwgL,WAGfnB,EAAgBznM,UAAUkqM,SAAW,SAASt/L,GAC5C,IAAIg+L,EAAYx8L,KAAK69L,gBAIrB,OAAOhxL,EAAO2vL,GAAW,SAASrB,EAAMoB,GACtC,IAAIwB,EAAgBxB,EAASrQ,QAAQ1tL,GAErC,OAAIgtC,EAAWuyJ,GACNA,EAAc5C,GAEd4C,IAER,KASL1C,EAAgBznM,UAAU0pB,OAAS,SAAS9e,GAGrCA,IACHA,EAAUwB,KAAKu2F,QAAQj1F,kBAIzB,IAEI08L,EACAC,EAHA9C,EAAOn7L,KAAK89L,SAASt/L,GAKrBwB,KAAKo9L,WACPa,EAAgB16K,EAAS,iCAAkCvjB,KAAKo9L,SAASE,OAErEW,IACFD,EAAch7I,EAAQi7I,EAAe,cAKpCj+L,KAAKo9L,UACLp9L,KAAKo9L,SAAS5+L,UAAYA,IAC1BwB,KAAKk+L,gBAAgBl+L,KAAKo9L,SAASt+L,QAASo8L,EAAeC,MAE1Dn7L,KAAKo9L,UACPl9F,EAAUlgG,KAAKo9L,SAASE,OAG1Bt9L,KAAKo9L,SAAWp9L,KAAK+7H,QAAQv9H,EAAS28L,IAIxCn7L,KAAKm+L,kBAAkBn+L,KAAKo9L,UAGxBY,EACFh+L,KAAKm9L,YAAYa,GAEjBh+L,KAAKm9L,YAAYn9L,KAAKo9L,SAASjC,KAAM,IAGvCn7L,KAAK4+F,MAAM,YAYby8F,EAAgBznM,UAAUsqM,gBAAkB,SAASE,EAAat/L,GAChE,IAAIu/L,EAAez2L,EAAKw2L,GACpBE,EAAW12L,EAAK9I,GAEpB,OAAQ8oC,EAAQ4xJ,EAAI6E,EAAcC,KAGpCjD,EAAgBznM,UAAUgrG,MAAQ,SAAS5iF,GACzChc,KAAKs2F,UAAUoB,KAAK,mBAAqB17E,EAAO,CAAEshL,MAAOt9L,KAAMk4E,QAASl4E,KAAKo9L,YAG/E/B,EAAgBznM,UAAUypM,eAAiB,SAASzgG,GAElD,IAAI56E,EAAOhiB,KAGPu+L,EAAe,SAAsBviL,GAIvC,IAEIyqC,EAASlmC,EAFT8pB,EAAYruB,EAAMq4K,eAClBjwK,EAAYkK,EAAW+b,EAAW,gBAItC,GAAKjmB,EAAL,CAIAqiC,EAAUzD,EAAQ5+B,EAAW,cAC7B7D,EAAQyB,EAAKw8K,SAAS/3I,GAEtB,IAAI7kD,EAAS84L,EAAqBt2K,GAElC,GAAmB,WAAfpI,EAAMxc,KAAmB,CAO3B,IAAIi/L,EAAiBz7I,EAAQ3Y,EAAW,kBAExC,GAAIo0J,EAAgB,CAClB,IAAIC,EAAe18K,EAAK28K,cAAcp+K,EAAO6D,EAAWq6K,EAAgBziL,GAExE,IAAK0iL,EACH,OAAO18K,EAAK1E,OAAO0E,EAAKo7K,SAAS5+L,UAIvCwjB,EAAK48K,aAAar+K,EAAO3e,EAAQwiB,GACjCpC,EAAK68K,YAAYt+K,EAAO6D,KAW1B,SAAS06K,EAAY9iL,GACnB,IAAIoO,GAAQpO,EAAM+iL,eAAiBnoM,OAAOmoM,eAAeC,QAAQ,QACjE52K,SAASgtK,YAAY,cAAc,EAAOhrK,GAE1CpO,EAAM+oF,iBAaR,SAASk6F,EAAmBjjL,GAG1B,IAAIquB,EAAYruB,EAAMq4K,eAElBjwK,EAAYkK,EAAW+b,EAAW,gBAGtC,GAAKjmB,EAAL,CAIA,IAAIzd,EAASq8C,EAAQ3Y,EAAW,qBAC5Boc,EAAUzD,EAAQ5+B,EAAW,cAE7B7D,EAAQyB,EAAKw8K,SAAS/3I,GAE1BzkC,EAAK28K,cAAcp+K,EAAO6D,EAAWzd,EAAQqV,IA4B/C,SAASopF,EAAYppF,EAAOxd,GAG1B,IAAI6rC,EAAYruB,EAAMq4K,eAElBjwK,EAAYkK,EAAW+b,EAAW,gBAGtC,GAAKjmB,EAAL,CAIA,IAAI86K,EAAiBl8I,EAAQ3Y,EAAW,aACpCoc,EAAUzD,EAAQ5+B,EAAW,cAE7B7D,EAAQyB,EAAKw8K,SAAS/3I,GAEtBi4I,EAAe18K,EAAK28K,cAAcp+K,EAAO6D,EAAW86K,EAAgBljL,GAExE,GAAI0iL,EAAc,CAChB,IAAI98L,EAAS84L,EAAqBt2K,GAElCpC,EAAK48K,aAAar+K,EAAO3e,EAAQwiB,GAGnCpC,EAAK68K,YAAYt+K,EAAO6D,IA7F1Bk1K,EAAYhjM,KAAKsmG,EAAW,qCAAsC,QAASu2F,EAASoL,EAAczE,IAClGR,EAAYhjM,KAAKsmG,EAAW,6CAA8C,SAAU2hG,GAGpFjF,EAAYhjM,KAAKsmG,EAAW,oBAAqB,QAASkiG,GAU1DxF,EAAYhjM,KAAKsmG,EAAW,SAAU,WAAW,SAASj9D,GAGtC,KAAdA,EAAEw/J,UACJx/J,EAAE2R,kBACF3R,EAAEolE,qBAwBNu0F,EAAYhjM,KAAKsmG,EAAW,sBAAuB,QAASqiG,GAAoB,GAEhF3F,EAAYhjM,KAAKsmG,EAAW,gBAAiB,SAAS,SAAiB5gF,GAGrE,IAAIquB,EAAYruB,EAAMq4K,eAClBjwK,EAAYkK,EAAW+b,EAAW,gBAElC3lB,EAAWs+B,EAAQ3Y,EAAW,eAC9Boc,EAAUzD,EAAQ5+B,EAAW,cAE7B7D,EAAQyB,EAAKw8K,SAAS/3I,GAEtBi4I,EAAe18K,EAAK28K,cAAcp+K,EAAO6D,EAAWM,EAAU1I,GAElE,IAAK0iL,EACH,OAAO18K,EAAK1E,OAAO0E,EAAKo7K,SAAS5+L,SAGnC,IAAIoD,EAAS84L,EAAqBt2K,GAElCpC,EAAK48K,aAAar+K,EAAO3e,EAAQwiB,GACjCpC,EAAK68K,YAAYt+K,EAAO6D,MA+B1Bk1K,EAAYhjM,KAAKsmG,EAAW,cAAe,OAAQwI,GAAa,GAGhEk0F,EAAYhjM,KAAKsmG,EAAW,+CAAgD,SAAS,SAAS5gF,GAC5FA,EAAM+oF,iBAEN,IAAIsvF,EAAiBr4K,EAAMq4K,eAEvB6I,EAAQl6I,EAAQqxI,EAAgB,mBAGpCryK,EAAKm7K,YAAYD,OAKrB7B,EAAgBznM,UAAUirM,YAAc,SAASt+K,EAAO6D,GACtDpkB,KAAKo/L,WAAW7+K,EAAO6D,GACvBpkB,KAAKq/L,cAAc9+K,EAAO6D,IAM5Bi3K,EAAgBznM,UAAUwrM,WAAa,SAAS7+K,EAAOpG,GAErD,IAAI+9D,EAAUl4E,KAAKo9L,SAEnB,GAAKllH,EAAL,CAIA,IAAIonH,EAAYlG,EAAY,cAAej/K,IAAS,GAEpD9f,EAAQilM,GAAW,SAASC,GAE1B,IAAIC,EAAOx8I,EAAQu8I,EAAU,aACzBhtJ,EAAK58C,EAAI4qB,EAAOi/K,GACpB,GAAIjtJ,EAAI,CACN,IAAIjuB,EAAQgK,EAAWixK,EAAU,iBAAmBplL,EAChDqO,EAAa+pB,EAAG2lC,EAAQ15E,QAAS2b,EAAMolL,EAAUj7K,KAAU,EAC3DkE,EACFwI,EAAWuuK,GAAU3tK,OAAOioK,GAE5B7oK,EAAWuuK,GAAUhmL,IAAIsgL,SAUjCwB,EAAgBznM,UAAUyrM,cAAgB,SAAS9+K,EAAOpG,GACxD,IAAI+9D,EAAUl4E,KAAKo9L,SAEnB,GAAKllH,EAAL,CAIA,IAAIunH,EAAQrG,EAAY,iBAAkBj/K,IAAS,GAEnD9f,EAAQolM,GAAO,SAASC,GACtB,IAAIF,EAAOx8I,EAAQ08I,EAAa,gBAC5BntJ,EAAK58C,EAAI4qB,EAAOi/K,GACpB,GAAIjtJ,EAAI,CACN,IAAIjuB,EAAQgK,EAAWoxK,EAAa,iBAAmBvlL,EACnDwlL,EAAgBptJ,EAAG2lC,EAAQ15E,QAAS2b,EAAMulL,EAAap7K,KAAU,EACrE0+B,EAAQ08I,EAAa,WAAYC,EAAgB,GAAK,YAK5DtE,EAAgBznM,UAAU+qM,cAAgB,SAASp+K,EAAO6D,EAAWM,EAAU1I,GAC7E,IAAIk8D,EAAUl4E,KAAKo9L,SAEnB,GAAKllH,EAAL,CAIA,IAAI3lC,EAAK58C,EAAI4qB,EAAOmE,GACpB,GAAI6tB,EAAI,CACN,IAAIxiB,EAAYzB,EAAWtS,EAAMiR,OAAQ,iBAAmB7I,EAC5D,OAAOmuB,EAAGl+C,MAAMksB,EAAO,CAAE23D,EAAQ15E,QAAS4lB,EAAWpI,EAAO+T,OAOhEsrK,EAAgBznM,UAAUgrM,aAAe,SAASr+K,EAAO3e,EAAQooC,GAE/D,IAAIxrC,EAAUwB,KAAKo9L,SAAS5+L,QAG5B,IAAIw8L,EAAYp5L,EAAQ2e,EAAM06K,WAA9B,CAIA,IAEI2E,EAFAxI,EAAU72K,EAAMne,IAAI5D,EAASoD,EAAQooC,GAIrCwhB,EAAQ4rI,GACNA,EAAQ1jM,SACVksM,EAAmB,CACjB/9L,IAAK,0CACLC,QAAS23L,EAAYrC,KAIzBwI,EAAmBxI,EAGjBwI,EACF5/L,KAAK28C,cAAc7Z,QAAQ88J,EAAiB/9L,IAAK+9L,EAAiB99L,SAAW,CAAEtD,QAAUA,IAEzFwB,KAAKsd,OAAO9e,KAQhB68L,EAAgBznM,UAAUisM,sBAAwB,SAASv8J,EAAkBlf,GAE3E,IAAI4iD,GAAQ,EAERuzH,EAAeH,EAAgBh2K,GAAW,GAkC9C,OAhCA/pB,EAAQkgM,GAAc,SAASC,GAE7B,IAAIllM,EAAO0tD,EAAQw3I,EAAa,SAAWx3I,EAAQw3I,EAAa,aAE5DrhM,EAAQmqC,GAAoBA,EAAiBhuC,GAE7CwqM,EAAmBv8K,EAAS,qBAAsBi3K,EAAYjxK,YAE9DpwB,GACF6tE,GAAQ,EAEH84H,IACHA,EAAmBp4K,EAAO,eAE1BsJ,EAAW8uK,GAAkBvmL,IAAI,qBAGjCihL,EAAYjxK,WAAWk6B,aAAaq8I,EAAkBtF,EAAYuF,cAGpED,EAAiBpuK,YAAcv4B,EAE/B63B,EAAWwpK,GAAajhL,IAAI,aAE5ByX,EAAWwpK,GAAa5oK,OAAO,WAE3BkuK,GACFtF,EAAYjxK,WAAWuG,YAAYgwK,OAKlC94H,GAOTq0H,EAAgBznM,UAAU4nB,SAAW,SAAS+E,EAAO3e,EAAQwiB,GAC3D,IAAIpC,EAAOhiB,KAEPk4E,EAAUl4E,KAAKo9L,SAEfp2H,GAAQ,EAIZ,GAFA5iD,EAAYA,GAAab,EAAS,gBAAkBhD,EAAMhnB,GAAK,KAAM2+E,EAAQolH,OAEzE17L,aAAkB2lB,MAKpB,IAJA,IAAIozK,EAAgBp3K,EAAS,8BAA+Ba,GACxD47K,EAAiBrF,EAAc1tL,UAAY,GAGtCzZ,EAAI,EAAGA,EAAIoO,EAAOlO,OAAQF,IAAK,CACtC,IAAIysM,EAAYr+L,EAAOpO,GAEvB,GAAI+sB,EAAM2/K,iBAAkB,CAE1B,IAAI58J,EAAmB/iB,EAAM2/K,iBAAiBhoH,EAAQ15E,QAASyhM,EAAW77K,EAAW5wB,GACjF2sM,EAAgBH,EAAexsM,GAEnCwzE,EAAQhlD,EAAK69K,sBAAsBv8J,EAAkB68J,IAAkBn5H,QAIvEzmD,EAAM/E,WACRxb,KAAKsjC,iBAAmB/iB,EAAM/E,SAAS08D,EAAQ15E,QAASoD,EAAQwiB,GAEhE4iD,EAAQhlD,EAAK69K,sBAAsB7/L,KAAKsjC,iBAAkBlf,IAAc4iD,GAI5E,OAAOA,GAGTq0H,EAAgBznM,UAAU4qM,SAAW,SAASjlM,GAC5C,OAAOyG,KAAKo9L,UAAYp9L,KAAKo9L,SAASt+L,QAAQvF,IAGhD8hM,EAAgBznM,UAAUmoI,QAAU,SAASv9H,EAAS28L,GAEpD,IAAK38L,EACH,OAAO,KAGT,IAAI4hM,EAAgBpgM,KAAK+9F,WAErBsiG,EAAYrgM,KAAKsgM,aAAa9hM,EAAS28L,GAE3CiF,EAAc93K,YAAY+3K,GAE1B,IAAIvhM,EAAUo8L,EAAeC,GACzBpsL,EAASqsL,EAAcD,GAE3B,MAAO,CACLA,KAAMA,EACNpsL,OAAQA,EACRjQ,QAASA,EACTN,QAASA,EACT8+L,MAAO+C,IAaXhF,EAAgBznM,UAAU2sM,cAAgB,SAAS/hM,EAAS+hB,EAAO3e,EAAQwiB,EAAW9jB,GAEpF,IAAIogB,EAAW1gB,KAAKs2F,UAEpB,SAASjoE,EAAmB9N,EAAOuE,GACjC,OAAOpE,EAASg3E,KAAK,qCAAsC,CACzDn3E,MAAOA,EACPuE,aAAcA,EACdtmB,QAASA,IAIb,IAAIgiM,EAAatG,EAAwB91K,GAEzC/pB,EAAQmmM,GAAY,SAASrmL,GAE3B,IAAI7kB,EACA0vD,EACA6B,EAGA,UAAW1sC,GAAoC,SAA5B8/K,EAAkB9/K,IACvC7kB,EAAO0tD,EAAQ7oC,EAAM,SAAW6oC,EAAQ7oC,EAAM,aAC9C6qC,EAAWpjD,EAAOtM,GAElBuxD,EAAWx4B,EAAmB9N,EAAOjrB,GACjCuxD,GAAYtmC,EAAMsmC,WACpBA,EAAWtmC,EAAMsmC,SAASroD,EAAS4lB,EAAWjK,EAAM7kB,EAAM0vD,EAAU1kD,IAGtE0iD,EAAQ7oC,EAAM,WAAY0sC,EAAW,KAAO,IAC5C7D,EAAQ7oC,EAAM,WAAY0sC,EAAW,KAAO,IAIxCtmC,EAAMoP,gBACRpP,EAAMoP,gBAAgBnxB,EAAS4lB,EAAWjK,EAAM7kB,EAAM0vD,EAAU1kD,GACvDy5L,EAAS5/K,GAClBwhL,EAAexhL,EAAM6qC,GACZg1I,EAAS7/K,GAClBuhL,EAAevhL,EAAM6qC,GAErBs2I,EAAcnhL,EAAM6qC,KAMtB1vD,EAAO0tD,EAAQ7oC,EAAM,cACrB6qC,EAAWpjD,EAAOtM,GACdirB,EAAMoP,gBACRpP,EAAMoP,gBAAgBnxB,EAAS4lB,EAAWjK,EAAM7kB,EAAM0vD,EAAU1kD,GAEhEu7L,EAAa1hL,EAAM6qC,QAM3Bq2I,EAAgBznM,UAAUuqM,kBAAoB,SAASjmH,GACrD,IAAIl2D,EAAOhiB,KAEP0gB,EAAW1gB,KAAKs2F,UAEhB93F,EAAU05E,EAAQ15E,QAEtB,SAAS4vB,EAAe7N,EAAOhiB,EAAO4vB,GACpC,OAAOzN,EAASg3E,KAAK,iCAAkC,CACrDl5F,QAASA,EACT+hB,MAAOA,EACPhiB,MAAOA,EACP4vB,IAAKA,IAIT,SAASsyK,EAAeliM,EAAOC,EAASkiM,GACtC,OAAIl1J,EAAWjtC,EAAM8rL,UACZ9rL,EAAM8rL,QAAQ7rL,EAASkiM,GAMlC,SAASC,EAAaxyK,EAAK3vB,GACzB,OAAIgtC,EAAWrd,EAAIk8J,UACVl8J,EAAIk8J,QAAQ7rL,GAMvB,SAASoiM,EAAczmL,EAAM0mL,GAC3B7vK,EAAW7W,GAAM8J,OAAO41K,GAAagH,GAGvC,SAASv7D,EAAY9mI,EAASykD,EAAU74B,GACtC,IAAI02K,EAAYv9K,EAAS0/B,EAAUzkD,GAE9BsiM,IAILA,EAAUpvK,YAActH,GAG1B,IAAIi2K,EAAYnoH,EAAQolH,MAExBjjM,EAAQ69E,EAAQijH,MAAM,SAAShtK,GAE7B,IAAI4yK,EAAUx9K,EAAS,aAAe4K,EAAI50B,GAAK,IAAK8mM,GAChDW,EAAcz9K,EAAS,oBAAsB4K,EAAI50B,GAAK,IAAK8mM,GAAW92K,WAEtE03K,GAAa,EAEjB5mM,EAAQ8zB,EAAIpf,QAAQ,SAASxQ,GAE3B,IAAI2iM,GAAe,EAEfR,EAAYn9K,EAAS,eAAiBhlB,EAAMhF,GAAK,IAAKwnM,GAE1D1mM,EAAQkE,EAAMO,SAAS,SAASyhB,GAE9B,IAAI6D,EAAYb,EAAS,gBAAkBhD,EAAMhnB,GAAK,KAAMmnM,GAExD95I,EAAex4B,EAAe7N,EAAOhiB,EAAO4vB,GAEhD+yK,EAAeA,GAAgBt6I,EAE/Bg6I,EAAcx8K,EAAWwiC,GAEzB,IAAIhlD,EAAS,QAAS2e,EAAQA,EAAM5qB,IAAI6I,EAAS4lB,GAAa,GAE9D,GAAIxiB,aAAkB2lB,MAAO,CAI3B,IAHA,IAAI45K,EAAqB59K,EAAS,8BAA+Ba,GAC7Dg9K,EAAmBD,EAAmBl0L,UAAY,GAE7CzZ,EAAI,EAAGA,EAAIoO,EAAOlO,OAAQF,IAAK,CACtC,IAAIysM,EAAYr+L,EAAOpO,GACnB6tM,EAAeD,EAAiB5tM,GAC/B6tM,IACHA,EAAe35K,EAAOnH,EAAMmP,wBAAwBuwK,EAAWzsM,EAAG2tM,IAClEA,EAAmB74K,YAAY+4K,IAEjCr+I,EAAQq+I,EAAc,aAAc7tM,GAEpCwuB,EAAKu+K,cAAc/hM,EAAS+hB,EAAO0/K,EAAWoB,EAAc7tM,GAK9D,IAFA,IAAI8tM,EAAkBF,EAAiB1tM,OAASkO,EAAOlO,OAE9CgB,EAAI,EAAGA,EAAI4sM,EAAiB5sM,IAGnCysM,EAAmBrxK,YAAYqxK,EAAmBtxK,gBAIpD7N,EAAKu+K,cAAc/hM,EAAS+hB,EAAO3e,EAAQwiB,GAI7CpC,EAAK68K,YAAYt+K,EAAO6D,GACxBpC,EAAKxG,SAAS+E,EAAO3e,EAAQwiB,GAG7B7D,EAAM06K,UAAYP,EAAqBt2K,MAGd,oBAAhB7lB,EAAM2D,OACfojI,EAAYo7D,EAAW,eAAgBniM,EAAM2D,MAAM1D,EAASkiM,IAG9DQ,EAAeA,GAAgBT,EAAeliM,EAAOC,EAASkiM,GAE9DO,EAAaA,GAAcC,EAE3BN,EAAcF,EAAWQ,MAG3BD,EAAaA,GAAcN,EAAaxyK,EAAK3vB,GAE7CoiM,EAAcG,EAASE,GACvBL,EAAcI,EAAaC,MAI7B37D,EAAY+6D,EAAW,kBAAmBnhM,EAAkBV,GAASjF,IAAM,KAG7E8hM,EAAgBznM,UAAU0sM,aAAe,SAAS9hM,EAAS28L,GACzD,IAAIn5K,EAAOhiB,KAEPqgM,EAAY34K,EAAO,sCACnB65K,EAAa75K,EAAO,oFAGpBg1K,EAAah1K,EAAO,8CACpB85K,EAAe95K,EAAO,+CACtB+5K,EAAmB/5K,EAAO,qDAwF9B,OAtFA24K,EAAU/3K,YAAYi5K,GAEtBlnM,EAAQ8gM,GAAM,SAAShtK,EAAKuzK,GAE1B,IAAKvzK,EAAI50B,GACP,MAAM,IAAIH,MAAM,uBAGlB,IAAI2nM,EAAUr5K,EAAO,6CAA+CpE,EAAW6K,EAAI50B,IAAM,YACrFynM,EAAct5K,EAAO,gEACWpE,EAAW6K,EAAI50B,IAAM,KAAO+pB,EAAW6K,EAAIjsB,OADtD,aAIrB6M,EAASof,EAAIpf,OAEjB1U,EAAQ0U,GAAQ,SAASxQ,GAEvB,IAAKA,EAAMhF,GACT,MAAM,IAAIH,MAAM,yBAGlB,IAAIsnM,EAAYh5K,EAAO,iDAAmDpE,EAAW/kB,EAAMhF,IAApE,2FAGc+pB,EAAW/kB,EAAM2D,OAH/B,uBAOnB3D,EAAMgqE,UACRhlD,EAAS,gBAAiBm9K,GAAWp4K,YAAYoxJ,EAAen7K,EAAMgqE,WAGxEm4H,EAAUiB,cAAc,iBAAiBjtJ,iBAAiB,SAAS,SAASukI,GAC1EjoJ,EAAW0vK,GAAWz8K,OAAO,gBAC7Bg1J,EAAIl0E,iBACJk0E,EAAI3nI,qBAENovJ,EAAUhsJ,iBAAiB,SAAS,SAASukI,IACtCA,EAAI2oB,kBAAoB5wK,EAAW0vK,GAAW3sE,IAAI,iBACrD/iG,EAAW0vK,GAAW9uK,OAAO,mBAIjCv3B,EAAQkE,EAAMO,SAAS,SAASyhB,GAE9B,IAAKA,EAAMhnB,GACT,MAAM,IAAIH,MAAM,yBAGlB,IAAIwkB,EAAO2C,EAAM3C,KAEG,kBAATA,IACTA,EAAO8J,EAAO9J,IAIZA,EAAKjoB,KAAOioB,EAAK8tC,YAAY93D,UAAU0sG,SACzC1iF,EAAOA,EAAKjoB,IAAI,IAGlB,IAAIyuB,EAAYsD,EAAO,iDAAmDpE,EAAW/C,EAAMhnB,IAAM,YAEjGc,EAAQkmB,EAAMwD,YAAc,IAAI,SAAS89K,GACvC7wK,EAAW5M,GAAW7K,IAAIsoL,MAG5Bz9K,EAAUkE,YAAY1K,GAEtB8iL,EAAUp4K,YAAYlE,GAGtBpC,EAAK68K,YAAYt+K,EAAO6D,MAG1B28K,EAAQz4K,YAAYo4K,MAGtBc,EAAal5K,YAAY04K,GACzBS,EAAiBn5K,YAAYy4K,MAG/BrE,EAAWp0K,YAAYk5K,GAEvBnB,EAAU/3K,YAAYo0K,GACtB2D,EAAU/3K,YAAYm5K,GAEfpB,I,gEC1uCT,IAAIjgJ,EAA2B9hD,EAAQ,QACnC+hD,EAA2B/hD,EAAQ,QAGvCrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaunC,EAAsBtnC,GAG3EH,EAAMO,QAAUP,EAAMO,QAAQC,OAAOqhD,EAAyB5hD,EAASwnC,EAAsBvnC,EAAa,CACxGyD,MAAOxD,EAAU,2BACjB4hD,YAAa,QACbC,YAAa,aACb/W,kBAAmB,WACnBgX,mBAAoB,YAItBjiD,EAAMO,QAAUP,EAAMO,QAAQC,OAC5BshD,EAAyB7hD,EAASwnC,EAAsBvnC,EAAaC,EAAW,CAC9EnF,GAAI,qBACJ2I,MAAOxD,EAAU,QACjB8qC,kBAAmB,WACnBrnC,cAAe,OACfs+C,gBAAgB,KAKpBliD,EAAMO,QAAUP,EAAMO,QAAQC,OAC5BshD,EAAyB7hD,EAASwnC,EAAsBvnC,EAAaC,EAAW,CAC9EnF,GAAI,qBACJ2I,MAAOxD,EAAU,QACjB8qC,kBAAmB,WACnBrnC,cAAe,iB,yDClCrB,W,yDCEA,IAAIohB,EAAWjlB,EAAQ,QAAWklB,MAC9BF,EAAahlB,EAAQ,QAAqBglB,WAC1CpF,EAAQ5f,EAAQ,QAGpB,SAASwjM,EAAc3nL,EAAMvb,GAG3B,IAAIqkD,EAQJ,OALEA,EADErkD,GAAwB,IAAZA,EACH,cAAgBA,EAAW,oBAE3B,4BAGNsf,EAAM65J,aAAa90H,EAAU9oC,EAAKgN,eAI3ClyB,EAAOD,QAAU,SAAS+sM,EAAwBC,EAAqBC,EAAkBvjM,EAAWmC,GAClG,IAAIjC,EAAWiC,GAAWA,EAAQjC,UAAY,GAE9C,MAAO,CACLif,SACA,kDACmBjf,EAAW,sBAAwB0kB,EAAW5kB,EAAU,kBAD3E,qDAGoBE,EAHpB,+OAWmBA,EAAW,oBAAsB0kB,EAAW5kB,EAAU,gBAXzE,sDAaqBE,EAbrB,iFAc2C0kB,EAAW5kB,EAAU,kBAdhE,2CAe0C4kB,EAAW5kB,EAAU,sBAf/D,gFAqBmBE,EAAW,gEAAkE0kB,EAAW5kB,EAAU,aArBrH,yFAuBoBE,EAvBpB,gQA+BmBA,EAAW,+CAAiD0kB,EAAW5kB,EAAU,WA/BpG,oFAiCuBE,EAjCvB,yEAqCAjJ,IAAK,SAAS6I,EAASe,GACrB,IAAIqC,EAAS,GAGTsgM,EAAmB3iM,EAAG5J,IAAI,sBAC1BwsM,EAAW5iM,EAAG5J,IAAIqsM,GAClBI,EAAiB7iM,EAAG5J,IAAIosM,GAY5B,MAVgC,qBAArBG,GACTtgM,EAAOygM,oBAAsBH,EAC7BtgM,EAAO0gM,WAAa,mBAEpB1gM,EAAO2gM,YAAcJ,EACrBvgM,EAAO0gM,WAAa,UAGtB1gM,EAAOy+B,aAAe+hK,EAEfxgM,GAGTQ,IAAK,SAAS5D,EAASoD,EAAQooC,GAC7B,IAAI3J,EAAez+B,EAAOy+B,aACtBiiK,EAAa1gM,EAAO0gM,WACpBD,EAAsBzgM,EAAOygM,oBAC7BE,EAAc3gM,EAAO2gM,YAGrBjlL,EAAS,CACX,0BAAsBhD,GAuBxB,OArBAgD,EAAO0kL,QAAuB1nL,EAC9BgD,EAAOykL,QAA0BznL,EAE7B2nL,EAGF3kL,EAAOykL,GAA0B1hK,GAAgB,GAI9B,KAAjBA,IACF/iB,EAAOykL,GAA0B1hK,GAI/B,mBAAqBiiK,EACvBhlL,EAAO,sBAAwB+kL,GAAuB,GAEtD/kL,EAAO0kL,GAAuBO,GAAe,GAGxCjlL,GAGT9B,SAAU,SAAShd,EAASoD,GAC1B,IAAIuoC,EAAmB,GAcvB,MAZ0B,WAAtBvoC,EAAO0gM,YAA4B1gM,EAAO2gM,cAC5Cp4J,EAAiBo4J,YAAc7jM,EAAU,yBAGjB,mBAAtBkD,EAAO0gM,YAAoC1gM,EAAOygM,sBACpDl4J,EAAiBk4J,oBAAsB3jM,EAAU,0BAG/CujM,GAAsBrgM,EAAOy+B,cAA+C,IAA/Bz+B,EAAOy+B,aAAa3sC,SACnEy2C,EAAiB9J,aAAe3hC,EAAU,yBAGrCyrC,GAGTq4J,kBAAmB,SAAShkM,EAAS6rC,EAAWo4J,EAAS1yK,GAGvD,OAFAxM,EAAS,2BAA4BwM,GAAWh6B,MAAM,IAE/C,GAGT2sM,qBAAsB,SAASlkM,EAAS6rC,EAAWo4J,EAAS1yK,GAC1D,IAAItL,EAAQlB,EAAS,2BAA4BwM,GAEjD,MAAuB,KAAhBtL,EAAM1uB,OAGf4sM,oBAAqB,SAASnkM,EAAS6rC,EAAWo4J,EAAS1yK,GAGzD,OAFAxM,EAAS,kCAAmCwM,GAAWh6B,MAAM,IAEtD,GAGT6sM,uBAAwB,SAASpkM,EAAS6rC,EAAWo4J,EAAS1yK,GAC5D,IAAItL,EAAQlB,EAAS,kCAAmCwM,GAExD,MAAuB,KAAhBtL,EAAM1uB,OAGf8sM,YAAa,SAASrkM,EAAS6rC,EAAWo4J,EAAS1yK,GAGjD,OAFAxM,EAAS,6BAA8BwM,GAAWh6B,MAAM,IAEjD,GAGT+sM,eAAgB,SAAStkM,EAAS6rC,EAAWo4J,EAAS1yK,GACpD,IAAItL,EAAQlB,EAAS,6BAA8BwM,GAEnD,MAAuB,KAAhBtL,EAAM1uB,OAGfgtM,iBAAkB,SAASvkM,EAAS6rC,EAAWo4J,EAAS1yK,GACtD,IAAIuyK,EAAaR,EAAc/xK,EAAWnxB,GAC1C,MAAsB,mBAAf0jM,GAGTxkL,SAAU,SAAStf,EAAS6rC,EAAWo4J,EAAS1yK,GAC9C,IAAIuyK,EAAaR,EAAc/xK,EAAWnxB,GAC1C,MAAsB,WAAf0jM,M,gEClLb,IAAIliJ,EAA2B9hD,EAAQ,QACnC+hD,EAA2B/hD,EAAQ,QAGvCrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAa8qE,EAAwB7qE,GAE7EH,EAAMO,QAAUP,EAAMO,QAAQC,OAAOqhD,EAAyB5hD,EAAS+qE,EAAwB9qE,EAAa,CAC1GyD,MAAOxD,EAAU,6BACjB4hD,YAAa,UACbC,YAAa,eACb/W,kBAAmB,aACnBgX,mBAAoB,cAItBjiD,EAAMO,QAAUP,EAAMO,QAAQC,OAC5BshD,EAAyB7hD,EAAS+qE,EAAwB9qE,EAAaC,EAAW,CAChFnF,GAAI,uBACJ2I,MAAOxD,EAAU,uBACjB8qC,kBAAmB,aACnBrnC,cAAe,OACfs+C,gBAAgB,O,kCCrBtB,IAAIpmD,EAAUiE,EAAQ,QActB,SAAS0kM,EAAoBriL,GAC3B3gB,KAAK28C,cAAgBh8B,EAGvBqiL,EAAoBjiL,QAAU,CAAE,gBAEhC9rB,EAAOD,QAAUguM,EAEjBA,EAAoBpvM,UAAUuqD,WAAa,SAASr8C,GAElD,IAAI6e,EAAe3gB,KAAK28C,cAExBtiD,EAAQyH,GAAS,SAASs1L,GACxBz2K,EAAamiB,QAAQs0J,EAAQv1L,IAAKu1L,EAAQt1L,c,q/rCC3B9C,IAAIzH,EAAUiE,EAAQ,QAAYjE,QAC9BimB,EAAShiB,EAAQ,QAAYgiB,OAC7BW,EAAU3iB,EAAQ,QAAY2iB,QAC9Bm4D,EAAY96E,EAAQ,QAAY86E,UAEhCl6E,EAAoBZ,EAAQ,QAA2DY,kBAEvF0gC,EAAiBthC,EAAQ,QAAashC,eACtCU,EAAoChiC,EAAQ,QAAagiC,kCAEzD2iK,EAAe3kM,EAAQ,QAEvBqb,EAAerb,EAAQ,QAEvBilB,EAAWjlB,EAAQ,QAAWklB,MAE9B0/K,EAAwC,iCAExCC,EAAc,CAChBxtM,IAAK,aACLyM,IAAK,aACLq+B,SAAU,IA4IZ,SAAS2iK,EAAUtkM,EAASvF,GAC1B,OAAO6/E,EAAUt6E,GAAS,SAASyhB,GACjC,OAAOA,EAAMhnB,KAAOA,KAIxB,SAASsmB,EAAY/gB,EAASwB,GAC5BxB,EAAQlK,OAAO0L,EAAK,GAvItBrL,EAAOD,QAAU,SAASuJ,EAAOC,EAASqnB,EAAkBpnB,EAAaC,GACvE,IAAImf,EAAWgI,EAAiBlwB,IAAI6I,GAEpC,IAAKqf,EACH,MAAO,GAGT,IAAIwlL,EAAe,GAEnB,SAASz/K,EAAS7tB,EAAOquB,GACvB,GAAKruB,EAAL,CAIA,IAAIixB,EAAiB5C,EAAU6C,QAAQ1G,MAGvC8iL,EAAahpM,SAAQ,SAASyE,GAC5B,IAAIszB,EAActzB,EAAQ,GAE1B,GAAIszB,EAAY74B,KAAOytB,EAAvB,CAIA,IAAI5C,EAAYb,EAAS,gBAAkB6O,EAAY74B,GAAK,MAC5D64B,EAAYjO,SAAQ,EAAOC,QAK/B,SAASk/K,EAAY/pM,EAAI+4B,GACvB,IAGItO,EAHA+N,EAAUO,EAAiBP,QAC3BwO,EAAkBxO,EAAQ0O,SAC1B4iK,EAAe,GAIf9jM,EAAKL,EAAkBV,GACvBgiC,EAAwBZ,EAAergC,EAAI,CAAE,mCAEjD,IAAKihC,EACH,OAAO6iK,EAGT,IAAIxW,EAAW,WACb,IAAIzxK,EAAaklB,EAAkC9hC,EAAS+hC,GAE5D,OAAKnlB,GACI+nL,GAMPhqM,EAAQ0zL,IAER3oK,EAAS,WACX,OAAOF,EAAiBE,UAGtBrjB,EAAU,CACZjC,SAAUrF,EAAK,IACfqqB,SAAUA,EACVipK,SAAUA,EACV3oK,OAAQ,WACN,OAAOA,MAKPq/K,EAAsBN,EAAa9pM,EAAOsF,EAAaD,EAASqC,EAASnC,GAC7E2kM,EAAeE,EAAoBzkM,QAEnC,IAAI0kM,EAAoBJ,EAAUC,EAAc9pM,EAAK,oBAErDyqB,EAAmBq/K,EAAaD,EAAUC,EAAc9pM,EAAK,iBAG7D,IAAIkqM,EAAgBL,EAAUC,EAAc9pM,EAAK,qBACjDsmB,EAAYwjL,EAAcI,GAE1B,IAAIC,EAAkB/pL,EAAa4B,UAAU7c,EAAW,CACtDnF,GAAIA,EAAK,oBACT2I,MAAOxD,EAAU,oBACjByD,cAAe,aAEfxM,IAAK,WACH,MAAO,CAAE0mB,WAAYwwK,IAAWxwK,aAGlC0kE,WAAY,CACVF,OAAQ,WACN,OAAO,IAIXvlE,OAAQ,WACN,OAAQ4I,KAEV0E,SAAU,WACR,OAAO,KASX,OALAy6K,EAAazuM,OAAO6uM,EAAe,EAAGC,GAGtC7jL,EAAYwjL,EAAcG,GAEnBH,EAIT,IAAIp1I,EAAS3tC,EAAOzC,EAASS,YAAY,SAAS5nB,GAChD,OAAQA,EAAE8I,MAAQ9I,EAAEq7B,QAAQvyB,OAAS0jM,KAGvC7oM,EAAQ4zD,GAAQ,SAASx3D,EAAU6J,GACjC,IAAI/G,EAAK,mBAAqBskB,EAAStkB,GAAK,IAAM+G,EAClD+iM,EAAarvM,KAAKsvM,EAAY/pM,EAAI9C,OAGpC8H,EAAMO,QAAUP,EAAMO,QAAQC,OAAOkiB,EAAQoiL,M,8LC3J/C,IAAI1iM,EAASrC,EAAQ,QAAYqC,OAC7BsgB,EAAU3iB,EAAQ,QAAY2iB,QAC9BX,EAAShiB,EAAQ,QAAYgiB,OAC7B84D,EAAY96E,EAAQ,QAAY86E,UAChC/+E,EAAUiE,EAAQ,QAAYjE,QAE9B22B,EAAa1yB,EAAQ,QAAW2yB,QAChCC,EAAW5yB,EAAQ,QAAW0d,MAC9B0L,EAASppB,EAAQ,QAAWopB,OAC5BnE,EAAWjlB,EAAQ,QAAWklB,MAE9BtkB,EAAoBZ,EAAQ,QAA2DY,kBAEvF2xB,EAAgBvyB,EAAQ,QAAauyB,cACrCsP,EAAqB7hC,EAAQ,QAAa6hC,mBAE1C4D,EAAuBzlC,EAAQ,QAAmBylC,qBAElDzgB,EAAahlB,EAAQ,QAAqBglB,WAE1C3J,EAAerb,EAAQ,QAEvBob,EAAYpb,EAAQ,QACpBmb,EAAgBnb,EAAQ,QAExB+nB,EAAuB/nB,EAAQ,QAE/BomC,EAAiC,2BAEjCtT,EAAyB,IAEzBC,EAAkB,CACpB17B,IAAK,aACLyM,IAAK,cAiKP,SAASghM,EAAUtkM,EAASvF,GAC1B,OAAO6/E,EAAUt6E,GAAS,SAASyhB,GACjC,OAAOA,EAAMhnB,KAAOA,KAIxB,SAASsmB,EAAY/gB,EAASwB,GAC5BxB,EAAQlK,OAAO0L,EAAK,GAGtB,SAASgxB,EAAuBvO,EAAaxpB,EAAIgvB,EAAM7pB,GACrDqkB,EAAcO,EAAWP,GAEzB,IAAInF,EAAO8J,EAAO,sEAEd6J,EAAkB7J,EAAO,mCAAqC3E,EAAc,WAIhF,SAASyO,EAAeC,GAClBA,GACFT,EAAWpT,GAAMrE,IAAI,yBAErBgY,EAAgBG,YAAc3O,EAAc,IAE5C4O,EAAOD,YAAchzB,EAAU,UAE/BsyB,EAAWpT,GAAMgU,OAAO,yBAExBL,EAAgBG,YAAcG,EAAuB,QAErDF,EAAOD,YAAchzB,EAAU,SAdnCkf,EAAK0K,YAAYiJ,GAkBjB,IAAIM,EACAF,EACAF,GAAW,EAsBf,OApBI1O,EAAYrvB,OAAS09B,IACvBS,EAAuB9O,EAAYjsB,MAAM,EAAGs6B,GAE5CO,EAASjK,EACP,oDACEhpB,EAAU,QACZ,WAGFwyB,EAAS56B,KAAKq7B,EAAQ,SAAS,WAC7BF,GAAYA,EAEZD,EAAeC,MAGjB7T,EAAK0K,YAAYqJ,GAEjBH,EAAeC,IAGV,CACLl4B,GAAIA,EAAK,eACTqkB,KAAMA,EACN2K,KAAMA,GAIV,SAASo7K,EAAqBnlM,EAASuzB,GACrC,IAAIxyB,EAAKL,EAAkBV,GACvBwzB,EAAU,GACVtT,EAAoBnf,EAAG5J,IAAI,qBAE/B,IAAK+oB,EACH,OAAOsT,EAGT,IAAInyB,EAAcgxB,EAAcnS,EAAmB,yBAEnD,IAAK7e,EACH,OAAOmyB,EAGT,IAAI9K,EAAiBiZ,EAAmBtgC,EAAakyB,GAErD,OAAK7K,GAIL8K,EAAQh+B,KAAK0lB,EAAUkG,uBAAuBphB,EAASqB,EAAa,kBAAmB,KAAM,CAACqnB,KAEvF8K,GALEA,EAQX,SAAS4xK,EAAwBplM,EAASuzB,EAAStzB,GACjD,IAAIc,EAAKL,EAAkBV,GACvBwzB,EAAU,GACVtT,EAAoBnf,EAAG5J,IAAI,qBAG1B+oB,IACHA,EAAoBjF,EAAcc,cAAc,yBAA0B,KAAM/b,EAASC,GAEzFuzB,EAAQh+B,KAAK0lB,EAAU2B,qBACrB7c,EAASe,EAAI,CAAEmf,kBAAmBA,MAItC,IAAI7e,EAAcgxB,EAAcnS,EAAmB,yBAG9C7e,IACHA,EAAc4Z,EAAcc,cAAc,wBAAyB,KAAMhb,EAAId,GAE7EuzB,EAAQh+B,KAAK0lB,EAAU2F,kBACrB7gB,EAASkgB,EAAmB,SAAU7e,KAK1C,IAAIqnB,EAAiB6c,EAAqBhS,EAAS,KAAMtzB,GAWzD,OATAuzB,EAAQh+B,KAAK0lB,EAAUwF,6BACrB1gB,EACAqB,EACA,kBACA,KACA,CAAEqnB,GACF,KAGK8K,EArRT/8B,EAAOD,QAAU,SAASuJ,EAAOC,EAASqnB,EAAkBpnB,EAAaC,GAEvE,IAAImf,EAAWgI,EAAiBlwB,IAAI6I,GAEpC,IAAKqf,EACH,MAAO,GAGT,IAAIgmL,EAAe,GAGnB,SAASjgL,EAAS7tB,EAAOquB,GACvB,GAAKruB,EAAL,CAIA,IAAIixB,EAAiB5C,EAAU6C,QAAQ1G,MAGvCsjL,EAAaxpM,SAAQ,SAASyE,GAC5B,IAAIszB,EAActzB,EAAQ,GAE1B,GAAIszB,EAAY74B,KAAOytB,EAAvB,CAIA,IAAI5C,EAAYb,EAAS,gBAAkB6O,EAAY74B,GAAK,MAC5D64B,EAAYjO,SAAQ,EAAOC,QAI/B,SAAS0/K,EAAqBvqM,EAAI+4B,GAEhC,IACItO,EADAuO,EAAmB,GAGnBhzB,EAAKL,EAAkBV,GACvBqB,EAAcgxB,EAActxB,EAAI,yBAEpC,IAAKM,EACH,OAAO0yB,EAGT,IAAIC,EAAe,WACjB,OAAO2N,EAAmBtgC,EAAayyB,EAAiBP,UAAYV,GAGlExE,EAAY2F,IAEZtO,EAAS,WACX,OAAOF,EAAiBE,UAGtBuO,EAAiB,WACnB,IAAI5yB,EAAcgxB,EAAc3xB,EAAkBV,GAAU,yBACxDquB,EAAYsT,EAAmBtgC,EAAayyB,EAAiBP,SAEjE,QAASlF,GAGPhsB,EAAU,CACZjC,SAAUrF,EAAK,IACfqqB,SAAUA,EACV4O,aAAcA,EACdtO,OAAQ,WACN,OAAOA,KAAYuO,MAMnBsxK,EAAsB19K,EAAqBwG,EAAWpuB,EAAaoC,EAASnC,GAChF6zB,EAAmBwxK,EAAoBjlM,QAEvC,IAAIklM,EAAUZ,EAAU7wK,EAAkBh5B,EAAK,kBAE/CyqB,EAAmBuO,EAAiB6wK,EAAU7wK,EAAkBh5B,EAAK,iBAGrE,IAAI81C,EAAarrB,EAAiBruB,IAiDlC,OAhDAquB,EAAiBruB,IAAM,WACrB,OAAOgL,EAAO0uC,IAAc,CAC1B3rB,MAAO4O,EAAiBpwB,MACtBxD,EAAU4zB,EAAiBpwB,OAC3BowB,EAAiBP,QAAQz8B,QAK/BuqB,EAAY0S,EAAkByxK,GAG1B1xK,EAAiBvP,aACnBwP,EAAiB39B,OAAO,EAAG,EAAG08B,EAC5BgB,EAAiBvP,YACjBxpB,EACAyqB,EAAiBE,OACjBxlB,IAKJ6zB,EAAiB39B,OAAO09B,EAAiBvP,YAAc,EAAI,EAAG,EAAGpJ,EAAagO,aAAajpB,EAAW,CACpGnF,GAAIA,EAAK,qBACT2I,MAAOxD,EAAU,6BACjByD,cAAe,WACf+lB,QAASxpB,EAAU,MACnBypB,SAAUzpB,EAAU,OACpBupB,eAAgBvpB,EAAU,qDAC1BqpB,KAAM0K,EACN98B,IAAK,SAAS6I,EAAS2b,GACrB,MAAO,CAAEuY,SAAUD,MAErBrwB,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAIuY,EAAW9wB,EAAO8wB,WAAY,EAElC,OAAIA,EACKkxK,EAAwBplM,EAAS8zB,EAAiBP,QAAStzB,GAE3DklM,EAAqBnlM,EAAS8zB,EAAiBP,UAI1DzW,OAAQ,SAAS9c,EAAS2b,GACxB,OAAQ+J,QAILqO,EAKT,IAAI/L,EAAkBlG,EAAOzC,EAASS,YAAY,SAAS5nB,GACzD,OAAQA,EAAE8I,MAAQ9I,EAAEq7B,QAAQvyB,OAASklC,KAGvCrqC,EAAQmsB,GAAiB,SAAS/vB,EAAU6J,GAC1C,IAAI/G,EAAK,mBAAqBskB,EAAStkB,GAAK,IAAM+G,EAClDujM,EAAa7vM,KAAK8vM,EAAqBvqM,EAAI9C,OAG7C8H,EAAMO,QAAUP,EAAMO,QAAQC,OAAOkiB,EAAQ4iL,M,oFC5L/C,IAAIvgL,EAAahlB,EAAQ,QAAYglB,WAEjC5J,EAAYpb,EAAQ,QAEpBilB,EAAWjlB,EAAQ,QAAWklB,MAC9Bw/B,EAAU1kD,EAAQ,QAAWqjD,KAC7BrzB,EAAahwB,EAAQ,QAAWiwB,QAEhCjO,EAAShiB,EAAQ,QACjBjE,EAAUiE,EAAQ,QAClBsJ,EAAOtJ,EAAQ,QAEfopB,EAASppB,EAAQ,QAAWopB,OAE5BtB,EAAwB9nB,EAAQ,QAEhCq7L,EAAkBr7L,EAAQ,QAE1B2lM,EAAwB,gDACxBC,EAA4B,0FAIhC,SAASC,EAAuB7lL,EAAYwQ,GAC1C,IAAIjR,EAAWomL,EAKf,OAJApmL,GAAYumL,EAAoB9lL,EAAYwQ,GAC5CjR,GAAYiR,EAAYo1K,EAA4B,GACpDrmL,GAAY,SAELA,EAGT,SAASumL,EAAoB9lL,EAAYwQ,GACvC,IAAIs/C,EAAU9vD,EAAW5qB,OACrBmqB,EAAW,GAQf,OAPAxjB,EAAQikB,GAAY,SAAS7e,EAAMa,GACjCud,GAAY,uCAAyCuwD,EAAU,KACnCt/C,EAAY,0BAA4B,IADxD,8CAEqDxuB,EAFrD,sBAIkBgjB,EAAW7jB,GAAQ,UAE5Coe,EAGT,SAASwmL,EAAuBthJ,GAC9B,IAAIllC,EAAWomL,EAIf,OAHApmL,GAAYymL,EAAoBvhJ,GAChCllC,GAAY,SAELA,EAGT,SAASymL,EAAoBvhJ,GAC3B,IAAIqrB,EAAUrrB,EAAOrvD,OACjBmqB,EAAW,GAIf,OAHAxjB,EAAQ0oD,GAAQ,SAAS7gD,GACvB2b,GAAY,uCAAyCuwD,EAAU,KAAO9qD,EAAWphB,GAAS,cAErF2b,EAGT,SAAS69B,EAAKt7B,EAAU9B,GACtB,OAAQ8B,GAAY,IAAI2B,KAAI,SAASpD,GACnC,IAAI0L,EAAa,GAIjB,OAHAhwB,EAAQikB,GAAY,SAAS7e,GAC3B4qB,EAAW5qB,GAAQkf,EAAKlf,IAAS,MAE5B4qB,KAIX,SAASk6K,EAAK/lM,EAAS2b,EAAMvY,EAAQq5L,EAAWp0I,GAC9C,OAAOvmC,EAAO1e,GAAQ,SAAS7L,EAAOuK,GACpC,OAAQu6L,EAAWr8L,EAAS2b,EAAMpkB,EAAOklM,EAAU36L,GAAMumD,EAAUvmD,MAIvE,SAASu6L,EAAWr8L,EAAS2b,EAAMpkB,EAAO+kM,EAAUj0I,EAAUvmD,GAC5D,GAAIvK,IAAU+kM,EACZ,OAAO,EAET,IAAIC,EAAUnzL,EAAK7R,GAAOgJ,OAAO6I,EAAKkzL,IAEtC,OAAOC,EAAQ1zG,OAAM,SAAShxF,GAC5B,IAAIE,EAAIR,EAAMM,SAAQikB,EAClB9kB,EAAIslM,EAASzkM,SAAQikB,EACzB,OAAQusC,EAASroD,EAAS2b,EAAM9jB,EAAKiK,IAAQ/J,IAAMf,KAIvD,SAASgvM,EAAarqL,GACpB,OAAOmU,EAAWnU,EAAM,gBAAgB,GAG1C,SAAS6iH,EAAa7iH,GACpB,OAAOoJ,EAAS,iCAAkCpJ,GAGpD,SAASq7K,EAAar7K,GACpB,MAAO,CACLwiH,MAAOxiH,EAAK4hL,eACZx9C,IAAKpkI,EAAK6hL,cAId,SAASP,EAAathL,EAAMwS,GAC1BxS,EAAK4hL,eAAiBpvK,EAAUgwG,MAChCxiH,EAAK6hL,aAAervK,EAAU4xH,IAmBhCtpJ,EAAOD,QAAU,SAAS0J,EAAWmC,GAEnC,IAAItH,EAAKsH,EAAQtH,GACbslB,EAAkBhe,EAAQge,gBAC1BkkC,EAASliD,EAAQkiD,OACjBhgC,EAAcliB,EAAQkiB,YAEtB0hL,EAAWJ,EAAuBthJ,GAElCzjD,EAAcuB,EAAQvB,YAEtBmgB,EAAgB5e,EAAQ4e,cACxBqP,EAAqC,oBAAlBrP,EAEnBT,EAAane,EAAQme,WACrBs5D,EAA+B,oBAAft5D,EAChBD,EAAWle,EAAQke,UAAY,YAE/BO,EAAgBze,EAAQye,cACxBolL,EAAqC,oBAAlBplL,EAEnBunC,EAAWhmD,EAAQgmD,UAAY,WAAa,OAAO,GACnDl3B,EAAkB9uB,EAAQ8uB,gBAE1BpH,EAAO1nB,EAAQ0nB,KACf04D,EAA6B,oBAAT14D,EAEpBnI,EAAW,SAAS5hB,EAAS2b,GAC/B,OAAOuhC,EAAKp8C,EAAYd,EAAS2b,GAAO0E,IAGtCjB,EAAO8J,GAAQ4wD,EACjB,mCAAqC2I,EAAa,mBAAqB,IAAvE,WACkB39D,EAAWvE,GAD7B,mGAGe,IAJC,6FAOP0lL,EAPO,qDAad1hL,GACFnF,EAAK0K,YAAYlC,EAAsB1nB,EAAWqkB,EAAa,CAAEwF,KAAM,eAGzE,IAAItK,EAAU,CACZ1kB,GAAIA,EACJqkB,KAAMA,EAENjoB,IAAK,SAAS6I,EAAS2b,GACrB,IAAIwqL,EAAavkL,EAAS5hB,EAAS2b,EAAMna,KAAK4kM,iBAE1CC,EAAgB7kM,KAAK4kM,gBAYzB,cAVO5kM,KAAK4kM,gBAEZvqM,EAAQwqM,GAAe,SAAS9uM,EAAOuK,GACrC,IAAI9B,EAAUmmM,EAAWrkM,GAEzBjG,EAAQwkB,GAAiB,SAASpf,GAChCjB,EAAQiB,GAAQ1J,EAAM0J,SAInBklM,GAGTviM,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAIxT,EAAS3G,KAAKyvB,UAAY,GAG9B,UAFOzvB,KAAKyvB,SAEM,mBAAd9oB,EAAOpN,GACT,OAAOkmB,EAAcjhB,EAAS2b,EAAMxT,EAAOrG,KAExC,GAAkB,gBAAdqG,EAAOpN,GACd,OAAOylB,EAAWxgB,EAAS2b,GAExB,GAAIuqL,EAAW,CAClB,IAAIzlL,EAAW,GACX6lL,EAAmBljM,EAES,oBAArBf,EAAQ2a,WACjBspL,EAAmBP,EAAK/lM,EAAS2b,EAAMvY,EAAQwe,EAAS5hB,EAAS2b,GAAO0sC,IAG1E,IAAI7kC,EAAOhiB,KA2BX,OAzBA3F,EAAQyqM,GAAkB,SAAS/uM,GACjC,IAAIwpB,EACAjf,EAAMsB,EAAOwd,QAAQrpB,GAMzB,GAJgC,oBAArB8K,EAAQ2a,WACjB+D,EAAkB1e,EAAQ2a,SAAShd,EAASzI,EAAOokB,EAAM7Z,IAGtDif,EASHyC,EAAK4iL,gBAAkB5iL,EAAK4iL,iBAAmB,GAC/C5iL,EAAK4iL,gBAAgBtkM,GAAOvK,EAG5BkpB,EAASjrB,KAAK0lB,EAAUyJ,iBAAiB3kB,EAAS,SAb9B,CACpB,IAAIqD,EAAMyd,EAAc9gB,EAASzI,EAAOokB,EAAM7Z,GAE1CuB,GACFod,EAASjrB,KAAK6N,OAabod,IAGXyQ,wBAAyB,SAAS35B,EAAOwE,EAAOsgB,GAC9C,OAAOspL,EAAuBtlL,EAAiBiQ,IAGjD9P,WAAY,SAASxgB,EAAS2b,EAAM6B,EAAO+T,GACzC,IAAIlS,EAAW6J,EAAOy8K,EAAuBtlL,EAAiBiQ,IAE1D8tE,EAAYogC,EAAa7iH,GAO7B,OANAyiF,EAAUt0E,YAAYzK,GAEtB7d,KAAKyvB,SAAW,CACdl2B,GAAI,gBAGC,GAGTwrM,cAAe,SAASvmM,EAAS2b,EAAM6B,EAAO+T,GAC5C,IAAI6sE,EAAYogC,EAAa7iH,GACzB6qL,EAAchpL,EAAMq4K,eAAe9qK,WACnCjpB,EAAM2mC,SAAS+b,EAAQgiJ,EAAa,cAAe,IASvD,OAPApoG,EAAU9sE,YAAYk1K,GAEtBhlM,KAAKyvB,SAAW,CACdl2B,GAAI,iBACJ+G,IAAKA,IAGA,GAGTumD,SAAU,SAASroD,EAASymM,EAASxgL,EAAOhlB,EAAM1J,EAAOuK,GACvD,IAAI8jB,EAAYkK,EAAW22K,EAAS,gBACpC,OAAOp+I,EAASroD,EAAS4lB,EAAW3kB,EAAMa,IAG5CioB,KAAM,SAAS/pB,EAAS4lB,EAAWjK,EAAM4V,GAEvC,OADA3L,EAAYogL,EAAapgL,GAClBmE,EAAK/pB,EAAS4lB,EAAWjK,EAAM4V,IAGxCm1K,UAAW,SAAS1mM,EAAS4lB,EAAWjK,EAAM4V,GAC5C3L,EAAYogL,EAAapgL,GACzB,IAAI1kB,EAAQ0gB,EAAS5hB,EAAS4lB,GAC9B,OAAO1kB,GAASA,EAAMhM,UAAYutF,GAAc14D,EAAK/pB,EAAS4lB,EAAWjK,EAAM4V,KAGjFmwK,iBAAkB,SAAS1hM,EAASzI,EAAOokB,EAAM7Z,GAC/C,GAAgC,oBAArBO,EAAQ2a,SACjB,OAAO3a,EAAQ2a,SAAShd,EAASzI,EAAOokB,EAAM7Z,KA0CpD,OAlCIqvB,IACF1R,EAAQ0R,gBAAkB,SAASnxB,EAASymM,EAASxgL,EAAOhlB,EAAM1J,EAAOuK,GACvE,IAKIqsB,EALAvI,EAAYogL,EAAaS,GAEzBE,EAAaniJ,EAAQv+B,EAAO,YAC5Bq2K,EAAWr2K,EAAM1uB,WAKPukB,IAAVvkB,IACFA,EAAQ,IAKJovM,GAAcrK,IAAa/kM,IAK7BqyB,SAASozK,gBAAkB/2K,IAC7BkI,EAAYgtK,EAAgBnE,EAAa/wK,GAAQq2K,EAAU/kM,IAG7D45B,EAAgBnxB,EAAS4lB,EAAWK,EAAOhlB,EAAM1J,EAAOuK,GAEpDqsB,GACF8uK,EAAah3K,EAAOkI,MAMnB1O,I,khxDC/UHlnB,EAAUC,iCACZouM,GAAa,EAEXluM,EAAcF,sCACdG,EAAcH,sCACdI,EAAWC,EAAOC,KAAP,UAAeJ,EAAf,YAA8BC,GAAe,QAAQI,SAAS,UAEzEC,EAAQ,CACZ6tF,QAAS,GACTxvC,aAAc,KACd+tC,gBAAiB,KACjByhH,mBAAoB,GACpBxhH,eAAgB,KAChByhH,kBAAmB,GACnBC,SAAU,GACV/hH,cAAe,KACfC,iBAAkB,KAClB+hH,oBAAqB,GACrB9hH,gBAAiB,KACjB+hH,mBAAoB,GACpB/iG,gBAAiB,GACjB5sD,qBAAsB,KACtB4vJ,wBAAyB,KACzBC,2BAA4B,GAC5BC,uBAAwB,KACxBC,0BAA2B,GAC3BC,UAAW,GACXtjG,OAAQ,GACRxuF,SAAU,GACVo1G,QAAS,GACTv0C,WAAY,GACZsjC,eAAgB,KAChB4tF,uBAAwB,KACxBhyL,YAAa,GACbmxF,aAAc,GACdiY,UAAW,GACX6oF,gBAAiB,GACjBC,WAAY,GACZC,YAAa,GACbC,aAAc,GACdC,SAAU,GACVC,cAAe,GACfC,UAAW,GACX98E,gBAAiB,GACjBD,eAAgB,GAChBg9E,iBAAkB,GAClBC,cAAe,GACfvkG,UAAW,GACXte,eAAgB,KAChB8iH,kBAAmB,KACnBC,qBAAsB,GACtBC,iBAAkB,KAClBC,oBAAqB,GACrBC,eAAe,EACfjyF,SAAU,GACVsU,aAAc,GACdvR,WAAY,GACZS,UAAW,GACXhD,OAAQ,KACR0xF,YAAa,KACbC,WAAY,KACZxsF,YAAa,GACbysF,iBAAkB,GAClBC,cAAe,GACfC,aAAc,GACdC,cAAe,GACfC,eAAgB,GAChBC,YAAa,GACbC,cAAe,GACfxzL,OAAQ,GACR8uF,aAAc,GACd2kG,cAAc,EACdC,aAAc,GACdC,iBAAiB,EACjB72J,aAAa,EACb82J,cAAc,EACdC,YAAY,EACZC,eAAgB,GAChBC,YAAa,GACbC,cAAe,GACfC,YAAa,GACbC,YAAa,GACbC,aAAc,KACdC,gBAAiB,GACjBC,eAAgB,IAGZ1vM,EAAU,CACd4sF,QAAS,SAAC7tF,GAAD,OAAWA,EAAM6tF,SAC1BxvC,aAAc,SAACr+C,GAAD,OAAWA,EAAMq+C,cAC/B+tC,gBAAiB,SAACpsF,GAAD,OAAWA,EAAMosF,iBAClCyhH,mBAAoB,SAAC7tM,GAAD,OAAWA,EAAM6tM,oBACrCxhH,eAAgB,SAACrsF,GAAD,OAAWA,EAAMqsF,gBACjCyhH,kBAAmB,SAAC9tM,GAAD,OAAWA,EAAM8tM,mBACpCC,SAAU,SAAC/tM,GAAD,OAAWA,EAAM+tM,UAC3B/hH,cAAe,SAAChsF,GAAD,OAAWA,EAAMgsF,eAChCC,iBAAkB,SAACjsF,GAAD,OAAWA,EAAMisF,kBACnC+hH,oBAAqB,SAAChuM,GAAD,OAAWA,EAAMguM,qBACtC9hH,gBAAiB,SAAClsF,GAAD,OAAWA,EAAMksF,iBAClC+hH,mBAAoB,SAACjuM,GAAD,OAAWA,EAAMiuM,oBACrC/iG,gBAAiB,SAAClrG,GAAD,OAAWA,EAAMkrG,iBAClC5sD,qBAAsB,SAACt+C,GAAD,OAAWA,EAAMs+C,sBACvC4vJ,wBAAyB,SAACluM,GAAD,OAAWA,EAAMkuM,yBAC1CC,2BAA4B,SAACnuM,GAAD,OAAWA,EAAMmuM,4BAC7CC,uBAAwB,SAACpuM,GAAD,OAAWA,EAAMouM,wBACzCC,0BAA2B,SAACruM,GAAD,OAAWA,EAAMquM,2BAC5CrjG,OAAQ,SAAChrG,GAAD,OAAWA,EAAMgrG,QACzBxuF,SAAU,SAACxc,GAAD,OAAWA,EAAMwc,UAC3Bo1G,QAAS,SAAC5xH,GAAD,OAAWA,EAAM4xH,SAC1Bv0C,WAAY,SAACr9E,GAAD,OAAWA,EAAMq9E,YAC7BsjC,eAAgB,SAAC3gH,GAAD,OAAWA,EAAM2gH,gBACjC4tF,uBAAwB,SAACvuM,GAAD,OAAWA,EAAMuuM,wBACzChyL,YAAa,SAACvc,GAAD,OAAWA,EAAMuc,aAC9BmxF,aAAc,SAAC1tG,GAAD,OAAWA,EAAM0tG,cAC/BiY,UAAW,SAAC3lH,GAAD,OAAWA,EAAM2lH,WAC5B6oF,gBAAiB,SAACxuM,GAAD,OAAWA,EAAMwuM,iBAClCC,WAAY,SAACzuM,GAAD,OAAWA,EAAMyuM,YAC7BG,SAAU,SAAC5uM,GAAD,OAAWA,EAAM4uM,UAC3B58E,gBAAiB,SAAChyH,GAAD,OAAWA,EAAMgyH,iBAClCD,eAAgB,SAAC/xH,GAAD,OAAWA,EAAM+xH,gBACjCi9E,cAAe,SAAChvM,GAAD,OAAWA,EAAMgvM,eAChCvkG,UAAW,SAACzqG,GAAD,OAAWA,EAAMyqG,WAC5Bte,eAAgB,SAACnsF,GAAD,OAAWA,EAAMmsF,gBACjC8iH,kBAAmB,SAACjvM,GAAD,OAAWA,EAAMivM,mBACpCC,qBAAsB,SAAClvM,GAAD,OAAWA,EAAMkvM,sBACvCC,iBAAkB,SAACnvM,GAAD,OAAWA,EAAMmvM,kBACnCC,oBAAqB,SAACpvM,GAAD,OAAWA,EAAMovM,qBACtChyF,SAAU,SAACp9G,GAAD,OAAWA,EAAMo9G,UAC3BsU,aAAc,SAAC1xH,GAAD,OAAWA,EAAM0xH,cAC/BvR,WAAY,SAACngH,GAAD,OAAWA,EAAMmgH,YAC7BS,UAAW,SAAC5gH,GAAD,OAAWA,EAAM4gH,WAC5BhD,OAAQ,SAAC59G,GAAD,OAAWA,EAAM49G,QACzBmF,YAAa,SAAC/iH,GAAD,OAAWA,EAAM+iH,aAC9BysF,iBAAkB,SAACxvM,GAAD,OAAWA,EAAMwvM,kBACnCC,cAAe,SAACzvM,GAAD,OAAWA,EAAMyvM,eAChCC,aAAc,SAAC1vM,GAAD,OAAWA,EAAM0vM,cAC/BC,cAAe,SAAC3vM,GAAD,OAAWA,EAAM2vM,eAChCC,eAAgB,SAAC5vM,GAAD,OAAWA,EAAM4vM,gBACjClB,YAAa,SAAC1uM,GAAD,OAAWA,EAAM0uM,aAC9BpyL,OAAQ,SAACtc,GAAD,OAAWA,EAAMsc,QACzB0zL,aAAc,SAAChwM,GAAD,OAAWA,EAAMgwM,cAC/BE,aAAc,SAAClwM,GAAD,OAAWA,EAAMkwM,cAC/BC,WAAY,SAACnwM,GAAD,OAAWA,EAAMmwM,YAC7BC,eAAgB,SAACpwM,GAAD,OAAWA,EAAMowM,gBACjCC,YAAa,SAACrwM,GAAD,OAAWA,EAAMqwM,aAC9BC,cAAe,SAACtwM,GAAD,OAAWA,EAAMswM,eAChCC,YAAa,SAACvwM,GAAD,OAAWA,EAAMuwM,aAC9BC,YAAa,SAACxwM,GAAD,OAAWA,EAAMwwM,aAC9BC,aAAc,SAACzwM,GAAD,OAAWA,EAAMywM,cAC/BC,gBAAiB,SAAC1wM,GAAD,OAAWA,EAAM0wM,iBAClCC,eAAgB,SAAC3wM,GAAD,OAAWA,EAAM2wM,iBAG7BzvM,EAAU,CACd0vM,aADc,YACS,IAATxvM,EAAS,EAATA,OACZ,OAAOC,IAAMlD,IAAIoB,EAAU,wBAA0BgC,OAAMvB,MAAM2F,YAAa,CAACrE,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAClLqE,EAAO,iBAAkBrE,EAAOrB,KAAKi3D,UACpCjxD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BkvM,WARc,YAQkB,WAApBv5L,EAAoB,EAApBA,UAAWlW,EAAS,EAATA,OACrBA,EAAO,WAAY,IACnB,IAAIwsB,EAAMplB,KAEV,OAAOnH,IAAMlD,IAAIoB,EAAU,kBAAoBgC,OAAMvB,MAAM2F,YAAa,CAACrE,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAAjK,yDAAuK,WAAM1E,GAAN,iHAQ5K,GAPI+zM,EAAc,EACdC,EAAc,GACdC,EAAU,EACVC,EAAa,GACbC,EAAa,GACbC,EAAc,GAEfp0M,EAAOrB,KAAKQ,OAAS,EACtB,IAAQF,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,KAEyB,GAA3Dk1M,EAAWtpL,QAAQ7qB,EAAOrB,KAAKM,GAAGo1M,uBACnCF,GAAcn0M,EAAOrB,KAAKM,GAAGo1M,oBAAsB,KAGrDD,GAAep0M,EAAOrB,KAAKM,GAAGytL,kBAAoB,IAE9C4nB,EAAM,IAAI1jL,KACgB,MAA3B5wB,EAAOrB,KAAKM,GAAGi0G,UAA+C,IAA3BlzG,EAAOrB,KAAKM,GAAGi0G,WAC/CA,EAAW,IAAItiF,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpCohG,EAAMphG,IACP6gG,IACAC,EAAYv0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI9B6nB,EAAQ,IAAI3jL,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpC/wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,WAAY,IAAIw5E,KAAKC,eAAe,QAC1D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOs7H,KAEW,MAAtBv0M,EAAOrB,KAAKM,GAAGg0G,KAAqC,IAAtBjzG,EAAOrB,KAAKM,GAAGg0G,MAC1CA,EAAM,IAAIriF,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KAC/BqhG,EAAMrhG,IACPghG,IACAC,EAAWz0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI7B8nB,EAAQ,IAAI5jL,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KACpC9wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,MAAO,IAAIw5E,KAAKC,eAAe,QACrD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOu7H,KAIV/sB,EAAO,IAAI72J,KAAK5wB,EAAOrB,KAAKM,GAAG6gD,SACnC3d,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOwuG,IAtE4J,gBA2EjJ,EAAKjgL,SAAS,kBAAmBxH,GA3EgH,cA2ExKy0M,EA3EwK,OA4E5KL,GAAeK,EAEfN,EAAWz/L,QAAQ,QAAS,IAC5B0/L,EAAY1/L,QAAQ,QAAS,IA/E+I,UAiFtKpQ,IAAMlD,IAAIoB,EAAU,6CAA+C2xM,EAAY,CAAC5vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAgwM,GACzL,IAAIC,EAAcD,EAAQ/1M,KAE1BqB,EAAOrB,KAAKmH,SAAQ,SAASC,GAC3B8qB,EAAIrpB,SAAS,qBAAsBzB,EAAKf,IAAIN,MAAM,WAChD,IAAIgqG,GAAW,EACXumB,EAAkBpkG,EAAI3sB,QAAQ,mBAC9B8wH,EAAiBnkG,EAAI3sB,QAAQ,kBAC7BqiC,EAAa/hC,OAAMvB,MAAMsjC,WAE7B,GAAG0uF,EAAgB91H,OAAS,GAAKonC,EAAWpnC,OAAS,EACnD,IAAI,IAAIF,EAAI,EAAGA,EAAIg2H,EAAgB91H,OAAQF,KACM,IAA5CsnC,EAAW1b,QAAQoqG,EAAgBh2H,MACpCyvG,GAAW,GAKdsmB,EAAe71H,OAAS,IAC+B,IAArD61H,EAAenqG,QAAQrmB,OAAMvB,MAAM2F,eACpC8lG,GAAW,GAIfvsE,aAAIt0B,IAAI9H,EAAM,WAAY2oG,MAG5BimG,EAAY7uM,SAAQ,SAAS8uM,GACxBA,EAAQ5vM,IAAMe,EAAKsuM,qBACpBlyK,aAAIt0B,IAAI9H,EAAM,cAAe6uM,EAAQ7zM,eAI1C4D,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OAnHmJ,yBAsHtKN,IAAMlD,IAAIoB,EAAU,yCAA2C4xM,EAAa,CAAC7vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA5K,yDAAkL,WAAMmwM,GAAN,8FAClLC,EAAeD,EAASl2M,KAD0J,SAIhL,EAAK6I,SAAS,mBAAoB4sM,GAAa1vM,MAAM,WACzD,IAAIqpL,EAAa96K,KAAKC,MAAMqH,EAAU9X,QAAQ0nL,eAC1C4qB,EAAW,GAEfD,EAAahvM,SAAQ,SAASC,EAAMC,GAElC,IAFyC,eAEjC/G,GACN,GAAGe,EAAOrB,KAAKM,GAAGytL,mBAAqB3mL,EAAKf,GAE1C,GAAuB,MAApBe,EAAK4xB,YAAqB,CAC3B,IAAIipG,GAAe,EACf3wC,EAAY,GAEhBp/D,EAAIrpB,SAAS,mBAAoBxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,KAAnE,yDAAyE,WAAMswM,GAAN,0FACpEh1M,EAAOrB,KAAKM,GAAGytL,mBAAqBsoB,EAAUhwM,KAC/C47H,GAAe,IAGdA,EALoE,gCAM/D/vG,EAAIrpB,SAAS,mBAAoBkrC,SAASsiK,EAAUr9K,cAAcjzB,MAAM,WAC5EurF,EAAY11E,EAAU9X,QAAQynL,gBAPqC,6BAUrEj6F,EAAY11E,EAAU9X,QAAQunL,aAVuC,OAanE9kL,EAAU,CACZ,WAAclF,EAAOrB,KAAKM,GAAGytL,kBAC7B,UAAa1sL,EAAOrB,KAAKM,GAAGo1M,oBAC5B,UAAapkH,GAEfp/D,EAAIrpB,SAAS,YAAatC,GAASR,MAAM,WACvCmsB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,MAAM,WAChEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUsb,EAAU9X,QAAQwnL,WACpD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAasb,EAAU9X,QAAQynL,cAEvD6qB,EAASt1M,KAAK,CACZmxF,WAAY5wF,EAAOrB,KAAKM,GAAGytL,kBAC3Bz5H,UAAWjzD,EAAOrB,KAAKM,GAAGo1M,oBAC1B90L,OAAQvf,EAAOrB,KAAKM,GAAGsgB,OACvB0uF,OAAQjuG,EAAOrB,KAAKM,GAAG+F,GACvB2oG,SAAU3tG,EAAOrB,KAAKM,GAAG0uG,iBA5BwC,2CAAzE,4DAmCAxrE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAU8G,EAAK4xB,aACvCo2J,EAAWjoL,SAAQ,SAASmvM,GAC1B,GAAGA,EAAU7tM,KAAOsrC,SAAS3sC,EAAK4xB,aAEhC,OADAwK,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAag2M,EAAUC,aACxC,KAIXH,EAASt1M,KAAK,CACZmxF,WAAY5wF,EAAOrB,KAAKM,GAAGytL,kBAC3Bz5H,UAAWjzD,EAAOrB,KAAKM,GAAGo1M,oBAC1B90L,OAAQvf,EAAOrB,KAAKM,GAAGsgB,OACvB0uF,OAAQjuG,EAAOrB,KAAKM,GAAG+F,GACvB2oG,SAAU3tG,EAAOrB,KAAKM,GAAG0uG,YAvDzB1uG,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,EAApCA,MA8DV,IAAIN,EAAO,CACT,UAAa,CACX,MAAS,CAAE,MAAS,OAAQ,KAAQ,UACpC,OAAU,CAAE,MAAS,eAAgB,KAAQ,UAC7C,SAAY,CAAE,MAASsU,KAAKkL,UAAU42L,GAAW,KAAQ,WAE3D,uBAAyB,GAG3B,OAAOzwM,IAAMqC,KAAKnE,EAAU,kDAAmD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA4B,GACzL,IAAI6uM,EAAeliM,KAAKC,MAAM5M,EAAO3H,KAAKoT,UAAUojM,aAAa3zM,OAC7D0sL,GAAS,EAEbinB,EAAarvM,SAAQ,SAASsvM,EAAUpvM,GAEnChG,EAAOrB,KAAKqH,GAAOuZ,QAAU61L,EAASC,UAErCnnB,EADoB,MAAnBknB,EAASE,QAGDF,EAASE,QAGtBnzK,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,SAAUkoL,YA9F0I,OAmGtL7pL,EAAO,WAAYrE,EAAOrB,MAC1B0F,EAAO,qBAAsB0vM,GAC7B1vM,EAAO,yBAA0B2vM,GACjC3vM,EAAO,mBAAoB4vM,GAC3B5vM,EAAO,uBAAwB6vM,GAvGuJ,2CAAlL,uDAwGHvvM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OA/NmJ,4CAAvK,uDAiOJD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B2wM,YAjPc,YAiPmB,WAApBh7L,EAAoB,EAApBA,UAAWlW,EAAS,EAATA,OACtBA,EAAO,YAAa,IACpB,IAAIwsB,EAAMplB,KAEV,OAAOnH,IAAMlD,IAAIoB,EAAU,QAAS,CAAC+B,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA7H,yDAAmI,WAAM1E,GAAN,iHAQxI,GAPI+zM,EAAc,EACdC,EAAc,GACdC,EAAU,EACVC,EAAa,GACbC,EAAa,GACbC,EAAc,GAEfp0M,EAAOrB,KAAKQ,OAAS,EACtB,IAAQF,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,KAEyB,GAA3Dk1M,EAAWtpL,QAAQ7qB,EAAOrB,KAAKM,GAAGo1M,uBACnCF,GAAcn0M,EAAOrB,KAAKM,GAAGo1M,oBAAsB,KAGrDD,GAAep0M,EAAOrB,KAAKM,GAAGytL,kBAAoB,IAE9C4nB,EAAM,IAAI1jL,KACgB,MAA3B5wB,EAAOrB,KAAKM,GAAGi0G,UAA+C,IAA3BlzG,EAAOrB,KAAKM,GAAGi0G,WAC/CA,EAAW,IAAItiF,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpCohG,EAAMphG,IACP6gG,IACAC,EAAYv0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI9B6nB,EAAQ,IAAI3jL,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpC/wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,WAAY,IAAIw5E,KAAKC,eAAe,QAC1D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOs7H,KAEW,MAAtBv0M,EAAOrB,KAAKM,GAAGg0G,KAAqC,IAAtBjzG,EAAOrB,KAAKM,GAAGg0G,MAC1CA,EAAM,IAAIriF,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KAC/BqhG,EAAMrhG,IACPghG,IACAC,EAAWz0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI7B8nB,EAAQ,IAAI5jL,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KACpC9wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,MAAO,IAAIw5E,KAAKC,eAAe,QACrD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOu7H,KAIV/sB,EAAO,IAAI72J,KAAK5wB,EAAOrB,KAAKM,GAAG6gD,SACnC3d,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOwuG,IAtEwH,gBA2E7G,EAAKjgL,SAAS,kBAAmBxH,GA3E4E,cA2EpIy0M,EA3EoI,OA4ExIL,GAAeK,EAEfN,EAAWz/L,QAAQ,QAAS,IAC5B0/L,EAAY1/L,QAAQ,QAAS,IA/E2G,UAiFlIpQ,IAAMlD,IAAIoB,EAAU,6CAA+C2xM,EAAY,CAAC5vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAgwM,GACzL,IAAIC,EAAcD,EAAQ/1M,KAE1BqB,EAAOrB,KAAKmH,SAAQ,SAASC,GAC3B8qB,EAAIrpB,SAAS,qBAAsBzB,EAAKf,IAAIN,MAAM,WAChD,IAAIgqG,GAAW,EACXumB,EAAkBpkG,EAAI3sB,QAAQ,mBAC9B8wH,EAAiBnkG,EAAI3sB,QAAQ,kBAC7BqiC,EAAa/hC,OAAMvB,MAAMsjC,WAE7B,GAAG0uF,EAAgB91H,OAAS,GAAKonC,EAAWpnC,OAAS,EACnD,IAAI,IAAIF,EAAI,EAAGA,EAAIg2H,EAAgB91H,OAAQF,KACM,IAA5CsnC,EAAW1b,QAAQoqG,EAAgBh2H,MACpCyvG,GAAW,GAKdsmB,EAAe71H,OAAS,IAC+B,IAArD61H,EAAenqG,QAAQrmB,OAAMvB,MAAM2F,eACpC8lG,GAAW,GAIfvsE,aAAIt0B,IAAI9H,EAAM,WAAY2oG,MAG5BimG,EAAY7uM,SAAQ,SAAS8uM,GACxBA,EAAQ5vM,IAAMe,EAAKsuM,qBACpBlyK,aAAIt0B,IAAI9H,EAAM,cAAe6uM,EAAQ7zM,eAI1C4D,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OAnH+G,yBAsHlIN,IAAMlD,IAAIoB,EAAU,yCAA2C4xM,EAAa,CAAC7vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA5K,yDAAkL,WAAMmwM,GAAN,8FAClLC,EAAeD,EAASl2M,KAD0J,SAIhL,EAAK6I,SAAS,mBAAoB4sM,GAAa1vM,MAAM,WACzD,IAAIqpL,EAAa96K,KAAKC,MAAMqH,EAAU9X,QAAQ0nL,eAE9C2qB,EAAahvM,SAAQ,SAASC,EAAMC,GAElC,IAFyC,eAEjC/G,GACN,GAAGe,EAAOrB,KAAKM,GAAGytL,mBAAqB3mL,EAAKf,GAE1C,GAAuB,MAApBe,EAAK4xB,YAAqB,CAC3B,IAAIipG,GAAe,EACf3wC,EAAY,GAEhBp/D,EAAIrpB,SAAS,mBAAoBxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,KAAnE,yDAAyE,WAAMswM,GAAN,0FACpEh1M,EAAOrB,KAAKM,GAAGytL,mBAAqBsoB,EAAUhwM,KAC/C47H,GAAe,IAGdA,EALoE,gCAM/D/vG,EAAIrpB,SAAS,mBAAoBkrC,SAASsiK,EAAUr9K,cAAcjzB,MAAM,WAC5EurF,EAAY11E,EAAU9X,QAAQynL,gBAPqC,6BAUrEj6F,EAAY11E,EAAU9X,QAAQunL,aAVuC,OAanE9kL,EAAU,CACZ,WAAclF,EAAOrB,KAAKM,GAAGytL,kBAC7B,UAAa1sL,EAAOrB,KAAKM,GAAGo1M,oBAC5B,UAAapkH,GAEfp/D,EAAIrpB,SAAS,YAAatC,GAASR,MAAM,WACvCmsB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,MAAM,WAChEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUsb,EAAU9X,QAAQwnL,WACpD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAasb,EAAU9X,QAAQynL,oBArBY,2CAAzE,4DA2BA/nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAU8G,EAAK4xB,aACvCo2J,EAAWjoL,SAAQ,SAASmvM,GAC1B,GAAGA,EAAU7tM,KAAOsrC,SAAS3sC,EAAK4xB,aAEhC,OADAwK,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAag2M,EAAUC,aACxC,MAtCTj2M,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,EAApCA,SAT0K,OAwDtLoF,EAAO,kBAAmBrE,EAAOrB,KAAKQ,QACtCkF,EAAO,YAAarE,EAAOrB,MAC3B0F,EAAO,sBAAuB0vM,GAC9B1vM,EAAO,0BAA2B2vM,GAClC3vM,EAAO,oBAAqB4vM,GAC5B5vM,EAAO,wBAAyB6vM,GA7DsJ,2CAAlL,uDA8DHvvM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OArL+G,4CAAnI,uDAuLJD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B4wM,qBAhbc,YAgbiB,IAATnxM,EAAS,EAATA,OACpB,OAAOC,IAAMlD,IAAIoB,EAAU,6CAA+CgC,OAAMvB,MAAM2F,YAAa,CAACrE,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACvMqE,EAAO,yBAA0BrE,EAAOrB,KAAKi3D,UAC5CjxD,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B6wM,mBAvbc,WAub0BvwM,GAAS,WAA7BqV,EAA6B,EAA7BA,UAAWlW,EAAkB,EAAlBA,OAC7BA,EAAO,mBAAoB,IAC3B,IAAIwsB,EAAMplB,KAEV,OAAOnH,IAAMqC,KAAKnE,EAAU,QAAS0C,EAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAAvI,yDAA6I,WAAM1E,GAAN,iHAQlJ,GAPI+zM,EAAc,EACdC,EAAc,GACdC,EAAU,EACVC,EAAa,GACbC,EAAa,GACbC,EAAc,GAEfp0M,EAAOrB,KAAKQ,OAAS,EACtB,IAAQF,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,KAEyB,GAA3Dk1M,EAAWtpL,QAAQ7qB,EAAOrB,KAAKM,GAAGo1M,uBACnCF,GAAcn0M,EAAOrB,KAAKM,GAAGo1M,oBAAsB,KAGrDD,GAAep0M,EAAOrB,KAAKM,GAAGytL,kBAAoB,IAE9C4nB,EAAM,IAAI1jL,KACgB,MAA3B5wB,EAAOrB,KAAKM,GAAGi0G,UAA+C,IAA3BlzG,EAAOrB,KAAKM,GAAGi0G,WAC/CA,EAAW,IAAItiF,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpCohG,EAAMphG,IACP6gG,IACAC,EAAYv0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI9B6nB,EAAQ,IAAI3jL,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpC/wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,WAAY,IAAIw5E,KAAKC,eAAe,QAC1D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOs7H,KAEW,MAAtBv0M,EAAOrB,KAAKM,GAAGg0G,KAAqC,IAAtBjzG,EAAOrB,KAAKM,GAAGg0G,MAC1CA,EAAM,IAAIriF,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KAC/BqhG,EAAMrhG,IACPghG,IACAC,EAAWz0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI7B8nB,EAAQ,IAAI5jL,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KACpC9wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,MAAO,IAAIw5E,KAAKC,eAAe,QACrD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOu7H,KAIV/sB,EAAO,IAAI72J,KAAK5wB,EAAOrB,KAAKM,GAAG6gD,SACnC3d,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOwuG,IAtEkI,gBA2EvH,EAAKjgL,SAAS,kBAAmBxH,GA3EsF,cA2E9Iy0M,EA3E8I,OA4ElJL,GAAeK,EAEfN,EAAWz/L,QAAQ,QAAS,IAC5B0/L,EAAY1/L,QAAQ,QAAS,IA/EqH,UAiF5IpQ,IAAMlD,IAAIoB,EAAU,6CAA+C2xM,EAAY,CAAC5vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAgwM,GACzL,IAAIC,EAAcD,EAAQ/1M,KAE1BqB,EAAOrB,KAAKmH,SAAQ,SAASC,GAC3B4uM,EAAY7uM,SAAQ,SAAS8uM,GACxBA,EAAQ5vM,IAAMe,EAAKsuM,qBACpBlyK,aAAIt0B,IAAI9H,EAAM,cAAe6uM,EAAQ7zM,eAI1C4D,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OA5FyH,yBA+F5IN,IAAMlD,IAAIoB,EAAU,yCAA2C4xM,EAAa,CAAC7vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA5K,yDAAkL,WAAMmwM,GAAN,8FAClLC,EAAeD,EAASl2M,KAD0J,SAIhL,EAAK6I,SAAS,mBAAoB4sM,GAAa1vM,MAAM,WACzD,IAAIqpL,EAAa96K,KAAKC,MAAMqH,EAAU9X,QAAQ0nL,eAE9C2qB,EAAahvM,SAAQ,SAASC,EAAMC,GAElC,IAFyC,eAEjC/G,GACN,GAAGe,EAAOrB,KAAKM,GAAGytL,mBAAqB3mL,EAAKf,GAE1C,GAAuB,MAApBe,EAAK4xB,YAAqB,CAC3B,IAAIipG,GAAe,EACf3wC,EAAY,GAEhBp/D,EAAIrpB,SAAS,mBAAoBxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,KAAnE,yDAAyE,WAAMswM,GAAN,0FACpEh1M,EAAOrB,KAAKM,GAAGytL,mBAAqBsoB,EAAUhwM,KAC/C47H,GAAe,IAGdA,EALoE,gCAM/D/vG,EAAIrpB,SAAS,mBAAoBkrC,SAASsiK,EAAUr9K,cAAcjzB,MAAM,WAC5EurF,EAAY11E,EAAU9X,QAAQynL,gBAPqC,6BAUrEj6F,EAAY11E,EAAU9X,QAAQunL,aAVuC,OAanE9kL,EAAU,CACZ,WAAclF,EAAOrB,KAAKM,GAAGytL,kBAC7B,UAAa1sL,EAAOrB,KAAKM,GAAGo1M,oBAC5B,UAAapkH,GAEfp/D,EAAIrpB,SAAS,YAAatC,GAASR,MAAM,WACvCmsB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,MAAM,WAChEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUsb,EAAU9X,QAAQwnL,WACpD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAasb,EAAU9X,QAAQynL,oBArBY,2CAAzE,4DA2BA/nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAU8G,EAAK4xB,aACvCo2J,EAAWjoL,SAAQ,SAASmvM,GAC1B,GAAGA,EAAU7tM,KAAOsrC,SAAS3sC,EAAK4xB,aAEhC,OADAwK,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAag2M,EAAUC,aACxC,MAtCTj2M,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,EAApCA,SAT0K,OAwDtLoF,EAAO,mBAAoBrE,EAAOrB,MAClC0F,EAAO,6BAA8B0vM,GACrC1vM,EAAO,iCAAkC2vM,GACzC3vM,EAAO,2BAA4B4vM,GACnC5vM,EAAO,+BAAgC6vM,GA5D+I,2CAAlL,uDA/F4I,4CAA7I,uDA8JJvvM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAGrB8wM,gBA7lBQ,WA6lBkB11M,GAAQ,wKAAjBqE,OACjB+vM,EAAc,GADoB,iBAGnBp0M,EAAOrB,MAHY,gEAG3BoH,EAH2B,2BAKH,EAAKyB,SAAS,eAAgBzB,EAAK2mL,mBALhC,QAK5BipB,EAL4B,OAMlCvB,GAAeuB,EAAmB,IANA,qDAQlC1iK,QAAQruC,MAAM,yBAAd,MARkC,2KAY/BwvM,GAZ+B,0EAclCwB,aA3mBQ,WA2mBelpB,GAAmB,uJAA5BroL,OACdwxM,EAAYnpB,EAD8B,gCAKnBpoL,IAAMlD,IAAIoB,EAAU,oBAAqB,CAC9D+vB,OAAQ,CAAEujL,mBAAoBD,GAC9BtxM,QAAS,CACP,eAAgB,mBAChB,cAAiB,SAAWC,OAAMvB,MAAMwB,SATF,UAKpC4yE,EALoC,OAab,IAAzBA,EAAS14E,KAAKQ,OAbwB,yCAejC02M,GAfiC,OAmB1CA,EAAYx+H,EAAS14E,KAAK,GAAGqG,GAnBa,2DAqB1CiuC,QAAQruC,MAAM,mCAAd,MACM,IAAIC,MAAJ,qBAtBoC,oFA0B1CkxM,iBAroBQ,WAqoBmBrpB,GAAmB,yJAA5BroL,OAClBwxM,EAAYnpB,EACZspB,EAAY,GAFkC,gCAMvB1xM,IAAMlD,IAAIoB,EAAU,oBAAqB,CAC9D+vB,OAAQ,CAAEujL,mBAAoBD,GAC9BtxM,QAAS,CACP,eAAgB,mBAChB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAVE,UAMxC4yE,EANwC,OAcjB,IAAzBA,EAAS14E,KAAKQ,OAd4B,0CAgBrC62M,GAhBqC,QAoB9CH,EAAYx+H,EAAS14E,KAAK,GAAGqG,GAC7BgxM,EAAY3+H,EAAS14E,KAAK,GArBoB,2DAuB9Cs0C,QAAQruC,MAAM,mCAAd,MACM,IAAIC,MAAJ,qBAxBwC,oFA4BpDoxM,QAjqBc,WAiqBI/wM,GAAS,IAAlBb,EAAkB,EAAlBA,OACP,OAAOC,IAAMlD,IAAIoB,EAAU,2BAA6B0C,EAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACrK,GAAGA,EAAOrB,KAAK,GAAI,CACjB,IAAIA,EAAO,CACT,OAAUqB,EAAOrB,KAAK,GAAGqG,GACzB,QAAWhF,EAAOrB,KAAK,GAAGk2H,SAE5BxwH,EAAO,mBAAoB1F,GAC3B0F,EAAO,mBAAoBrE,EAAOrB,KAAK,GAAGoC,UACtC,CACJ,IAAIpC,EAAO,CACT,OAAU,GACV,QAAW,IAEb0F,EAAO,mBAAoB1F,GAC3B0F,EAAO,mBAAoB,QAE5BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BsxM,gBAtrBc,WAsrBuBhxM,GAAS,WAA7BqV,EAA6B,EAA7BA,UAAWlW,EAAkB,EAAlBA,OAC1B,OAAOC,IAAMlD,IAAIoB,EAAU,2BAA6B0C,EAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAC5J,IAAIrB,EAAO,CACT,OAAUqB,EAAOrB,KAAK,GAAGqG,GACzB,QAAWhF,EAAOrB,KAAK,GAAGk2H,SAG5B,EAAKrtH,SAAS,YAAatC,GAASR,MAAM,WACxCL,EAAO,iBAAkBkW,EAAU9X,QAAQwnL,cAG7C5lL,EAAO,mBAAoB1F,GAC3B0F,EAAO,mBAAoBrE,EAAOrB,KAAK,GAAGoC,MAE1CuD,IAAMlD,IAAIoB,EAAU,2CAA6CxC,EAAOrB,KAAK,GAAG01M,oBAAqB,CAAC9vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAAe,GAChMpB,EAAO,sBAAuBoB,EAAK9G,KAAK,GAAGoC,YAE5C4D,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BuxM,UA3sBc,WA2sBMjxM,GAAS,IAAlBb,EAAkB,EAAlBA,OACT,OAAOC,IAAMlD,IAAIoB,EAAU,2BAA6B0C,EAAQ0rF,WAAY,CAACrsF,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAChL,IAAI0zM,GAAe,EACM,GAAtB1zM,EAAOrB,KAAKQ,QAAgBa,EAAOrB,KAAK,GAAGqG,IAAME,EAAQ+oG,SAC1DylG,GAAe,GAEjBrvM,EAAO,gBAAiBqvM,MACvB/uM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BgpG,UAttBc,WAstBM1oG,GAAS,IAAlBb,EAAkB,EAAlBA,OACL1F,EAAO,CACT,OAAUuG,EAAQ4C,QAGpB,OAAOxD,IAAMqC,KAAKnE,EAAU,SAAW0C,EAAQ+oG,OAAS,SAAUtvG,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC5KqE,EAAO,aAAcrE,EAAOrB,SAC3BgG,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,iDACVrD,EAAO,gBAAiBqD,QAI9B0uM,QApuBc,WAouBIlxM,GAAS,IAAlBb,EAAkB,EAAlBA,OACH1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,SAAU,KAAQ,UACrC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,QAAW,CAAE,MAAS1+G,EAAQ2vH,QAAS,KAAQ,UAC/C,WAAc,CAAE,MAAS3vH,EAAQk+G,WAAY,KAAQ,UACrD,SAAY,CAAE,MAASl+G,EAAQ26B,SAAU,KAAQ,UACjD,OAAU,CAAE,MAAS,EAAG,KAAQ,YAElC,uBAAyB,GAE3B,OAAOv7B,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEtL,IAAIq2M,EAAUpjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUukM,cAAc90M,QACpE+0M,EAAYtjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUykM,WAAWh1M,QACnEi1M,EAAaxjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU2/L,WAAWlwM,QACpEonH,EAAY31G,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU62G,UAAUpnH,QAEtE6C,EAAO,gBAAiBgyM,GACxBhyM,EAAO,aAAcrE,EAAOrB,KAAKoT,UAAU8xG,UAAUriH,OACrD6C,EAAO,aAAcukH,EAAU,GAAG8tF,WAClCryM,EAAO,cAAekyM,GACtBlyM,EAAO,cAAeoyM,MACrB9xM,OAAM,SAAAC,GACP,GAAGA,EAAM4uC,QAAQ0I,SAAS,8DAA+D,CACvF,IAAIx0C,EAAM,8DACVrD,EAAO,gBAAiBqD,GAE1B,MAAM,IAAI7C,MAAJ,cAAiBD,QAG3B+xM,gBAtwBc,WAswBYzxM,GAAS,IAAlBb,EAAkB,EAAlBA,OACX1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,SAAU,KAAQ,UACrC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,QAAW,CAAE,MAAS1+G,EAAQ2vH,QAAS,KAAQ,UAC/C,WAAc,CAAE,MAAS3vH,EAAQk+G,WAAY,KAAQ,UACrD,SAAY,CAAE,MAASl+G,EAAQ26B,SAAU,KAAQ,UACjD,OAAU,CAAE,MAAS,EAAG,KAAQ,YAElC,uBAAyB,GAE3B,OAAOv7B,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAE7K,IAAIq2M,EAAUpjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUukM,cAAc90M,QACpE+0M,EAAYtjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUykM,WAAWh1M,QACnEi1M,EAAaxjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU2/L,WAAWlwM,QACpEonH,EAAY31G,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU62G,UAAUpnH,QAEtE6C,EAAO,gBAAiBgyM,GACxBhyM,EAAO,aAAcrE,EAAOrB,KAAKoT,UAAU8xG,UAAUriH,OACrD6C,EAAO,aAAcukH,EAAU,GAAG8tF,WAClCryM,EAAO,cAAekyM,GACtBlyM,EAAO,cAAeoyM,MACrB9xM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BgyM,WApyBc,WAoyBO/hF,GAAS,IAAlBxwH,EAAkB,EAAlBA,OACN1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,UAAW,KAAQ,UACtC,QAAW,CAAE,MAASk2H,EAAS,KAAQ,UACvC,eAAkB,CAAE,MAAS,EAAG,KAAQ,YAE1C,uBAAyB,GAE3B,OAAOvwH,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEtL,IAAIq2M,EAAUpjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUukM,cAAc90M,QACpE+0M,EAAYtjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUykM,WAAWh1M,QACnEi1M,EAAaxjM,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU2/L,WAAWlwM,QAExE6C,EAAO,iBAAkBgyM,GACzBhyM,EAAO,gBAAiBrE,EAAOrB,KAAKoT,UAAU8xG,UAAUriH,OACxD6C,EAAO,qBAAsBrE,EAAOrB,KAAKoT,UAAU62G,UAAUpnH,OAC7D6C,EAAO,iBAAkBkyM,GACzBlyM,EAAO,kBAAmBoyM,MACzB9xM,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,4BACVrD,EAAO,gBAAiBqD,QAI9BmvM,YAh0Bc,YAg0BQ,IAATxyM,EAAS,EAATA,OACP1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,MAAO,KAAQ,UAClC,eAAkB,CAAE,MAAS,EAAG,KAAQ,WACxC,OAAU,CAAE,MAAS,EAAG,KAAQ,YAElC,uBAAyB,GAE3B,OAAO2F,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEtL,IAAIqgH,EAAWptG,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUsuG,SAAS7+G,OAEzD6C,EAAO,YAAag8G,MACnB17G,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BkyM,gBAn1Bc,WAm1BY5xM,GAAS,IAAlBb,EAAkB,EAAlBA,OACX1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,eAAgB,KAAQ,UAC3C,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAAS,EAAG,KAAQ,WACxC,OAAU,CAAE,MAAS,EAAG,KAAQ,YAElC,uBAAyB,GAE3B,OAAOh8E,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEtL,IAAI20H,EAAe1hH,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU4iH,aAAanzH,OAEjE6C,EAAO,gBAAiBswH,MACvBhwH,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BmyM,eAv2Bc,YAu2BW,IAAT1yM,EAAS,EAATA,OACV1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,WAAY,KAAQ,UACzC,KAAQ,CAAE,MAAS,WAAY,KAAQ,UACvC,eAAkB,CAAE,MAAS,EAAG,KAAQ,WACxC,OAAU,CAAE,MAAS,EAAG,KAAQ,YAElC,uBAAyB,GAE3B,OAAO2F,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEtL,IAAIgmH,EAAc/yG,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUilM,SAASx1M,OAE5D6C,EAAO,eAAgB2hH,MACtBrhH,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BqyM,eA13Bc,WA03BW32H,GAAY,IAArBj8E,EAAqB,EAArBA,OACV1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,UAAW,KAAQ,UACxC,WAAc,CAAE,MAAS2hF,EAAY,KAAQ,WAE/C,uBAAyB,GAE3B,OAAOh8E,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtL,IAAI2xM,EAAc,GAEf1+L,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU4/L,YAAYnwM,SAC9CmwM,EAAc1+L,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAU4/L,YAAYnwM,SAGxE6C,EAAO,eAAgBstM,MACtBhtM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BsyM,WA94Bc,WA84BOhyM,GAAS,IAAlBb,EAAkB,EAAlBA,OACN1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,QAAW,CAAE,MAAS1+G,EAAQ2vH,QAAS,KAAQ,UAC/C,OAAU,CAAE,MAAS3vH,EAAQiyM,OAAQ,KAAQ,QAC7C,UAAa,CAAE,MAASjyM,EAAQ2+G,UAAW,KAAQ,UACnD,WAAc,CAAE,MAAS3+G,EAAQsxM,WAAY,KAAQ,QACrD,UAAa,CAAE,MAAStxM,EAAQ0jH,UAAW,KAAQ,QACnD,WAAc,CAAE,MAAS1jH,EAAQk+G,WAAY,KAAQ,UACrD,OAAU,CAAE,MAASl+G,EAAQ27G,OAAQ,KAAQ,WAC7C,QAAW,CAAE,MAAS37G,EAAQkyM,QAAS,KAAQ,WAC/C,WAAc,CAAE,MAASlyM,EAAQmyM,WAAY,KAAQ,WACrD,SAAY,CAAE,MAASnyM,EAAQi/G,SAAU,KAAQ,WACjD,SAAY,CAAE,MAASj/G,EAAQ26B,SAAU,KAAQ,UACjD,WAAc,CAAE,MAAS36B,EAAQwsM,WAAY,KAAQ,QACrD,YAAe,CAAE,MAASxsM,EAAQysM,YAAa,KAAQ,SAEzD,uBAAyB,GAE3B,OAAOrtM,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAC3I,qBAAjCA,EAAOrB,KAAKoT,UAAU+uB,QAC9Bz8B,EAAO,iBAAkBrE,EAAOrB,KAAKoT,UAAU+uB,OAAOt/B,OAExD6C,EAAO,gBAAiBrE,EAAOrB,SAC9BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B0yM,kBA76Bc,WA66BcpyM,GAAS,IAAlBb,EAAkB,EAAlBA,OACb1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,WAAc,CAAE,MAAS,WAAY,KAAQ,UAC7C,OAAU,CAAE,MAAS,EAAG,KAAQ,WAChC,QAAW,CAAE,MAAS,EAAG,KAAQ,WACjC,WAAc,CAAE,MAAS,EAAG,KAAQ,WACpC,SAAY,CAAE,MAAS,EAAG,KAAQ,YAEpC,uBAAyB,GAE3B,OAAOt/G,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtLqE,EAAO,eAAgBrE,EAAOrB,SAC7BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B2yM,oBAj8Bc,WAi8BgBryM,GAAS,IAAlBb,EAAkB,EAAlBA,OACf1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,WAAc,CAAE,MAAS,aAAc,KAAQ,UAC/C,OAAU,CAAE,MAAS,EAAG,KAAQ,WAChC,QAAW,CAAE,MAAS,EAAG,KAAQ,WACjC,WAAc,CAAE,MAAS,EAAG,KAAQ,WACpC,SAAY,CAAE,MAAS,EAAG,KAAQ,YAEpC,uBAAyB,GAE3B,OAAOt/G,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtLqE,EAAO,iBAAkBrE,EAAOrB,SAC/BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B+7G,SAr9Bc,WAq9BKz7G,GAAS,IAAlBb,EAAkB,EAAlBA,OACJ1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,WAAc,CAAE,MAAS,OAAQ,KAAQ,UACzC,OAAU,CAAE,MAASuG,EAAQ27G,OAAQ,KAAQ,WAC7C,WAAc,CAAE,MAAS37G,EAAQsyM,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAAS,EAAG,KAAQ,WACxC,QAAW,CAAE,MAAS,EAAG,KAAQ,WACjC,WAAc,CAAE,MAAS,EAAG,KAAQ,WACpC,SAAY,CAAE,MAAS,EAAG,KAAQ,YAEpC,uBAAyB,GAE3B,OAAOlzM,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACtLL,EAAO,cAAea,EAAQ27G,WAC7Bl8G,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3Bg8G,WAz+Bc,WAy+BO17G,GAAS,IAAlBb,EAAkB,EAAlBA,OACN1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,OAAU,CAAE,MAASuG,EAAQ27G,OAAQ,KAAQ,YAE/C,uBAAyB,GAE3B,OAAOv8G,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WACtLL,EAAO,eAAgBa,EAAQ27G,WAC9Bl8G,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B6yM,YAv/Bc,WAu/BQ7mH,GAAY,IAArBvsF,EAAqB,EAArBA,OACX,OAAOC,IAAMlD,IAAIoB,EAAU,qBAAuBouF,EAAa,aAAc,CAACrsF,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACjLqE,EAAO,YAAarE,EAAOrB,SAC1BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B8yM,oBA9/Bc,WA8/BgB9mH,GAAY,IAArBvsF,EAAqB,EAArBA,OACnB,OAAOC,IAAMlD,IAAIoB,EAAU,qBAAuBouF,EAAa,aAAc,CAACrsF,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GACxKqE,EAAO,YAAarE,EAAOrB,SAC1BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B+yM,aArgCc,WAqgCSh5M,GAAM,IAAf0F,EAAe,EAAfA,OACZ,OAAOC,IAAMqC,KAAKnE,EAAU,SAAW7D,EAAKsvG,OAAS,YAAatvG,EAAKuG,QAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACpLqE,EAAO,iBAAkBrE,EAAOrB,SAC/BgG,OAAM,SAAAC,GACP,IAAI8C,EAAM9C,EAAMyyE,SAAS14E,KAAKsM,KAAO,KAAOrG,EAAMyyE,SAAS14E,KAAK60C,QAEhE,MADAnvC,EAAO,gBAAiBqD,GAClB,IAAI7C,MAAJ,cAAiBD,QAG3BgzM,qBA9gCc,WA8gCiBj5M,GAAM,IAAf0F,EAAe,EAAfA,OACpB,OAAOC,IAAMqC,KAAKnE,EAAU,SAAW7D,EAAKsvG,OAAS,YAAatvG,EAAKuG,QAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAC3KqE,EAAO,iBAAkBrE,EAAOrB,SAC/BgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BizM,SArhCc,WAqhCKl5M,GAAM,IAAf0F,EAAe,EAAfA,OACR,IAAIwsM,EAEF,OADAA,GAAa,EACNvsM,IAAMqC,KAAKnE,EAAU,qBAAuB7D,EAAKiyF,WAAa,aAAcjyF,EAAKuG,QAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACrMqE,EAAO,aAAcrE,EAAOrB,MAC5BkyM,GAAa,KACZlsM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAI7BkzM,iBAhiCc,WAgiCan5M,GAAM,IAAf0F,EAAe,EAAfA,OAChB,IAAIwsM,EAEF,OADAA,GAAa,EACNvsM,IAAMqC,KAAKnE,EAAU,qBAAuB7D,EAAKiyF,WAAa,aAAcjyF,EAAKuG,QAAS,CAACX,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAW1B,KAAY6B,MAAM,SAAA1E,GAC5LqE,EAAO,aAAcrE,EAAOrB,MAC5BkyM,GAAa,KACZlsM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAI7BmzM,mBA3iCc,WA2iCe9pG,GAAQ,IAAjB5pG,EAAiB,EAAjBA,OAClB,OAAOC,IAAMlD,IAAIoB,EAAU,SAAWyrG,EAAS,kBAAmB,CAAC1pG,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAGtK,IAFA,IAAIi1H,EAAkB,GAClBD,EAAiB,GACb/1H,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IACX,aAAvBe,EAAOrB,KAAKM,GAAGgM,MAAiD,MAA1BjL,EAAOrB,KAAKM,GAAGuG,SACtDyvH,EAAgBx1H,KAAKO,EAAOrB,KAAKM,GAAGuG,SAEZ,aAAvBxF,EAAOrB,KAAKM,GAAGgM,MAAgD,MAAzBjL,EAAOrB,KAAKM,GAAG6I,QACtDktH,EAAev1H,KAAKO,EAAOrB,KAAKM,GAAG6I,QAGvCzD,EAAO,mBAAoB4wH,GAC3B5wH,EAAO,kBAAmB2wH,MACzBrwH,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BssF,aA7jCc,WA6jCShsF,GAAS,IAAlBb,EAAkB,EAAlBA,OACR1F,EAAO,CACT,OAAUuG,EAAQ4C,QAEpB,OAAOxD,IAAMqC,KAAKnE,EAAU,SAAW0C,EAAQ+oG,OAAS,YAAatvG,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAmB,GAC9J,KAAdA,EAAIS,QACLjC,EAAO,oBAAqB,cAE7BM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3BozM,kBAzkCc,WAykCc9yM,GAO1B,IAPmC,IAAlBb,EAAkB,EAAlBA,OACb1F,EAAO,CACT,OAAUuG,EAAQ4C,QAGd1C,EAAa,GACb2tB,EAAQ7tB,EAAQ6tB,MACd9zB,EAAI,EAAGA,EAAI8zB,EAAM5zB,OAAQF,IAC/BmG,EAAW3F,KACT6E,IAAMqC,KAAKnE,EAAU,SAAWuwB,EAAM9zB,GAAG+F,GAAK,YAAarG,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAe,GAAI,OAAI,IAAIC,SAAQ,SAAAC,GAAO,OAChMA,EAAQF,EAAKa,eAInBZ,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAC3B,IAAI6a,GAAU,EACd7a,EAAIC,SAAQ,SAASC,GACR,KAARA,IACD2a,GAAU,MAIdrc,EAAO,gBAAiBqc,OAG5Bu3L,iBAlmCc,WAkmCwB/yM,GAAS,IAA7BqV,EAA6B,EAA7BA,UAAWlW,EAAkB,EAAlBA,OACvBwsB,EAAMplB,KAEV,OAAOnH,IAAMlD,IAAIoB,EAAU,mCAAqC0C,EAAQF,GAAK,kCAAmC,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GAEpN,IAAMoF,EAAa,GAChBpF,EAAOrB,KAAKQ,OAAS,GACtBiG,EAAW3F,KACT6E,IAAMlD,IAAIoB,EAAU,qCAAuC0C,EAAQF,GAAK,6BAA8B,CAACT,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAe,GAAI,OAAI,IAAIC,SAAQ,SAAAC,GAAO,OACrOA,EAAQF,EAAK9G,aAInB+G,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAE3BA,EAAIC,SAAQ,SAASC,EAAMC,GACzB6qB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKqH,GAAO0mL,mBAAmBhoL,MAAM,WACpEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,SAAUuU,EAAU9X,QAAQwnL,WACxD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKqH,GAAQ,YAAauU,EAAU9X,QAAQynL,iBAG7D,IAAI,IAAIjrL,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,CAG1C,IAFA,IAAIi5M,EAAU,GAEN/3M,EAAI,EAAGA,EAAI4F,EAAK5G,OAAQgB,IAE9B,GAA2B,kBAAxB4F,EAAK5F,GAAGi+B,cAA4D,cAAxBr4B,EAAK5F,GAAGi+B,cAAwD,kBAAxBr4B,EAAK5F,GAAGi+B,aAAkC,CAC/H,IAAI+5K,EAAY,IAAIvnL,KAAK5wB,EAAOrB,KAAKM,GAAG8zG,WACpCqlG,EAAU,IAAIxnL,KAAK5wB,EAAOrB,KAAKM,GAAG+zG,SAClCqlG,EAAU,IAAIznL,KAAK7qB,EAAK5F,GAAGm4M,MAG/B,GAAGD,GAAWF,GAAaE,GAAWD,EAAS,CAE7C,IAAIG,EAAQ,IAAI3nL,KAAK7qB,EAAK5F,GAAGm4M,MAC7BvyM,EAAK5F,GAAGm4M,KAAO,IAAI7/H,KAAKC,eAAe,QACvC,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOs/H,GAEVL,EAAQz4M,KAAKsG,EAAK5F,KAKxBgiC,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAWi5M,GAGnC,IAAI3rB,EAAQ,IAAI37J,KAAK5wB,EAAOrB,KAAKM,GAAG8zG,WACpC5wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAa,IAAIw5E,KAAKC,eAAe,QAC3D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOszG,IACZ,IAAIC,EAAQ,IAAI57J,KAAK5wB,EAAOrB,KAAKM,GAAG+zG,SACpC7wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOuzG,QAKhBnoL,EAAO,iBAAkBrE,EAAOrB,YAGjCgG,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B4zM,aAzrCc,WAyrCoBtzM,GAAS,WAA7BqV,EAA6B,EAA7BA,UAAWlW,EAAkB,EAAlBA,OACvBA,EAAO,aAAc,IACrB,IAAIwsB,EAAMplB,KACNgtM,EAAK,GAQT,OALEA,EADmB,IAAlBvzM,EAAQsV,OACJ,sBAEA,iEAAmEtV,EAAQsV,OAG3ElW,IAAMlD,IAAIoB,EAAUi2M,EAAK,eAAiBvzM,EAAQwzM,QAAS,CAACn0M,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA3J,yDAAiK,WAAM1E,GAAN,iHAQtK,GAPI+zM,EAAc,EACdC,EAAc,GACdC,EAAU,EACVC,EAAa,GACbC,EAAa,GACbC,EAAc,GAEfp0M,EAAOrB,KAAKQ,OAAS,EACtB,IAAQF,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,KAEyB,GAA3Dk1M,EAAWtpL,QAAQ7qB,EAAOrB,KAAKM,GAAGo1M,uBACnCF,GAAcn0M,EAAOrB,KAAKM,GAAGo1M,oBAAsB,KAGrDD,GAAep0M,EAAOrB,KAAKM,GAAGytL,kBAAoB,IAE9C4nB,EAAM,IAAI1jL,KACgB,MAA3B5wB,EAAOrB,KAAKM,GAAGi0G,UAA+C,IAA3BlzG,EAAOrB,KAAKM,GAAGi0G,WAC/CA,EAAW,IAAItiF,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpCohG,EAAMphG,IACP6gG,IACAC,EAAYv0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI9B6nB,EAAQ,IAAI3jL,KAAK5wB,EAAOrB,KAAKM,GAAGi0G,UACpC/wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,WAAY,IAAIw5E,KAAKC,eAAe,QAC1D,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOs7H,KAEW,MAAtBv0M,EAAOrB,KAAKM,GAAGg0G,KAAqC,IAAtBjzG,EAAOrB,KAAKM,GAAGg0G,MAC1CA,EAAM,IAAIriF,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KAC/BqhG,EAAMrhG,IACPghG,IACAC,EAAWz0M,KAAKO,EAAOrB,KAAKM,GAAGytL,oBAI7B8nB,EAAQ,IAAI5jL,KAAK5wB,EAAOrB,KAAKM,GAAGg0G,KACpC9wE,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,MAAO,IAAIw5E,KAAKC,eAAe,QACrD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOu7H,KAIV/sB,EAAO,IAAI72J,KAAK5wB,EAAOrB,KAAKM,GAAG6gD,SACnC3d,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,UAAW,IAAIw5E,KAAKC,eAAe,QACzD,CACEC,IAAK,UACLC,MAAO,UACPC,KAAM,UACNC,KAAM,UACNC,OAAQ,UACRrgC,OAAQ,UACRsgC,QAAQ,IACPC,OAAOwuG,IAtEsJ,gBA2E3I,EAAKjgL,SAAS,kBAAmBxH,GA3E0G,cA2ElKy0M,EA3EkK,OA4EtKL,GAAeK,EAEfN,EAAWz/L,QAAQ,QAAS,IAC5B0/L,EAAY1/L,QAAQ,QAAS,IA/EyI,UAiFhKpQ,IAAMlD,IAAIoB,EAAU,6CAA+C2xM,EAAY,CAAC5vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAgwM,GACzL,IAAIC,EAAcD,EAAQ/1M,KAE1BqB,EAAOrB,KAAKmH,SAAQ,SAASC,GAC3B4uM,EAAY7uM,SAAQ,SAAS8uM,GACxBA,EAAQ5vM,IAAMe,EAAKsuM,qBACpBlyK,aAAIt0B,IAAI9H,EAAM,cAAe6uM,EAAQ7zM,eAI1C4D,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,OA5F6I,yBA+FhKN,IAAMlD,IAAIoB,EAAU,yCAA2C4xM,EAAa,CAAC7vM,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,KAA5K,yDAAkL,WAAMmwM,GAAN,8FAClLC,EAAeD,EAASl2M,KAD0J,SAIhL,EAAK6I,SAAS,mBAAoB4sM,GAAa1vM,MAAM,WACzD,IAAIqpL,EAAa96K,KAAKC,MAAMqH,EAAU9X,QAAQ0nL,eAE9C2qB,EAAahvM,SAAQ,SAASC,EAAMC,GAElC,IAFyC,eAEjC/G,GACN,GAAGe,EAAOrB,KAAKM,GAAGytL,mBAAqB3mL,EAAKf,GAE1C,GAAuB,MAApBe,EAAK4xB,YAAqB,CAC3B,IAAIipG,GAAe,EACf3wC,EAAY,GAEhBp/D,EAAIrpB,SAAS,mBAAoBxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,KAAnE,yDAAyE,WAAMswM,GAAN,0FACpEh1M,EAAOrB,KAAKM,GAAGytL,mBAAqBsoB,EAAUhwM,KAC/C47H,GAAe,IAGdA,EALoE,gCAM/D/vG,EAAIrpB,SAAS,mBAAoBkrC,SAASsiK,EAAUr9K,cAAcjzB,MAAM,WAC5EurF,EAAY11E,EAAU9X,QAAQynL,gBAPqC,6BAUrEj6F,EAAY11E,EAAU9X,QAAQunL,aAVuC,OAanE9kL,EAAU,CACZ,WAAclF,EAAOrB,KAAKM,GAAGytL,kBAC7B,UAAa1sL,EAAOrB,KAAKM,GAAGo1M,oBAC5B,UAAapkH,GAEfp/D,EAAIrpB,SAAS,YAAatC,GAASR,MAAM,WACvCmsB,EAAIrpB,SAAS,YAAaxH,EAAOrB,KAAKM,GAAGytL,mBAAmBhoL,MAAM,WAChEy9B,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAUsb,EAAU9X,QAAQwnL,WACpD9nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAasb,EAAU9X,QAAQynL,oBArBY,2CAAzE,4DA2BA/nJ,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,SAAU8G,EAAK4xB,aACvCo2J,EAAWjoL,SAAQ,SAASmvM,GAC1B,GAAGA,EAAU7tM,KAAOsrC,SAAS3sC,EAAK4xB,aAEhC,OADAwK,aAAIt0B,IAAI7N,EAAOrB,KAAKM,GAAI,YAAag2M,EAAUC,aACxC,MAtCTj2M,EAAI,EAAGA,EAAIe,EAAOrB,KAAKQ,OAAQF,IAAK,EAApCA,SAT0K,OAwDtLoF,EAAO,mBAAoBrE,EAAOrB,KAAKQ,QACvCkF,EAAO,aAAcrE,EAAOrB,MAC5B0F,EAAO,uBAAwB0vM,GAC/B1vM,EAAO,2BAA4B2vM,GACnC3vM,EAAO,qBAAsB4vM,GAC7B5vM,EAAO,yBAA0B6vM,GA7DqJ,2CAAlL,uDA/FgK,4CAAjK,uDA+JJvvM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3B0+G,WAv2Cc,WAu2COp+G,GAAS,IAAlBb,EAAkB,EAAlBA,OACN1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,OAAU,CAAE,MAASuG,EAAQ27G,OAAQ,KAAQ,YAE/C,uBAAyB,GAG3B,OAAOv8G,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtL,IAAI0gF,EAAa,GAEbpgE,EAAWpb,EAAQ2+G,UAAY,OAC/BxjG,EAAWrgB,EAAOrB,KAAKoT,UAAUkhM,aAAazxM,MAC9C+e,EAAW,aAEXi6D,EAAO,IAAIC,KAAK,CAACp6D,GAAW,CAACpV,KAAMsV,IACnCq5D,EAAMv3E,OAAOgF,IAAIqzE,gBAAgBF,GAErCkG,EAAWjhF,KAAK,CAAE6gB,SAAUA,EAAUD,SAAUu5D,IAEhDv1E,EAAO,qBAAsBq8E,MAC5B/7E,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,oCAAsC9C,EAChDP,EAAO,gBAAiBqD,QAI9By4G,WAp4Cc,WAo4COj7G,GAAS,IAAlBb,EAAkB,EAAlBA,OACN1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,SAAU,KAAQ,UACvC,WAAc,CAAE,MAASuG,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,WAC7D,QAAW,CAAE,MAAS1+G,EAAQ2vH,QAAS,KAAQ,UAC/C,OAAU,CAAE,MAAS3vH,EAAQiyM,OAAQ,KAAQ,QAC7C,UAAa,CAAE,MAASjyM,EAAQ2+G,UAAW,KAAQ,UACnD,WAAc,CAAE,MAAS3+G,EAAQsxM,WAAY,KAAQ,QACrD,UAAa,CAAE,MAAStxM,EAAQ0jH,UAAW,KAAQ,QACnD,WAAc,CAAE,MAAS1jH,EAAQk+G,WAAY,KAAQ,UACrD,QAAW,CAAE,MAASl+G,EAAQkyM,QAAS,KAAQ,WAC/C,WAAc,CAAE,MAASlyM,EAAQmyM,WAAY,KAAQ,WACrD,SAAY,CAAE,MAASnyM,EAAQi/G,SAAU,KAAQ,WACjD,WAAc,CAAE,MAASj/G,EAAQwsM,WAAY,KAAQ,UAIzD,OAAOptM,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,WAEtL06C,YAAW,WACT/6C,EAAO,qBAAqB,KAC3B,QACFM,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,oCAAsC9C,EAChDP,EAAO,gBAAiBqD,QAI9BixM,UAn6Cc,WAm6CMzzM,GAAS,IAAlBb,EAAkB,EAAlBA,OACL1F,EAAO,GA4CX,MA3CwB,UAArBuG,EAAQs7B,YACT7hC,EAAO,CACL,UAAa,CACX,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,OAAU,CAAE,MAASuG,EAAQ27G,OAAQ,KAAQ,WAC7C,UAAa,CAAE,MAAS37G,EAAQs7B,UAAW,KAAQ,WAErD,uBAAyB,IAGL,OAArBt7B,EAAQs7B,YACT7hC,EAAO,CACL,UAAa,CACX,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,OAAU,CAAE,MAAS,EAAG,KAAQ,WAChC,UAAa,CAAE,MAASuG,EAAQs7B,UAAW,KAAQ,UACnD,WAAc,CAAE,MAASt7B,EAAQo7E,WAAY,KAAQ,UACrD,eAAkB,CAAE,MAASp7E,EAAQ0+G,eAAgB,KAAQ,YAE/D,uBAAyB,IAGL,UAArB1+G,EAAQs7B,YACT7hC,EAAO,CACL,UAAa,CACX,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,OAAU,CAAE,MAASuG,EAAQ27G,OAAQ,KAAQ,WAC7C,UAAa,CAAE,MAAS37G,EAAQs7B,UAAW,KAAQ,WAErD,uBAAyB,IAGL,gBAArBt7B,EAAQs7B,YACT7hC,EAAO,CACL,UAAa,CACX,OAAU,CAAE,MAAS,YAAa,KAAQ,UAC1C,OAAU,CAAE,MAAS,EAAG,KAAQ,WAChC,aAAgB,CAAE,MAAS6F,OAAMvB,MAAM2F,YAAa,KAAQ,UAC5D,UAAa,CAAE,MAAS1D,EAAQs7B,UAAW,KAAQ,WAErD,uBAAyB,IAGtBl8B,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtL,GAAwB,UAArBkF,EAAQs7B,UAAuB,CAChC,IAAIrmB,EAAU,CACZ,aAAgBna,EAAOrB,KAAKoT,UAAUohM,aAAa3xM,MACnD,WAAcxB,EAAOrB,KAAKoT,UAAUqhM,WAAW5xM,MAC/C,eAAkBxB,EAAOrB,KAAKoT,UAAUshM,eAAe7xM,OAEzD6C,EAAO,aAAc8V,GAEvB,GAAwB,OAArBjV,EAAQs7B,UAAoB,CAC7B,IAAI8yK,EAAcrgM,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUuhM,YAAY9xM,OAC/D6C,EAAO,iBAAkBivM,OAE1B3uM,OAAM,SAAAC,GACP,MAAM,IAAIC,MAAJ,cAAiBD,QAG3Bg0M,kBAj+Cc,WAi+Cc1zM,GAAS,IAAlBb,EAAkB,EAAlBA,OACb1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,UAAW,KAAQ,UACxC,gBAAmB,CAAE,MAASuG,EAAQyX,SAAU,KAAQ,QACxD,UAAa,CAAE,MAAS,MAAO,KAAQ,WAEzC,uBAAyB,GAE3B,OAAOrY,IAAMqC,KAAKzB,EAAQ0X,OAAS,2DAA4Dje,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzM,IAAIkxB,EAAWje,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUmf,SAAS1vB,OACzD6C,EAAO,oBAAqB6sB,MAC3BvsB,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,cAAgB9C,EAC1BP,EAAO,gBAAiBqD,QAI9Bw4G,aAp/Cc,WAo/CSh7G,GAAS,IAAlBb,EAAkB,EAAlBA,OACR1F,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,UAAW,KAAQ,UACxC,gBAAmB,CAAE,MAASuG,EAAQyX,SAAU,KAAQ,QACxD,UAAa,CAAE,MAAS,WAAY,KAAQ,WAE9C,uBAAyB,GAE3B,OAAOrY,IAAMqC,KAAKnE,EAAU,+CAAgD7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACtL,IAAIkxB,EAAWlxB,EAAOrB,KAAKoT,UAAUmf,SAAS1vB,MAE1C7C,EAAO,CACT,UAAa,CACX,OAAU,CAAE,MAAS,UAAW,KAAQ,UACxC,gBAAmB,CAAE,MAASuyB,EAAU,KAAQ,QAChD,UAAa,CAAE,MAAS,SAAU,KAAQ,WAE5C,uBAAyB,GAE3B,OAAO5sB,IAAMqC,KAAKzB,EAAQ0X,OAAS,2DAA4Dje,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACzM,IAAIma,EAAU,GAEM,KAAjBna,EAAOsG,SACR6T,EAAUlH,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUoI,QAAQ3Y,QAGrD6C,EAAO,mBAAoB8V,MAC1BxV,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,cAAgB9C,EAC1BP,EAAO,gBAAiBqD,UAG3B/C,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,cAAgB9C,EAC1BP,EAAO,gBAAiBqD,QAIxBmxM,QA7hDQ,WA6hDiB3zM,GAAS,6JAKtC,IALajC,EAAyB,EAAzBA,MAAOoB,EAAkB,EAAlBA,OACpBpB,EAAMswM,cAAgB,GAClBuF,EAAe,GACb1zM,EAAa,GAEXnG,EAAI,EAAGA,EAAIiG,EAAQ/F,OAAQF,IAE7BN,EAAO,CACT,UAAa,CACX,YAAe,CAAE,MAAS,MAAO,KAAQ,UACzC,GAAM,CAAE,MAASuG,EAAQjG,GAAG+F,GAAI,KAAQ,WACxC,SAAY,CAAE,MAASE,EAAQjG,GAAGgM,KAAM,KAAQ,UAChD,UAAa,CAAE,MAAS/F,EAAQjG,GAAG85M,UAAW,KAAQ,UACtD,WAAc,CAAE,MAAS7zM,EAAQjG,GAAG09G,WAAY,KAAQ,UACxD,SAAY,CAAE,MAAS5iE,UAAU70C,EAAQjG,GAAG+5M,UAAW,KAAQ,UAC/D,SAAY,CAAE,MAAS9zM,EAAQjG,GAAGg6M,SAAU,KAAQ,UACpD,gBAAmB,CAAE,MAAS/zM,EAAQjG,GAAG02H,gBAAiB,KAAQ,WAClE,oBAAuB,CAAE,MAASzwH,EAAQjG,GAAG22H,oBAAqB,KAAQ,WAC1E,iBAAoB,CAAE,MAAS1wH,EAAQjG,GAAGy2H,iBAAkB,KAAQ,YAEtE,uBAAyB,GAG3BtwH,EAAW3F,KACT6E,IAAMqC,KAAKnE,EAAU,kEAAmE7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAAe,GAAI,OAAI,IAAIC,SAAQ,SAAAC,GACxK,qBAApCF,EAAK9G,KAAKoT,UAAUmnM,YAC5BvzM,EAAQF,EAAK9G,KAAKoT,UAAUmnM,YAAY13M,OAExCmE,EAAQsN,KAAKkL,UAAU,wCAM/BzY,QAAQE,IAAIR,GAAYV,MAAK,SAAAmB,GAC3BA,EAAIC,SAAQ,SAASC,EAAMC,GACzB,IACE8yM,EAAa9yM,GAASiN,KAAKC,MAAMD,KAAKC,MAAMnN,IAC5C,MAAOnB,GACPk0M,EAAa9yM,GAASiN,KAAKC,MAAMnN,OAGrC1B,EAAO,WAAYy0M,MA1CiB,8CA6ClCK,YA1kDQ,WA0kDcj0M,GAAS,4JAAlBb,EAAkB,EAAlBA,OACb1F,EAAO,CACT,UAAa,CACX,YAAe,CAAE,MAAS,UAAW,KAAQ,UAC7C,aAAgB,CAAE,MAASuG,EAAQk0M,aAAc,KAAQ,UACzD,UAAa,CAAE,MAASl0M,EAAQm0M,UAAW,KAAQ,UACnD,aAAgB,CAAE,MAASn0M,EAAQo0M,aAAc,KAAQ,WAE3D,uBAAyB,GARQ,SAU7Bh1M,IAAMqC,KAAKnE,EAAU,kEAAmE7D,EAAM,CAAC4F,QAAS,CAAC,eAAgB,mBAAoB,cAAiB,SAAWC,OAAMvB,MAAMwB,SAASC,MAAM,SAAA1E,GACxMqE,EAAO,eAAgB4O,KAAKC,MAAMD,KAAKC,MAAMlT,EAAOrB,KAAKoT,UAAUwnM,gBAAgB/3M,YAClFmD,OAAM,SAAAC,GACP,GAAY,2BAATA,EAAoC,CACrC,IAAI8C,EAAM,cAAgB9C,EAC1BP,EAAO,gBAAiBqD,OAfO,+CAqBjCmB,EAAY,CAChB2wM,SADgB,SACPv2M,EAAOiC,GACdjC,EAAM6tF,QAAU5rF,GAElBu0M,eAJgB,SAIDx2M,EAAOiC,GACpBjC,EAAMq+C,aAAep8C,GAEvBw0M,mBAPgB,SAOGz2M,EAAOiC,GACxBjC,EAAMosF,gBAAkBnqF,GAE1By0M,uBAVgB,SAUO12M,EAAOiC,GAC5BjC,EAAM6tM,mBAAqB5rM,GAE7B00M,iBAbgB,SAaC32M,EAAOiC,GACtBjC,EAAMqsF,eAAiBpqF,GAEzB20M,qBAhBgB,SAgBK52M,EAAOiC,GAC1BjC,EAAM8tM,kBAAoB7rM,GAE5B40M,UAnBgB,SAmBN72M,EAAOiC,GACfjC,EAAM+tM,SAAW9rM,GAEnB60M,gBAtBgB,SAsBA92M,EAAOiC,GACrBjC,EAAMgsF,cAAgB/pF,GAExB80M,oBAzBgB,SAyBI/2M,EAAOiC,GACzBjC,EAAMisF,iBAAmBhqF,GAE3B+0M,wBA5BgB,SA4BQh3M,EAAOiC,GAC7BjC,EAAMguM,oBAAsB/rM,GAE9Bg1M,kBA/BgB,SA+BEj3M,EAAOiC,GACvBjC,EAAMksF,gBAAkBjqF,GAE1Bi1M,sBAlCgB,SAkCMl3M,EAAOiC,GAC3BjC,EAAMiuM,mBAAqBhsM,GAE7Bk1M,iBArCgB,SAqCCn3M,EAAOiC,GACtBjC,EAAMkrG,gBAAkBjpG,GAE1Bm1M,uBAxCgB,SAwCOp3M,EAAOiC,GAC5BjC,EAAMs+C,qBAAuBr8C,GAE/Bo1M,2BA3CgB,SA2CWr3M,EAAOiC,GAChCjC,EAAMkuM,wBAA0BjsM,GAElCq1M,+BA9CgB,SA8Cet3M,EAAOiC,GACpCjC,EAAMmuM,2BAA6BlsM,GAErCs1M,yBAjDgB,SAiDSv3M,EAAOiC,GAC9BjC,EAAMouM,uBAAyBnsM,GAEjCu1M,6BApDgB,SAoDax3M,EAAOiC,GAClCjC,EAAMquM,0BAA4BpsM,GAEpCw1M,WAvDgB,SAuDLz3M,EAAOiC,GAChBjC,EAAMsuM,UAAYrsM,GAEpBy1M,iBA1DgB,SA0DC13M,EAAOiC,GACtBjC,EAAMgrG,OAAS/oG,EAAQ+oG,OACvBhrG,EAAM4xH,QAAU3vH,EAAQ2vH,SAE1B+lF,eA9DgB,SA8DD33M,EAAOiC,GACpBjC,EAAMgrG,OAAS/oG,GAEjB21M,iBAjEgB,SAiEC53M,EAAOiC,GACtBjC,EAAMwc,SAAWva,GAEnB41M,gBApEgB,SAoEA73M,EAAOiC,GACrBjC,EAAM4xH,QAAU3vH,GAElB61M,mBAvEgB,SAuEG93M,EAAOiC,GACxBjC,EAAMq9E,WAAap7E,GAErB81M,uBA1EgB,SA0EO/3M,EAAOiC,GAC5BjC,EAAM2gH,eAAiB1+G,GAEzB+1M,gCA7EgB,SA6EgBh4M,EAAOiC,GACrCjC,EAAMuuM,uBAAyBtsM,GAEjCg2M,oBAhFgB,SAgFIj4M,EAAOiC,GACzBjC,EAAMuc,YAActa,GAEtBi2M,mBAnFgB,SAmFGl4M,EAAOiC,GACxBjC,EAAMmgH,WAAal+G,GAErBk2M,eAtFgB,SAsFDn4M,EAAOiC,GACpBjC,EAAM49G,OAAS37G,GAEjBm2M,cAzFgB,SAyFFp4M,EAAOiC,GACnBjC,EAAM0tG,aAAezrG,GAEvBo2M,WA5FgB,SA4FLr4M,EAAOiC,GAChBjC,EAAM4gH,UAAY3+G,GAEpBq2M,WA/FgB,SA+FLt4M,EAAOiC,GAChBjC,EAAM2lH,UAAY1jH,GAEpBs2M,YAlGgB,SAkGJv4M,EAAOiC,GACjBjC,EAAMwuM,gBAAkBvsM,GAE1Bu2M,YArGgB,SAqGJx4M,EAAOiC,GACjBjC,EAAMyuM,WAAaxsM,GAErBw2M,aAxGgB,SAwGHz4M,EAAOiC,GAClBjC,EAAM0uM,YAAczsM,GAEtBy2M,cA3GgB,SA2GF14M,EAAOiC,GACnBjC,EAAM2uM,aAAe1sM,GAEvB02M,YA9GgB,SA8GJ34M,EAAOiC,GACjBjC,EAAMuvM,WAAattM,GAErB22M,aAjHgB,SAiHH54M,EAAOiC,GAClBjC,EAAMsvM,YAAcrtM,GAEtB42M,UApHgB,SAoHN74M,EAAOiC,GACfjC,EAAM4uM,SAAW3sM,GAEnB62M,eAvHgB,SAuHD94M,EAAOiC,GACpBjC,EAAM6uM,cAAgB5sM,GAExB82M,WA1HgB,SA0HL/4M,EAAOiC,GAChBjC,EAAM8uM,UAAY7sM,GAEpB+2M,iBA7HgB,SA6HCh5M,EAAOiC,GACtBjC,EAAMgyH,gBAAkB/vH,GAE1Bg3M,gBAhIgB,SAgIAj5M,EAAOiC,GACrBjC,EAAM+xH,eAAiB9vH,GAEzBi3M,kBAnIgB,SAmIEl5M,EAAOiC,GACvBjC,EAAM+uM,iBAAmB9sM,GAE3Bk3M,eAtIgB,SAsIDn5M,EAAOiC,GACpBjC,EAAMgvM,cAAgB/sM,GAExBm3M,WAzIgB,SAyILp5M,EAAOiC,GAChBjC,EAAMyqG,UAAYxoG,GAEpBo3M,iBA5IgB,SA4ICr5M,EAAOiC,GACtBjC,EAAMmsF,eAAiBlqF,GAEzBq3M,qBA/IgB,SA+IKt5M,EAAOiC,GAC1BjC,EAAMivM,kBAAoBhtM,GAE5Bs3M,yBAlJgB,SAkJSv5M,EAAOiC,GAC9BjC,EAAMkvM,qBAAuBjtM,GAE/Bu3M,mBArJgB,SAqJGx5M,EAAOiC,GACxBjC,EAAMmvM,iBAAmBltM,GAE3Bw3M,uBAxJgB,SAwJOz5M,EAAOiC,GAC5BjC,EAAMovM,oBAAsBntM,GAE9By3M,eA3JgB,SA2JD15M,EAAOiC,GACpBjC,EAAMqvM,cAAgBptM,GAExB03M,UA9JgB,SA8JN35M,EAAOiC,GACfjC,EAAMo9G,SAAWn7G,GAEnB23M,cAjKgB,SAiKF55M,EAAOiC,GACnBjC,EAAM0xH,aAAezvH,GAEvB43M,aApKgB,SAoKH75M,EAAOiC,GAClBjC,EAAM+iH,YAAc9gH,GAEtB63M,eAvKgB,SAuKD95M,EAAOiC,GACpBjC,EAAMyvM,cAAgBxtM,GAExB83M,cA1KgB,SA0KF/5M,EAAOiC,GACnBjC,EAAM0vM,aAAeztM,GAEvB+3M,eA7KgB,SA6KDh6M,EAAOiC,GACpBjC,EAAM2vM,cAAgB1tM,GAExBg4M,gBAhLgB,SAgLAj6M,EAAOiC,GACrBjC,EAAM4vM,eAAiB3tM,GAEzBi4M,mBAnLgB,SAmLGl6M,EAAOiC,GACxBjC,EAAMwvM,iBAAmBvtM,GAE3Bk4M,aAtLgB,SAsLHn6M,EAAOiC,GAClBjC,EAAM6vM,YAAc5tM,GAEtBm4M,eAzLgB,SAyLDp6M,EAAOiC,GACpBjC,EAAM8vM,cAAgB7tM,GAExBo4M,eA5LgB,SA4LDr6M,EAAOiC,GACpBjC,EAAMsc,OAASra,GAEjBq4M,cA/LgB,SA+LFt6M,EAAOiC,GACnBjC,EAAMorG,aAAenpG,GAEvBs4M,eAlMgB,SAkMDv6M,EAAOiC,GACpBjC,EAAM+vM,aAAe9tM,GAEvBu4M,mBArMgB,SAqMGx6M,EAAOiC,GACxBjC,EAAMgwM,aAAe/tM,GAEvBw4M,kBAxMgB,SAwMEz6M,EAAOiC,GACvBjC,EAAMiwM,gBAAkBhuM,GAE1By4M,aA3MgB,SA2MH16M,EAAOiC,GAClBjC,EAAMo5C,YAAcn3C,GAEtB04M,WA9MgB,SA8ML36M,EAAOiC,GAChBjC,EAAMkwM,aAAejuM,EAAQiuM,aAC7BlwM,EAAMmwM,WAAaluM,EAAQkuM,WAC3BnwM,EAAMowM,eAAiBnuM,EAAQmuM,gBAEjCwK,eAnNgB,SAmND56M,EAAOiC,GACpBjC,EAAMqwM,YAAcpuM,GAEtB44M,SAtNgB,SAsNP76M,EAAOiC,GACdjC,EAAMswM,cAAgBruM,GAExB64M,cAzNgB,SAyNF96M,EAAOiC,GACnBjC,EAAMuwM,YAActuM,GAEtB84M,aA5NgB,SA4NH/6M,EAAOiC,GAClBjC,EAAMwwM,YAAcvuM,GAEtB+4M,cA/NgB,SA+NFh7M,EAAOiC,GACnBjC,EAAMywM,aAAexuM,GAEvBg5M,kBAlOgB,SAkOEj7M,EAAOiC,GACvBjC,EAAM0wM,gBAAkBzuM,GAE1Bi5M,iBArOgB,SAqOCl7M,EAAOiC,GACtBjC,EAAM2wM,eAAiB1uM,IAIZ,QACbjC,QACAiB,UACAC,UACA0E,e,6FCx+DF,IAAIuc,EAAerb,EAAQ,QACvBob,EAAYpb,EAAQ,QAEpBU,EAAYV,EAAQ,QACpBW,EAAKD,EAAUC,GACfC,EAAoBF,EAAUE,kBAE9ByzM,EAA4B,aAGhC19M,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaC,GAErD,IAgEIuiC,EAhEA2xK,EAAoB,SAASC,GAC/B,OAAOA,EAAKp3L,MAAK,SAASpmB,GACxB,OAAQA,EAAEy9M,YAAcH,KAA+BA,MAIvDltJ,EAAW,SAASv8B,GACtB,OAAO,SAAS1qB,GACd,IAAIu0M,EAAgBH,EAClB1pL,GAAkBA,EAAevzB,IAAI,kBAGnCy0B,EAAO2oL,GAAiBA,EAAc3oL,MAAQ,GAElD,MAAO,CAAE2oL,cAAe3oL,KAIxBu7B,EAAW,SAASz8B,GACtB,OAAO,SAAS1qB,EAASoD,GACvB,IAAIwoB,EAAOxoB,EAAOmxM,cAEdA,EAAgBH,EAClB1pL,GAAkBA,EAAevzB,IAAI,kBAIvC,OAAIo9M,EAEE3oL,EACK1Q,EAAU2B,qBAAqB7c,EAASu0M,EAAe,CAAE3oL,KAAMxoB,EAAOmxM,gBAEtEr5L,EAAUkG,uBAAuBphB,EAAS0qB,EAAgB,gBAAiB,KAAM,CAAE6pL,IAI1F3oL,EAGK1Q,EAAU2F,kBAAkB7gB,EAAS0qB,EAAgB,gBAAiB,CAC3EzqB,EAAYrI,OAAO,qBAAsB,CACvCg0B,KAAMxoB,EAAOmxM,uBALnB,IAeAC,EAAmBr5L,EAAaqR,QAAQtsB,EAAW,CACrDnF,GAAI,gBACJ2I,MAAOxD,EAAU,yBACjByD,cAAe,kBAajB,GAVA6wM,EAAiB5wM,IAAMujD,EAASzmD,EAAkBV,IAElDw0M,EAAiBr9M,IAAM8vD,EAASvmD,EAAkBV,IAElDD,EAAMO,QAAQ9K,KAAKg/M,GAMf/zM,EAAGT,EAAS,sBAEdyiC,EAAa/hC,EAAkBV,GAASyiC,WAGpCA,GAAY,CACd,IAAIgyK,EAAmBt5L,EAAaqR,QAAQtsB,EAAW,CACrDnF,GAAI,wBACJ2I,MAAOxD,EAAU,yBACjByD,cAAe,kBAGjB8wM,EAAiB7wM,IAAMujD,EAAS1kB,GAEhCgyK,EAAiBt9M,IAAM8vD,EAASxkB,GAEhC1iC,EAAMO,QAAQ9K,KAAKi/M,M,qBCjGzBh+M,EAAOD,QAAU,CACf0wB,YAAa,CACXpnB,EAAQ,QACRA,EAAQ,QAAiCqnB,SAE3C3E,SAAU,CAAE,mBACZkyL,gBAAiB,CAAE,OAAQ50M,EAAQ,W,gECJrC,IAAIkoB,EAAkBloB,EAAQ,QAE9BrJ,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaonB,EAAkBnnB,GAEvE,IAAImf,EAAWgI,EAAiBlwB,IAAI6I,GAEpC,IAAIqf,EAAJ,CAIA,IAAIglC,EAAuBr8B,EAAgBhoB,EAASC,EAAa,GAAIC,GAErEH,EAAMO,QAAUP,EAAMO,QAAQC,OAAO8jD,EAAqB/jD,Y,sDCZ5D,IAAII,EAAoBZ,EAAQ,QAAwDY,kBACpFD,EAAKX,EAAQ,QAAwDW,GAErE0a,EAAerb,EAAQ,QAEvBgjC,EAAWhjC,EAAQ,QAEnBob,EAAYpb,EAAQ,QAEpBm7L,EAAcn7L,EAAQ,QACtBqC,EAASrC,EAAQ,QAErB,SAAS4jC,EAAgB1jC,GACvB,IAAIe,EAAKL,EAAkBV,GAEvB20M,EAAkB5zM,EAAG5J,IAAI,iBACzBy9M,EAAY7zM,EAAG5J,IAAI,qBAEnB09M,EAAmB,GASvB,MAR+B,qBAApBF,EACTE,EAAmB,OAGI,qBAAdD,IACTC,EAAmB,QAGdA,EAGT,IAAIrqL,EAAgB,CAClB4gG,mBAAetvG,EACf,iCAAkC,SAClC,sCAAkCA,EAClC,uCAAmCA,EACnC,sCAAmCA,EACnC,mDAAgDA,EAChD,yBAAqBA,EACrB,wBAAyB,SACzB,6BAAyBA,EACzB,8BAA0BA,GAG5BrlB,EAAOD,QAAU,SAASuJ,EAAOC,EAASC,EAAaC,GAEhDO,EAAGT,EAAS,4BAIjBD,EAAMO,QAAQ9K,KAAK2lB,EAAakB,UAAUnc,EAAW,CACnDnF,GAAK,eACL2I,MAAOxD,EAAU,qBACjBgc,cAAe,CACb,CAAEplB,KAAM,OAAQS,MAAO,QACvB,CAAET,KAAM,OAAQS,MAAO,SAEzB+kB,gBAAgB,EAChB3Y,cAAe,mBAEfxM,IAAK,SAAS6I,EAAS2b,GACrB,MAAO,CACLk5L,iBAAkBnxK,EAAgB1jC,KAItC4D,IAAK,SAAS5D,EAASoD,EAAQuY,GAC7B,IAAI3a,EAAOoC,EAAOyxM,iBAEdp4L,EAAQta,EAAO,GAAIqoB,GASvB,MAPa,SAATxpB,EACFyb,EAAM2uG,cAAgB,GAEN,SAATpqH,IACPyb,EAAM,qBAAuB,IAGxBvB,EAAUyJ,iBAAiB3kB,EAASyc,OAK/C1c,EAAMO,QAAQ9K,KAAKstC,EAAS9iC,EAASC,EAAa,CAChDyjC,gBAAiBA,GAChBxjC,IAEHH,EAAMO,QAAU26L,EAAYl7L,EAAMO","file":"js/app.dc30b6ce.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\nconst tenant = process.env.VUE_APP_TENANT;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n allGroups: [],\n allRoles: [],\n deletedGroup: '',\n remoteDeletedGroup: '',\n addedGroup: [],\n remoteAddedGroup: [],\n updatedGroup: [],\n addedToRole: [],\n remoteAddedToRole: [],\n newUserRole: '',\n addedToGroup: [],\n removedFromGroup: [],\n usersGroups: [],\n remoteGroupTenants: [],\n remoteUpdatedGroup: '',\n groupExists: false\n};\n\nconst getters = {\n allGroups: (state) => state.allGroups,\n allRoles: (state) => state.allRoles,\n usersGroups: (state) => state.usersGroups,\n remoteAddedToRole: (state) => state.remoteAddedToRole,\n remoteAddedGroup: (state) => state.remoteAddedGroup,\n remoteGroupTenants: (state) => state.remoteGroupTenants,\n remoteDeletedGroup: (state) => state.remoteDeletedGroup,\n remoteUpdatedGroup: (state) => state.remoteUpdatedGroup\n};\n\nconst actions = {\n getAllGroups({commit}) {\n return axios.get(baseURL + '/group?memberOfTenant=' + tenant + '&type=Workflow', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('ALL_GROUPS', result.data); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllRoles({commit}) {\n return axios.get(baseURL + '/group?memberOfTenant=' + tenant + '&type=Role', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.data.length > 0) {\n let roles = [];\n\n for(let i = 0; i < result.data.length; i++) {\n roles.push({\"name\": result.data[i].name, \"val\": result.data[i].id});\n }\n commit('ALL_ROLES', roles); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteGroupTenantCheck({commit}, payload) {\n let groupTenantInfo = [];\n const PromiseArr = [];\n\n for(let i = 0; i < payload.tenants.length; i++) {\n PromiseArr.push(\n axios.get(payload.tenants[i].engineUrl + '/engine-rest/group?memberOfTenant=' + payload.tenants[i].tenantId + '&id=' + payload.groupId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( resp => new Promise(resolve => \n resolve(resp.data)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n if(item.length > 0) {\n groupTenantInfo.push({ 'id': payload.tenants[index].id, 'engineId': payload.tenants[index].engineId, 'tenantId': payload.tenants[index].tenantId, 'tenantName': payload.tenants[index].tenantName });\n }\n });\n commit('REMOTE_GROUP_TENANTS', groupTenantInfo);\n });\n },\n remoteGroupCheck({commit, state}, payload) {\n state.groupExists = false;\n return axios.get(payload.enginePayload.engineUrl + '/engine-rest/group?id=' + payload.groupPayload.id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 200) {\n if(res.data.length > 0) {\n commit('GROUP_EXISTS', true);\n }else {\n commit('GROUP_EXISTS', false);\n }\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteGroup({commit}, groupId) {\n return axios.delete(baseURL + '/group/' + groupId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('DELETED_GROUP', groupId); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteDeleteGroup({commit}, payload) {\n return axios.delete(payload.enginePayload.engineUrl + '/engine-rest/group/' + payload.groupId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n commit('REMOTE_DELETED_GROUP', payload.groupId);\n }else {\n commit('REMOTE_DELETED_GROUP', '');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addGroup({commit}, payload) {\n return axios.post(baseURL + '/group/create', payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n return axios.put(baseURL + '/tenant/' + payload.tenant + '/group-members/' + payload.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('ADDED_GROUP', payload); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async remoteAddGroup({commit}, payload) {\n let enginePayload = {};\n let engineName = '';\n let tenantName = '';\n\n for(let i = 0; i < payload.tenantSelected.length; i++) {\n let selectedId = payload.tenantSelected[i];\n\n for(let j = 0; j < payload.tenantInfo.length; j++) {\n if(selectedId == payload.tenantInfo[j].id) {\n let engineId = payload.tenantInfo[j].engineId;\n let tenantId = payload.tenantInfo[j].tenantId;\n tenantName = payload.tenantInfo[j].tenantName;\n\n for(let k = 0; k < payload.allHqConns.length; k++) {\n if(engineId == payload.allHqConns[k].ID) {\n let engineUrl = payload.allHqConns[k].URL;\n engineName = payload.allHqConns[k].ENGINE_NAME;\n\n enginePayload = { \n 'tenantId': tenantId, \n 'engineUrl': engineUrl\n };\n\n break;\n }\n }\n }\n }\n\n let remoteCheckPayload = {\n 'groupPayload': payload.groupPayload,\n 'enginePayload': enginePayload\n };\n\n await this.dispatch('remoteGroupCheck', remoteCheckPayload).then( () => {\n if(!state.groupExists) {\n return axios.post(enginePayload.engineUrl + '/engine-rest/group/create', payload.groupPayload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n return axios.put(enginePayload.engineUrl + '/engine-rest/tenant/' + enginePayload.tenantId + '/group-members/' + payload.groupPayload.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res2 => {\n if(res2.status == 204) {\n let data = {\n 'msg': 'Group ' + payload.groupPayload.id + ' successfully created on ' + engineName + '.',\n 'log': 'Group ' + payload.groupPayload.id + ' created remotely on engine ' + engineName + ', tenant ' + tenantName + '.',\n 'success': true\n }\n commit('REMOTE_ADDED_GROUP', data); \n }else {\n let data = {\n 'msg': 'Group ' + payload.groupPayload.id + ' could not be created on ' + engineName + '.',\n 'success': false\n }\n commit('REMOTE_ADDED_USER', data); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n }).catch( () => {\n let msg = 'This group already exists on the target engine (' + engineName + '). ';\n commit('USER_ERROR_MESSAGE', msg);\n });\n }else {\n let msg = 'This group already exists on the target engine (' + engineName + ').';\n commit('USER_ERROR_MESSAGE', msg);\n }\n });\n }\n },\n updateGroup({commit}, payload) {\n return axios.put(baseURL + '/group/' + payload.id, payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('UPDATED_GROUP', payload); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteUpdateGroup({commit}, payload) {\n return axios.put(payload.engineUrl + '/engine-rest/group/' + payload.groupPayload.id, payload.groupPayload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => {\n commit('REMOTE_UPDATED_GROUP', payload.groupPayload.id); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addUserToRole({commit}, payload) {\n return axios.put(baseURL + '/group/' + payload.id + '/members/' + payload.userId, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n if(payload.id == 'adminRole') {\n this.dispatch('addUserToPortal', payload.userId);\n }\n commit('ADDED_TO_ROLE', payload); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteAddUserToRole({commit}, payload) {\n return axios.put(payload.enginePayload.engineUrl + '/engine-rest/group/' + payload.rolePayload.id + '/members/' + payload.rolePayload.userId, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n let data = {\n 'log': 'User ' + payload.rolePayload.userId + ' added to role ' + payload.rolePayload.id + ' remotely on engine ' + payload.engineName + ', tenant ' + payload.tenantName + '.',\n 'success': true\n }\n commit('REMOTE_ADDED_TO_ROLE', data);\n }else {\n commit('REMOTE_ADDED_TO_ROLE', []);\n } \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateUserRole({commit}, payload) {\n return axios.delete(baseURL + '/group/' + payload.removeRole.id + '/members/' + payload.removeRole.userId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n \n const PromiseArr = [];\n if(res.status == 204) {\n PromiseArr.push(\n axios.put(baseURL + '/group/' + payload.addRole.id + '/members/' + payload.addRole.userId, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => new Promise(resolve => \n resolve()))\n );\n }\n\n Promise.all(PromiseArr).then( () => {\n commit('NEW_USER_ROLE', payload.addRole.id);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteUpdateUserRole({commit}, payload) {\n return axios.delete(payload.engineUrl + '/engine-rest/group/' + payload.removeRole.id + '/members/' + payload.removeRole.userId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n \n const PromiseArr = [];\n if(res.status == 204) {\n PromiseArr.push(\n axios.put(payload.engineUrl + '/engine-rest/group/' + payload.addRole.id + '/members/' + payload.addRole.userId, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => new Promise(resolve => \n resolve()))\n );\n }\n\n Promise.all(PromiseArr).then( () => {\n commit('NEW_USER_ROLE', payload.addRole.id);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addUsersToGroup({commit}, payload) {\n const PromiseArr = [];\n for(let i = 0; i < payload.users.length; i++) {\n PromiseArr.push(\n axios.put(baseURL + '/group/' + payload.groupId + '/members/' + payload.users[i], {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => new Promise(resolve => {\n if(res.status == 204) {\n resolve()\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n })));\n }\n \n Promise.all(PromiseArr).then( () => {\n commit('ADDED_TO_GROUP', payload.users);\n\n // Get user groups\n this.dispatch('getUserGroups');\n\n let updatePayload = {\n 'groupId': payload.groupId,\n 'callType': 'assignedTo'\n }\n this.dispatch('getUsersInGroup', updatePayload).then(async () => {\n await this.dispatch('getUnassignedUsers');\n });\n });\n },\n remoteAddUsersToGroup({commit}, payload) {\n const PromiseArr = [];\n for(let i = 0; i < payload.users.length; i++) {\n PromiseArr.push(\n axios.put(payload.engineUrl + '/engine-rest/group/' + payload.groupId + '/members/' + payload.users[i], {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => new Promise(resolve => {\n if(res.status == 204) {\n resolve()\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n })));\n }\n \n Promise.all(PromiseArr).then( () => {\n commit('ADDED_TO_GROUP', payload.users);\n });\n },\n removeUsersFromGroup({commit}, payload) {\n const PromiseArr = [];\n for(let i = 0; i < payload.users.length; i++) {\n PromiseArr.push(\n axios.delete(baseURL + '/group/' + payload.groupId + '/members/' + payload.users[i], {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => new Promise(resolve => {\n if(res.status == 204) {\n resolve()\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n })));\n }\n\n Promise.all(PromiseArr).then( () => {\n commit('REMOVED_FROM_GROUP', payload.users);\n\n let updatePayload = {\n 'groupId': payload.groupId,\n 'callType': 'assignedTo'\n }\n this.dispatch('getUsersInGroup', updatePayload).then(async () => {\n await this.dispatch('getUnassignedUsers');\n });\n });\n },\n remoteRemoveUsersFromGroup({commit}, payload) {\n const PromiseArr = [];\n for(let i = 0; i < payload.users.length; i++) {\n PromiseArr.push(\n axios.delete(payload.engineUrl + '/engine-rest/group/' + payload.groupId + '/members/' + payload.users[i], {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => new Promise(resolve => {\n if(res.status == 204) {\n resolve()\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n })));\n }\n\n Promise.all(PromiseArr).then( () => {\n commit('REMOVED_FROM_GROUP', payload.users);\n });\n },\n getUsersGroups({commit}) {\n return axios.get(baseURL + '/group?type=Workflow&member=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n commit('USERS_GROUPS', res.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n};\n\nconst mutations = {\n ALL_GROUPS(state, payload) {\n state.allGroups = payload;\n },\n ALL_ROLES(state, payload) {\n state.allRoles = payload;\n },\n DELETED_GROUP(state, payload) {\n state.deletedGroup = payload;\n },\n REMOTE_DELETED_GROUP(state, payload) {\n state.remoteDeletedGroup = payload;\n },\n ADDED_GROUP(state, payload) {\n state.addedGroup = payload;\n },\n REMOTE_ADDED_GROUP(state, payload) {\n state.remoteAddedGroup = payload;\n },\n UPDATED_GROUP(state, payload) {\n state.updatedGroup = payload;\n },\n REMOTE_UPDATED_GROUP(state, payload) {\n state.remoteUpdatedGroup = payload;\n },\n ADDED_TO_ROLE(state, payload) {\n state.addedToRole = payload;\n },\n REMOTE_ADDED_TO_ROLE(state, payload) {\n state.remoteAddedToRole = payload;\n },\n NEW_USER_ROLE(state, payload) {\n state.newUserRole = payload;\n },\n ADDED_TO_GROUP(state, payload) {\n state.addedToGroup = payload;\n },\n REMOVED_FROM_GROUP(state, payload) {\n state.removedFromGroup = payload;\n },\n USERS_GROUPS(state, payload) {\n state.usersGroups = payload;\n },\n REMOTE_GROUP_TENANTS(state, payload) {\n state.remoteGroupTenants = payload;\n },\n GROUP_EXISTS(state, payload) {\n state.groupExists = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar outputParameters = require('./implementation/OutputParameters');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var outputParametersEntry = outputParameters(element, bpmnFactory, {\n idPrefix: 'connector-',\n insideConnector: true\n }, translate);\n\n group.entries = group.entries.concat(outputParametersEntry.entries);\n};\n","'use strict';\n\nvar ModelUtil = require('../../../process-builder/lib/base/BaseServices'),\n is = ModelUtil.is,\n getBusinessObject = ModelUtil.getBusinessObject;\n\nvar extensionElementsHelper = require('./ExtensionElementsHelper'),\n implementationTypeHelper = require('./ImplementationTypeHelper');\n\nvar InputOutputHelper = {};\n\nmodule.exports = InputOutputHelper;\n\nfunction getElements(bo, type, prop) {\n var elems = extensionElementsHelper.getExtensionElements(bo, type);\n return !prop ? elems : (elems[0] || {})[prop] || [];\n}\n\nfunction getParameters(element, prop, insideConnector) {\n var inputOutput = InputOutputHelper.getInputOutput(element, insideConnector);\n return (inputOutput && inputOutput.get(prop)) || [];\n}\n\n/**\n * Get a inputOutput from the business object\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n *\n * @return {ModdleElement} the inputOutput object\n */\nInputOutputHelper.getInputOutput = function(element, insideConnector) {\n if (!insideConnector) {\n var bo = getBusinessObject(element);\n return (getElements(bo, 'harlequin:InputOutput') || [])[0];\n }\n var connector = this.getConnector(element);\n return connector && connector.get('inputOutput');\n};\n\n/**\n * Get a connector from the business object\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement} the connector object\n */\nInputOutputHelper.getConnector = function(element) {\n var bo = implementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n return bo && (getElements(bo, 'harlequin:Connector') || [])[0];\n};\n\n/**\n * Return all input parameters existing in the business object, and\n * an empty array if none exist.\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n *\n * @return {Array} a list of input parameter objects\n */\nInputOutputHelper.getInputParameters = function(element, insideConnector) {\n return getParameters.apply(this, [ element, 'inputParameters', insideConnector ]);\n};\n\n/**\n * Return all output parameters existing in the business object, and\n * an empty array if none exist.\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n *\n * @return {Array} a list of output parameter objects\n */\nInputOutputHelper.getOutputParameters = function(element, insideConnector) {\n return getParameters.apply(this, [ element, 'outputParameters', insideConnector ]);\n};\n\n/**\n * Get a input parameter from the business object at given index\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n * @param {number} idx\n *\n * @return {ModdleElement} input parameter\n */\nInputOutputHelper.getInputParameter = function(element, insideConnector, idx) {\n return this.getInputParameters(element, insideConnector)[idx];\n};\n\n/**\n * Get a output parameter from the business object at given index\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n * @param {number} idx\n *\n * @return {ModdleElement} output parameter\n */\nInputOutputHelper.getOutputParameter = function(element, insideConnector, idx) {\n return this.getOutputParameters(element, insideConnector)[idx];\n};\n\n/**\n * Returns 'true' if the given element supports inputOutput\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n *\n * @return {boolean} a boolean value\n */\nInputOutputHelper.isInputOutputSupported = function(element, insideConnector) {\n\n if (insideConnector) {\n return true;\n }\n\n var bo = getBusinessObject(element);\n\n return (\n is(bo, 'bpmn:FlowNode') && !(\n is(bo, 'bpmn:StartEvent') ||\n is(bo, 'bpmn:Gateway') ||\n is(bo, 'bpmn:BoundaryEvent') ||\n (\n is(bo, 'bpmn:SubProcess') && bo.get('triggeredByEvent')\n )\n )\n );\n};\n\n/**\n * Returns 'true' if the given element supports output parameters\n *\n * @param {djs.model.Base} element\n * @param {boolean} insideConnector\n *\n * @return {boolean} a boolean value\n */\nInputOutputHelper.areOutputParametersSupported = function(element, insideConnector) {\n var bo = getBusinessObject(element);\n return insideConnector || (!is(bo, 'bpmn:EndEvent') && !bo.loopCharacteristics);\n};\n","'use strict';\n\nvar assign = require('lodash/assign');\n\nvar fieldInjection = require('./implementation/FieldInjection');\n\nmodule.exports = function(group, element, bpmnFactory, options, translate) {\n\n options = assign({\n idPrefix: 'listener-',\n insideListener: true\n }, options);\n\n var fieldInjectionEntry = fieldInjection(element, bpmnFactory, translate, options);\n\n if (fieldInjectionEntry && fieldInjectionEntry.length > 0) {\n group.entries = group.entries.concat(fieldInjectionEntry);\n }\n\n};\n","'use strict';\n\nvar nameEntryFactory = require('./implementation/Name'),\n createCategoryValue = require('../../../helper/CategoryHelper').createCategoryValue,\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nmodule.exports = function(group, element, bpmnFactory, canvas, translate, options) {\n if (!options) {\n options = {};\n }\n\n function initializeCategory(semantic) {\n var rootElement = canvas.getRootElement(),\n definitions = getBusinessObject(rootElement).$parent,\n categoryValue = createCategoryValue(definitions, bpmnFactory);\n\n semantic.categoryValueRef = categoryValue;\n\n }\n\n function setGroupName(element, values) {\n var bo = getBusinessObject(element),\n categoryValueRef = bo.categoryValueRef;\n\n if (!categoryValueRef) {\n initializeCategory(bo);\n }\n\n // needs direct call to update categoryValue properly\n return {\n cmd: 'element.updateLabel',\n context: {\n element: element,\n newLabel: values.categoryValue\n }\n };\n }\n\n function getGroupName(element) {\n var bo = getBusinessObject(element),\n value = (bo.categoryValueRef || {}).value;\n\n return { categoryValue: value };\n }\n\n if (!is(element, 'bpmn:Collaboration')) {\n var nameOptions = {\n id: options.id,\n label: options.label && translate(options.label)\n };\n\n if (is(element, 'bpmn:TextAnnotation')) {\n nameOptions.modelProperty = 'text';\n nameOptions.label = translate('Text');\n } else if (is(element, 'bpmn:Group')) {\n nameOptions.modelProperty = 'categoryValue';\n nameOptions.label = translate('Category Value');\n nameOptions.get = getGroupName;\n nameOptions.set = setGroupName;\n }\n\n // name\n group.entries = group.entries.concat(nameEntryFactory(element, nameOptions, translate));\n }\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./admin.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildReport.vue?vue&type=style&index=0&lang=css&\"","import axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\nconst tenantId = process.env.VUE_APP_TENANT;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n allTenants: [],\n storageDetails: [],\n savedStorageDetails: '',\n serverDetails: [],\n savedServerDetails: '',\n ssoDetails: [],\n savedSsoDetails: '',\n samlMetadata: '',\n availableLdapUsers: [],\n availableLdapGroups: [],\n availableLdapTree: [],\n ldapStoreStatus: false,\n ldapGetStatus: false,\n ldapSelectStatus: false,\n ldapSyncUserData: [],\n ldapSyncGroupData: [],\n ldapSelectedData: [],\n ldapGroupUserAdded: {},\n ldapUserAdded: {},\n ldapGroupUsersAdded: '',\n savedTemplate: '',\n templateId: '',\n templateName: '',\n templateKey: '',\n templateType: '',\n templateAction: '',\n templateData: '',\n lastTab: 0,\n allDocTemplates: [],\n allEmailTemplates: [],\n deletedTemplate: '',\n allExtDbs: [],\n dbConnAdded: '',\n dbConnEdited: '',\n dbConnDeleted: '',\n checkEngine: false,\n allHqConns: [],\n tenantInfo: [],\n hqConnAdded: '',\n hqConnEdited: '',\n hqConnDeleted: '',\n tenantsAdded: false,\n remoteTenants: [],\n allApis: [],\n apiAdded: false,\n apiUpdated: false,\n apiDeleted: false,\n operationLog: [],\n operationLogError: '',\n operationLogUpdated: '',\n errorLog: [],\n errorLogError: '',\n promoteTemplateData: [],\n promoteTemplateRes: [],\n licenseStartDate: '',\n licenseExpiryDate: '',\n licenseKeyUpdated: '',\n enableProcessUndeploy: false,\n enableProcessDeletion: false,\n enablePentestMode: false,\n supportRequest: false,\n supportEmail: '',\n resetKeyCreated: false,\n resetKeyRemoved: false,\n resetUid: ''\n};\n\nconst getters = {\n allTenants: (state) => state.allTenants,\n storageDetails: (state) => state.storageDetails,\n serverDetails: (state) => state.serverDetails,\n ssoDetails: (state) => state.ssoDetails,\n samlMetadata: (state) => state.samlMetadata,\n availableLdapUsers: (state) => state.availableLdapUsers,\n availableLdapGroups: (state) => state.availableLdapGroups,\n availableLdapTree: (state) => state.availableLdapTree,\n ldapStoreStatus: (state) => state.ldapStoreStatus,\n ldapGetStatus: (state) => state.ldapGetStatus,\n ldapSelectStatus: (state) => state.ldapSelectStatus,\n ldapSyncUserData: (state) => state.ldapSyncUserData,\n ldapSyncGroupData: (state) => state.ldapSyncGroupData,\n ldapSelectedData: (state) => state.ldapSelectedData,\n ldapGroupUserAdded: (state) => state.ldapGroupUserAdded,\n ldapUserAdded: (state) => state.ldapUserAdded,\n templateId: (state) => state.templateId,\n templateName: (state) => state.templateName,\n templateKey: (state) => state.templateKey,\n templateType: (state) => state.templateType,\n templateAction: (state) => state.templateAction,\n templateData: (state) => state.templateData,\n lastTab: (state) => state.lastTab,\n allDocTemplates: (state) => state.allDocTemplates,\n allEmailTemplates: (state) => state.allEmailTemplates,\n allExtDbs: (state) => state.allExtDbs,\n dbConnAdded: (state) => state.dbConnAdded,\n dbConnEdited: (state) => state.dbConnEdited,\n checkEngine: (state) => state.checkEngine,\n tenantsAdded: (state) => state.tenantsAdded,\n allHqConns: (state) => state.allHqConns,\n tenantInfo: (state) => state.tenantInfo,\n remoteTenants: (state) => state.remoteTenants,\n allApis: (state) => state.allApis,\n apiAdded: (state) => state.apiAdded,\n apiUpdated: (state) => state.apiUpdated,\n apiDeleted: (state) => state.apiDeleted,\n operationLog: (state) => state.operationLog,\n operationLogError: (state) => state.operationLogError,\n errorLog: (state) => state.errorLog,\n errorLogError: (state) => state.errorLogError,\n promoteTemplateData: (state) => state.promoteTemplateData,\n promoteTemplateRes: (state) => state.promoteTemplateRes,\n licenseStartDate: (state) => state.licenseStartDate,\n licenseExpiryDate: (state) => state.licenseExpiryDate,\n enableProcessUndeploy: (state) => state.enableProcessUndeploy,\n enableProcessDeletion: (state) => state.enableProcessDeletion,\n enablePentestMode: (state) => state.enablePentestMode,\n supportRequest: (state) => state.supportRequest,\n supportEmail: (state) => state.supportEmail,\n resetKeyCreated: (state) => state.resetKeyCreated,\n resetKeyRemoved: (state) => state.resetKeyRemoved,\n resetUid: (state) => state.resetUid\n};\n\nconst actions = {\n getAllTenants({commit}) {\n return axios.get(baseURL + '/tenant', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('ALL_TENANTS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getLicense({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/licenseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n commit('LICENSE_START_DATE', result.data.variables.startDate.value);\n commit('LICENSE_EXPIRY_DATE', result.data.variables.expiryDate.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n setLicense({commit}, key) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'set', 'type': 'String' },\n 'licenseKey': { 'value': key, 'type': 'String' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/licenseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('LICENSE_KEY_UPDATED', 'success');\n this.dispatch('getLicense');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n processSettings({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'settings', 'type': 'String' },\n 'action': { 'value': payload.action, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n if(payload.action == 'deploy') {\n data.variables['enableUndeploy'] = { 'value': payload.enableUndeploy, 'type': 'String' };\n }\n\n if(payload.action == 'deletion') {\n data.variables['enableDeletion'] = { 'value': payload.enableDeletion, 'type': 'String' };\n }\n\n if(payload.action == 'pentest') {\n data.variables['enablePentest'] = { 'value': payload.enablePentest, 'type': 'String' };\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(payload.action == 'getAll') {\n commit('ENABLE_PROCESS_UNDEPLOY', result.data.variables.enableUndeploy.value);\n commit('ENABLE_PROCESS_DELETION', result.data.variables.enableDeletion.value);\n commit('ENABLE_PENTEST_MODE', result.data.variables.enablePentest.value);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveStorageDetails({commit}, payload) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'localEnabled': { 'value': payload.localEnabled, 'type': 'String' },\n 'officeEnabled': { 'value': payload.officeEnabled, 'type': 'String' },\n 'officeTenantId': { 'value': payload.officeTenantId, 'type': 'String' },\n 'officeClientId': { 'value': payload.officeClientId, 'type': 'String' },\n 'officeClientSecret': { 'value': payload.officeClientSecret, 'type': 'String' },\n 'officeGroupName': { 'value': payload.officeGroupName, 'type': 'String' },\n 'officeUploadPath': { 'value': payload.officeUploadPath, 'type': 'String' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SAVED_STORAGE_DETAILS', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getStorageDetails({commit}) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let data = JSON.parse(result.data.variables.storageSettings.value);\n let storageSettings = [];\n\n for(let i = 0; i < data.length; i++) {\n const storageKeys = Object.keys(data[i]);\n\n storageKeys.forEach((skey) => {\n if(skey == 'officeEnabled' || skey == 'localEnabled') {\n if(data[i][skey] == 'true') {\n data[i][skey] = true;\n }else {\n data[i][skey] = false;\n }\n }\n storageSettings[skey] = data[i][skey];\n });\n }\n commit('STORAGE_DETAILS', storageSettings);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getExternalStorageDetails({commit}) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let data = JSON.parse(result.data.variables.storageSettings.value);\n let storageSettings = [];\n\n for(let i = 0; i < data.length; i++) {\n const storageKeys = Object.keys(data[i]);\n\n storageKeys.forEach((skey) => {\n if(skey == 'officeEnabled' || skey == 'localEnabled') {\n if(data[i][skey] == 'true') {\n data[i][skey] = true;\n }else {\n data[i][skey] = false;\n }\n }\n storageSettings[skey] = data[i][skey];\n });\n }\n commit('STORAGE_DETAILS', storageSettings);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveServerDetails({commit}, payload) {\n let data = {};\n\n if(payload.emailType == 'msg') {\n data = {\n 'variables': {\n 'email': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'emailGraphClientId': { 'value': payload.emailGraphClientId, 'type': 'String' },\n 'emailGraphClientSecret': { 'value': payload.emailGraphClientSecret, 'type': 'String' },\n 'emailGraphEmailId': { 'value': payload.emailGraphEmailId, 'type': 'String' },\n 'emailGraphTenantId': { 'value': payload.emailGraphTenantId, 'type': 'String' },\n 'emailType': { 'value': payload.emailType, 'type': 'String' }\n }\n }\n }else {\n data = {\n 'variables': {\n 'email': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'emailHost': { 'value': payload.emailHost, 'type': 'String' },\n 'emailPort': { 'value': payload.emailPort, 'type': 'String' },\n 'emailTls': { 'value': payload.emailTls, 'type': 'String' },\n 'emailSender': { 'value': payload.emailSender, 'type': 'String' },\n 'emailUsername': { 'value': payload.emailUsername, 'type': 'String' },\n 'emailPassword': { 'value': payload.emailPassword, 'type': 'String' },\n 'emailType': { 'value': payload.emailType, 'type': 'String' }\n }\n }\n }\n return axios.post(baseURL + '/process-definition/key/emailController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SAVED_SERVER_DETAILS', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getServerDetails({commit}) {\n let data = {\n 'variables': {\n 'email': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/emailController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let data = JSON.parse(result.data.variables.serverSettings.value);\n let serverSettings = [];\n\n for(let i = 0; i < data.length; i++) {\n const storageKeys = Object.keys(data[i]);\n\n storageKeys.forEach((skey) => {\n if(skey == 'emailTls') {\n if(data[i][skey] == 'true') {\n data[i][skey] = true;\n }else {\n data[i][skey] = false;\n }\n }\n serverSettings[skey] = data[i][skey];\n });\n }\n commit('SERVER_DETAILS', serverSettings);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveSsoDetails({commit}, payload) {\n let spUrl = window.location.href;\n spUrl = spUrl.replace('admin', '');\n\n let data = {\n 'variables': {\n 'sso': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'msalEnabled': { 'value': payload.msalEnabled, 'type': 'String' },\n 'msalClientId': { 'value': payload.msalClientId, 'type': 'String' },\n 'msalAuthority': { 'value': payload.msalAuthority, 'type': 'String' },\n 'msalRedirectUri': { 'value': payload.msalRedirectUri, 'type': 'String' },\n 'msalAuthState': { 'value': payload.msalAuthState, 'type': 'String' },\n 'samlEnabled': { 'value': payload.samlEnabled, 'type': 'String' },\n 'samlIpId': { 'value': payload.samlIpId, 'type': 'String' },\n 'samlIpSls': { 'value': payload.samlIpSls, 'type': 'String' },\n 'samlIpSos': { 'value': payload.samlIpSos, 'type': 'String' },\n 'samlSpAcs': { 'value': payload.samlSpAcs, 'type': 'String' },\n 'samlSpId': { 'value': payload.samlSpId, 'type': 'String' },\n 'samlSpSls': { 'value': payload.samlSpSls, 'type': 'String' },\n 'samlIpEmailAttr': { 'value': payload.samlIpEmailAttr, 'type': 'String' },\n 'samlIpFirstAttr': { 'value': payload.samlIpFirstAttr, 'type': 'String' },\n 'samlIpLastAttr': { 'value': payload.samlIpLastAttr, 'type': 'String' },\n 'samlIpCfr': { 'value': payload.samlIpCfr, 'type': 'String' },\n 'samlSigAlg': { 'value': payload.samlSigAlg, 'type': 'String' },\n 'samlIpCert': { 'value': payload.samlIpCert, 'type': 'String' },\n 'samlBaseUrl': { 'value': spUrl, 'type': 'String' },\n 'ldapEnabled': { 'value': payload.ldapEnabled, 'type': 'String' },\n 'ldapLoginEnabled': { 'value': payload.ldapLoginEnabled, 'type': 'String' },\n 'ldapServer': { 'value': payload.ldapServer, 'type': 'String' },\n 'ldapPort': { 'value': payload.ldapPort, 'type': 'String' },\n 'ldapUsername': { 'value': payload.ldapUsername, 'type': 'String' },\n 'ldapPassword': { 'value': payload.ldapPassword, 'type': 'String' },\n 'ldapBaseDn': { 'value': payload.ldapBaseDn, 'type': 'String' },\n 'ldapIdentifier': { 'value': payload.ldapIdentifier, 'type': 'String' },\n 'ldapUsersCn': { 'value': payload.ldapUsersCn, 'type': 'String' },\n 'ldapGroupsCn': { 'value': payload.ldapGroupsCn, 'type': 'String' },\n 'ldapTls': { 'value': payload.ldapTls, 'type': 'String' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/ssoController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SAVED_SSO_DETAILS', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveAutoSyncDetails({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'saveSync', 'type': 'String' },\n 'ldapAutoSync': { 'value': payload.ldapAutoSync, 'type': 'String' },\n 'ldapAutoSyncTime': { 'value': payload.ldapAutoSyncTime, 'type': 'String' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/ldapController/tenant-id/' + tenantId + '/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SAVED_SSO_DETAILS', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getSsoDetails({commit}) {\n let data = {\n 'variables': {\n 'sso': { 'value': 'settings', 'type': 'String' },\n 'requestType': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/ssoController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let data = JSON.parse(result.data.variables.ssoSettings.value);\n let ssoSettings = [];\n\n for(let i = 0; i < data.length; i++) {\n const ssoKeys = Object.keys(data[i]);\n\n ssoKeys.forEach((skey) => {\n if(skey == 'msalEnabled' || skey == 'samlEnabled' || skey == 'msalAuthState' || skey == 'ldapEnabled' || skey == 'ldapLoginEnabled' || skey == 'ldapTls' || skey == 'ldapAutoSync') {\n if(data[i][skey] == 'true') {\n data[i][skey] = true;\n }else {\n data[i][skey] = false;\n }\n }\n ssoSettings[skey] = data[i][skey];\n });\n }\n\n let spUrl = window.location.href;\n spUrl = spUrl.replace('admin', '');\n\n ssoSettings['samlSpId'] = spUrl + 'saml/metadata.jsp';\n ssoSettings['samlSpAcs'] = spUrl + 'saml/acs.jsp';\n ssoSettings['samlSpSls'] = spUrl + 'saml/sls.jsp';\n \n commit('SSO_DETAILS', ssoSettings);\n }).catch( () => {\n // throw new Error(`API ${error}`);\n });\n },\n getSamlMetadata({commit}) {\n let data = {\n 'variables': {\n 'sso': { 'value': 'xml', 'type': 'String' },\n 'requestType': { 'value': 'metadata', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/ssoController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let data = JSON.parse(result.data.variables.samlMetadata.value); \n commit('SAML_METADATA', data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n ldapSelect({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'select', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/ldapController/tenant-id/' + tenantId + '/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async result => { \n let selectStatus = result.data.variables.selectStatus.value;\n\n if(selectStatus) {\n let userData = JSON.parse(result.data.variables.allUsers.value);\n let groupData = JSON.parse(result.data.variables.allGroups.value);\n \n await this.dispatch('getLdapItems').then( () => {\n commit('LDAP_SELECT_STATUS', selectStatus);\n commit('LDAP_USER_DATA', userData);\n commit('LDAP_GROUP_DATA', groupData);\n\n // Testing treeview\n let treeData = [];\n let itemId = 1;\n\n for(let i = 0; i < groupData.length; i++) {\n let ouList = [];\n let dn = groupData[i].distinguishedName;\n let dnParts = dn.split(',');\n let previousOu = '';\n let currentItem = {};\n \n // Reverse the array\n dnParts.reverse();\n // Loop through each dn part to find OUs\n for(let j = 0; j < dnParts.length; j++) {\n let dnType = dnParts[j].substring(0,2);\n \n if(dnType == 'OU') {\n let ouData = dnParts[j].split(\"=\");\n ouList.push(ouData[1]);\n }\n }\n\n for(let k = 0; k < ouList.length; k++) {\n if(treeData.length > 0) {\n\n // Check top level\n let itemExists = false;\n for(let l = 0; l < treeData.length; l++) {\n if(ouList[k] == treeData[l].name) {\n itemExists = true;\n }\n }\n\n // Check children\n const findItemNested = (arr, itemName, nestingKey) => (\n arr.reduce((a, item) => {\n if (a) return a;\n if (item.name === itemName) return item;\n if (item[nestingKey]) return findItemNested(item[nestingKey], itemName, nestingKey)\n }, null)\n );\n\n if(!itemExists) {\n let itemFound = findItemNested(treeData, ouList[k], \"children\");\n \n // Didn't find the OU, so add it\n if(!itemFound) {\n let prevItem = findItemNested(treeData, previousOu, \"children\");\n prevItem.children.push({ id: itemId, name: ouList[k], children: [] });\n \n itemId++;\n }\n currentItem = findItemNested(treeData, ouList[k], \"children\");\n }\n }else {\n treeData.push({ id: itemId, name: ouList[k], children: [] });\n itemId++;\n }\n previousOu = ouList[k];\n }\n // Add the group details\n currentItem.children.push({ id: itemId, name: groupData[i].cn + ' (' + dn + ')', data: groupData[i] });\n itemId++;\n }\n commit('LDAP_TREE_DATA', treeData);\n });\n }else {\n commit('LDAP_SELECT_STATUS', selectStatus);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getCurrentLdapSelection({commit, state}, type) {\n let currentLdapGroupsSelected = [];\n let currentLdapUsersSelected = [];\n\n for(let i = 0; i < state.ldapSyncGroupData.length; i++) {\n let group = {\n cn: state.ldapSyncGroupData[i].cn,\n distinguishedName: state.ldapSyncGroupData[i].dn,\n groupUsers: state.ldapSyncGroupData[i].groupUsers,\n member: state.ldapSyncGroupData[i].member,\n objectGUID: state.ldapSyncGroupData[i].guid,\n sAMAccountName: state.ldapSyncGroupData[i].acc\n };\n \n currentLdapGroupsSelected.push(group);\n }\n \n for(let i = 0; i < state.ldapSyncUserData.length; i++) {\n let user = {\n cn: state.ldapSyncUserData[i].cn,\n distinguishedName: state.ldapSyncUserData[i].dn,\n sAMAccountName: state.ldapSyncUserData[i].username,\n memberOf: state.ldapSyncUserData[i].memberOf,\n objectGUID: state.ldapSyncUserData[i].guid,\n givenName: state.ldapSyncUserData[i].givenName,\n sn: state.ldapSyncUserData[i].sn,\n mail: state.ldapSyncUserData[i].mail\n };\n \n currentLdapUsersSelected.push(user);\n }\n\n let retPayload = {\n 'currentLdapGroupsSelected': currentLdapGroupsSelected,\n 'currentLdapUsersSelected': currentLdapUsersSelected,\n 'type': type\n };\n\n commit('LDAP_SELECTED_DATA', retPayload);\n },\n saveLdapItems({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'store', 'type': 'String' },\n 'action': { 'value': 'save', 'type': 'String' },\n 'type': { 'value': payload.type, 'type': 'String' },\n 'ldapUsers': { 'value': payload.ldapUsers, 'type': 'Json' },\n 'ldapGroups': { 'value': payload.ldapGroups, 'type': 'Json' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/ldapController/tenant-id/' + tenantId + '/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let storeStatus = result.data.variables.storeStatus.value;\n \n commit('LDAP_STORE_STATUS', storeStatus);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getLdapItems({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'store', 'type': 'String' },\n 'action': { 'value': 'get', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/ldapController/tenant-id/' + tenantId + '/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let getStatus = result.data.variables.getStatus.value;\n let ldapUsers = JSON.parse(JSON.parse(result.data.variables.ldapUsers.value));\n let ldapGroups = JSON.parse(JSON.parse(result.data.variables.ldapGroups.value));\n\n commit('LDAP_GET_STATUS', getStatus);\n commit('LDAP_SYNC_USER_DATA', ldapUsers);\n commit('LDAP_SYNC_GROUP_DATA', ldapGroups);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async ldapSyncGroups({state}) {\n // Get all users/groups from LDAP (ldapSelect)\n await this.dispatch('ldapSelect').then( async () => {\n // Get saved users/groups to sync against (getLdapItems)\n await this.dispatch('getLdapItems').then( async () => {\n // Loop through groups\n for(let i = 0; i < state.ldapSyncGroupData.length; i++) {\n let groupId = '';\n // Find match with available groups\n for(let j = 0; j < state.availableLdapGroups.length; j++) {\n if(state.ldapSyncGroupData[i].guid == state.availableLdapGroups[j].objectGUID) {\n // Match found\n let groupData = {\n 'ldapSyncGroupData': state.ldapSyncGroupData[i],\n 'availableLdapGroups': state.availableLdapGroups[j]\n };\n\n await this.dispatch('getAllGroups').then( async () => {\n await this.dispatch('ldapAddGroup', groupData).then( retData => {\n groupId = retData.groupId;\n });\n });\n\n // Add users to group\n let groupUsers = state.availableLdapGroups[j].groupUsers;\n if(groupUsers) {\n // Loop through group users\n for(let l = 0; l < groupUsers.length; l++) {\n // Check if user exists in Harlequin\n let groupUser = groupUsers[l];\n groupUser.groupId = groupId;\n\n await this.dispatch('getAllUsers').then( async () => {\n await this.dispatch('ldapAddUser', groupUser).then( async retData => {\n await this.dispatch('getAllGroups').then( async () => {\n let grpPayload = {\n 'groupId': retData.groupId,\n 'callType': 'assignedTo'\n };\n \n await this.dispatch('getUsersInGroup', grpPayload).then( () => {\n this.dispatch('ldapAddUsersToGroup', retData);\n });\n });\n });\n });\n }\n }\n }\n }\n } \n });\n }); \n },\n async ldapAddGroup({rootState}, groupData) {\n let groupExists = false;\n let groupId = '';\n let ldapSyncGroupData = groupData.ldapSyncGroupData;\n let availableLdapGroups = groupData.availableLdapGroups;\n let retData = {};\n\n // Does current group name exist in Harlequin?\n for(let k = 0; k < rootState.groups.allGroups.length; k++) {\n if(ldapSyncGroupData.cn == rootState.groups.allGroups[k].name) {\n // Group exists\n groupId = rootState.groups.allGroups[k].id;\n groupExists = true;\n }\n }\n\n if(groupExists) {\n // Check if existing group details do not match LDAP\n if(ldapSyncGroupData.cn != availableLdapGroups.cn) {\n // Update group\n let payload = {\n 'id': groupId,\n 'name': availableLdapGroups.cn,\n 'type': 'Workflow'\n };\n\n this.dispatch('updateGroup', payload);\n }else {\n // Do nothing\n }\n\n retData = {\n 'groupId': groupId\n }\n }else {\n // Create group\n groupId = availableLdapGroups.cn.replace(/[^A-Z0-9]/ig, \"\");\n let payload = {\n 'id': groupId,\n 'name': availableLdapGroups.cn,\n 'type': 'Workflow',\n 'tenant': tenantId\n };\n\n await this.dispatch('addGroup', payload).then( () => {\n retData = {\n 'groupId': groupId\n }\n });\n }\n\n return retData;\n },\n async ldapAddUser({rootState}, user) {\n let userId = '';\n let firstName = '';\n let lastName = '';\n let email = '';\n let userExists = false;\n let groupId = user.groupId;\n let retData = {};\n\n for(let m = 0; m < rootState.users.allUsers.length; m++) {\n let uName = user.sAMAccountName.replace(/[^A-Z0-9]/ig, \"\");\n\n if(uName == rootState.users.allUsers[m].id) {\n // User exists\n userId = rootState.users.allUsers[m].id;\n firstName = rootState.users.allUsers[m].firstName;\n lastName = rootState.users.allUsers[m].lastName;\n email = rootState.users.allUsers[m].email;\n userExists = true;\n }\n }\n\n if(userExists) {\n // Check if existing user details do not match LDAP\n if((user.givenName != firstName) || (user.sn != lastName) || (user.mail != email)) {\n // Update user\n let payload = {\n 'firstName': user.givenName,\n 'lastName': user.sn,\n 'email': user.mail,\n 'id': userId\n };\n\n this.dispatch('editUser', payload);\n }\n\n retData = {\n 'userId': userId,\n 'groupId': groupId\n }\n }else {\n // Create user\n userId = user.sAMAccountName.replace(/[^A-Z0-9]/ig, \"\");\n\n // Generate random password (will be updated when user logs in)\n let str = '';\n let length = 2;\n let chars = 'abcdefghijklmnopqrstuvwxyz';\n\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = '!@$%^&*';\n\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';\n\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = '0123456789';\n\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 7;\n chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@$%^&*';\n\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n // End password gen\n\n let payload = {\n 'profile': {\n 'id': userId,\n 'firstName': user.givenName,\n 'lastName': user.sn,\n 'email': user.mail\n },\n 'credentials': {\n 'password': str\n }\n };\n await this.dispatch('addUser', payload).then( async () => {\n\n let rolePayload = {\n 'id': 'userRole',\n 'userId': userId\n };\n await this.dispatch('addUserToRole', rolePayload).then( () => {\n retData = {\n 'userId': userId,\n 'groupId': groupId\n }\n });\n });\n }\n \n return retData;\n },\n async ldapAddUsersToGroup({commit, rootState}, data) {\n let inGroup = false;\n let assignedUsers = rootState.users.assignedUsers;\n \n for(let i = 0; i < assignedUsers.length; i++) {\n if(data.userId == assignedUsers[i].id) {\n inGroup = true;\n }\n }\n\n if(!inGroup) {\n let usersToAdd = [];\n usersToAdd.push(data.userId);\n\n let payload = {\n 'groupId': data.groupId,\n 'users': usersToAdd\n }\n await this.dispatch('addUsersToGroup', payload).then( () => {\n commit('LDAP_GROUP_USERS_ADDED', 'complete');\n });\n }\n },\n async ldapSyncUsers({commit, state}) {\n // Get all users/groups from LDAP (ldapSelect)\n await this.dispatch('ldapSelect').then( async () => {\n // Get saved users/groups to sync against (getLdapItems)\n await this.dispatch('getLdapItems').then( async () => {\n // Loop through users\n for(let i = 0; i < state.ldapSyncUserData.length; i++) {\n // Find match with available users\n for(let j = 0; j < state.availableLdapUsers.length; j++) {\n if(state.ldapSyncUserData[i].guid == state.availableLdapUsers[j].objectGUID) {\n // Match found\n let user = state.availableLdapUsers[j];\n user.groupId = '';\n\n await this.dispatch('getAllUsers').then( async () => {\n await this.dispatch('ldapAddUser', user).then( retData => {\n commit('LDAP_USER_ADDED', retData);\n });\n });\n }\n }\n }\n });\n });\n },\n removeLdapUsers({state}, ldapUsersToRemove) {\n // Loop through list of users to remove\n for(let i = 0; i < ldapUsersToRemove.length; i++) {\n let removeUser = true;\n // Loop through sync'ed groups\n for(let j = 0; j < state.ldapSyncGroupData.length; j++) {\n // Check against each groups members\n for(let k = 0; k < state.ldapSyncGroupData[j].groupUsers.length; k++) {\n if(ldapUsersToRemove[i].objectGUID == state.ldapSyncGroupData[j].groupUsers[k].objectGUID) {\n // Found the user in a group, so don't remove them\n removeUser = false;\n }\n }\n }\n\n if(removeUser) {\n // Remove user from Harlequin\n this.dispatch('deleteUser', ldapUsersToRemove[i].sAMAccountName);\n // Should probably update log with sync data here\n }\n }\n },\n removeLdapGroups({state, rootState}, ldapGroupsToRemove) {\n // Loop through list of groups to remove\n for(let i = 0; i < ldapGroupsToRemove.length; i++) {\n // Loop through group members\n for(let j = 0; j < ldapGroupsToRemove[i].groupUsers.length; j++) {\n let removeUser = true;\n // Check group member against other sync'ed groups\n for(let k = 0; k < state.ldapSyncGroupData.length; k++) {\n // Check against each groups members\n for(let l = 0; l < state.ldapSyncGroupData[k].groupUsers.length; l++) {\n if(ldapGroupsToRemove[i].groupUsers[j].objectGUID == state.ldapSyncGroupData[k].groupUsers[l].objectGUID && \n state.ldapSyncGroupData[k].cn != ldapGroupsToRemove[i].cn) {\n // Found the user in a group, so don't remove them\n removeUser = false;\n }\n }\n }\n // Check group member against other sync'ed users\n for(let m = 0; m < state.ldapSyncUserData.length; m++) {\n if(ldapGroupsToRemove[i].groupUsers[j].objectGUID == state.ldapSyncUserData[m].guid) {\n // User is sync'ed individually, so don't remove them\n removeUser = false;\n }\n }\n\n if(removeUser) {\n // Check if user is an admin\n for(let n = 0; n < rootState.users.allUsers.length; n++) {\n if(ldapGroupsToRemove[i].groupUsers[j].sAMAccountName == rootState.users.allUsers[n].id) {\n // If not, mark for removal\n if(rootState.users.allUsers[n].role != 'adminRole') {\n // Remove user from Harlequin\n this.dispatch('deleteUser', ldapGroupsToRemove[i].groupUsers[j].sAMAccountName);\n }else {\n // Do nothing\n }\n }\n }\n // Should probably update log with sync data here\n }\n\n }\n\n // Remove group from Harlequin\n let groupId = ldapGroupsToRemove[i].cn.replace(/[^A-Z0-9]/ig, \"\");\n this.dispatch('deleteGroup', groupId);\n // Should probably update log with sync data here\n }\n },\n removeLdapUserFromGroup({state, rootState}, removeFromGroup) {\n // Loop through list of user to remove from group\n for(let i = 0; i < removeFromGroup.length; i++) {\n let removeUser = true;\n // Check user against other sync'ed groups\n for(let j = 0; j < state.ldapSyncGroupData.length; j++) {\n // Check against each groups members\n for(let k = 0; k < state.ldapSyncGroupData[j].groupUsers.length; k++) {\n if(removeFromGroup[i].objectGUID == state.ldapSyncGroupData[j].groupUsers[k].objectGUID && \n state.ldapSyncGroupData[j].cn != removeFromGroup[i].groupCn) {\n // Found the user in a group, so don't remove them\n removeUser = false;\n }\n }\n }\n // Check user against other sync'ed users\n for(let l = 0; l < state.ldapSyncUserData.length; l++) {\n if(removeFromGroup[i].objectGUID == state.ldapSyncUserData[l].guid) {\n // User is sync'ed individually, so don't remove them\n removeUser = false;\n }\n }\n\n if(removeUser) {\n for(let n = 0; n < rootState.users.allUsers.length; n++) {\n if(removeFromGroup[i].sAMAccountName == rootState.users.allUsers[n].id) {\n // If not, mark for removal\n if(rootState.users.allUsers[n].role != 'adminRole') {\n // Remove user from Harlequin\n this.dispatch('deleteUser', removeFromGroup[i].sAMAccountName);\n }else {\n // Do nothing\n }\n }\n }\n // Should probably update log with sync data here\n }else {\n // Just remove user from the group\n let groupId = removeFromGroup[i].groupCn.replace(/[^A-Z0-9]/ig, \"\");\n\n let usersToRemove = [];\n usersToRemove.push(removeFromGroup[i].sAMAccountName);\n\n let payload = {\n 'groupId': groupId,\n 'users': usersToRemove\n }\n\n this.dispatch('removeUsersFromGroup', payload);\n // Should probably update log with sync data here\n }\n }\n },\n getAllTemplates({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'get', 'type': 'String' },\n 'templateId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let docTemplates = JSON.parse(result.data.variables.docTemplates.value);\n let emailTemplates = JSON.parse(result.data.variables.emailTemplates.value);\n \n commit('DOC_TEMPLATES', docTemplates);\n commit('EMAIL_TEMPLATES', emailTemplates);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getTemplateData({commit}, templateKey) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getData', 'type': 'String' },\n 'templateKey': { 'value': templateKey, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let templateName = result.data.variables.templateName.value;\n let templateData = result.data.variables.templateData.value;\n commit('UPDATE_TEMPLATE_NAME', templateName);\n commit('TEMPLATE_DATA', templateData);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveTemplate({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'templateId': { 'value': payload.id, 'type': 'Integer' },\n 'templateName': { 'value': payload.name, 'type': 'String' },\n 'templateKey': { 'value': payload.key, 'type': 'String' },\n 'templateType': { 'value': payload.type, 'type': 'String' },\n 'templateData': { 'value': payload.data, 'type': 'String' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SAVED_TEMPLATE', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteTemplate({commit}, templateId) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'templateId': { 'value': templateId, 'type': 'Integer' }\n }\n }\n return axios.post(baseURL + '/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_TEMPLATE', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n promoteTemplatesCheck({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteTemplateData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'get', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let templateData = JSON.parse(result.data.variables.templateData.value);\n commit('PROMOTE_TEMPLATE_DATA', templateData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n promoteTemplates({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteTemplateData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'getLocal', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let templateData = result.data.variables.templateData.value;\n \n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteTemplateData': { 'value': templateData, 'type': 'Json' },\n 'checkType': { 'value': 'update', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/templateController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let retData = [];\n\n if(result.status == 200) {\n retData = JSON.parse(result.data.variables.retData.value);\n }\n\n commit('PROMOTE_TEMPLATE_RES', retData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n getAllConnections({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'external', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables !== 'undefined') {\n commit('EXT_DB_CONNECTIONS', JSON.parse(result.data.variables.allExtDbs.value));\n }else {\n commit('EXT_DB_CONNECTIONS', []);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addDbConnection({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'external', 'type': 'String' },\n 'action': { 'value': 'add', 'type': 'String' },\n 'dbConnType': { 'value': payload.dbConnType, 'type': 'String' },\n 'dbName': { 'value': payload.dbName, 'type': 'String' },\n 'dbIpAddr': { 'value': payload.dbIpAddr, 'type': 'String' },\n 'dbPort': { 'value': payload.dbPort, 'type': 'Integer' },\n 'dbUser': { 'value': payload.dbUser, 'type': 'String' },\n 'dbPass': { 'value': payload.dbPass, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.data.variables.connectionTest.value == 'success') {\n commit('DB_CONN_ADDED', 'success');\n }else {\n commit('DB_CONN_ADDED', 'failed');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n editDbConnection({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'external', 'type': 'String' },\n 'action': { 'value': 'edit', 'type': 'String' },\n 'dbConnId': { 'value': payload.dbConnId, 'type': 'Integer' },\n 'dbConnType': { 'value': payload.dbConnType, 'type': 'String' },\n 'dbName': { 'value': payload.dbName, 'type': 'String' },\n 'dbIpAddr': { 'value': payload.dbIpAddr, 'type': 'String' },\n 'dbPort': { 'value': payload.dbPort, 'type': 'Integer' },\n 'dbUser': { 'value': payload.dbUser, 'type': 'String' },\n 'dbPass': { 'value': payload.dbPass, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.data.variables.connectionTest.value == 'success') {\n commit('DB_CONN_EDITED', 'success');\n }else {\n commit('DB_CONN_EDITED', 'failed');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteDbConnection({commit}, dbConnId) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'external', 'type': 'String' },\n 'action': { 'value': 'delete', 'type': 'String' },\n 'dbConnId': { 'value': dbConnId, 'type': 'Integer' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DB_CONN_DELETED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n checkEngine({commit, state}, hqUrl) {\n state.checkEngine = false;\n return axios.get(hqUrl + '/engine-rest/engine', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.status == 200) {\n commit('CHECK_ENGINE', true);\n }else {\n commit('CHECK_ENGINE', false);\n }\n }).catch( () => {\n commit('CHECK_ENGINE', false);\n });\n },\n getAllHqConnections({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'engines', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables.allHqConns !== 'undefined') {\n commit('HQ_CONNECTIONS', JSON.parse(result.data.variables.allHqConns.value));\n }else {\n commit('HQ_CONNECTIONS', []);\n }\n \n if(typeof result.data.variables.tenantInfo !== 'undefined') {\n commit('TENANT_INFO', JSON.parse(result.data.variables.tenantInfo.value));\n }else {\n commit('TENANT_INFO', []);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async addHqConnection({commit, state}, payload) {\n await this.dispatch('checkEngine', payload.hqUrl).then( () => {\n if(state.checkEngine) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'engines', 'type': 'String' },\n 'action': { 'value': 'add', 'type': 'String' },\n 'hqUrl': { 'value': payload.hqUrl, 'type': 'String' },\n 'hqName': { 'value': payload.hqName, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let tenantData = {\n 'hqUrl': payload.hqUrl,\n 'hqConnId': result.data.variables.hqConnId.value\n };\n this.dispatch('addRemoteTenants', tenantData);\n commit('HQ_CONN_ADDED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n });\n },\n async editHqConnection({commit, state}, payload) {\n await this.dispatch('checkEngine', payload.hqUrl).then( () => {\n if(state.checkEngine) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'engines', 'type': 'String' },\n 'action': { 'value': 'edit', 'type': 'String' },\n 'hqConnId': { 'value': payload.hqConnId, 'type': 'Integer' },\n 'hqUrl': { 'value': payload.hqUrl, 'type': 'String' },\n 'hqName': { 'value': payload.hqName, 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n let tenantData = {\n 'hqUrl': payload.hqUrl,\n 'hqConnId': payload.hqConnId\n };\n this.dispatch('addRemoteTenants', tenantData);\n commit('HQ_CONN_EDITED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n });\n },\n deleteHqConnection({commit}, hqConnId) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'engines', 'type': 'String' },\n 'action': { 'value': 'delete', 'type': 'String' },\n 'hqConnId': { 'value': hqConnId, 'type': 'Integer' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('HQ_CONN_DELETED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addRemoteTenants({commit, state}, payload) {\n state.tenantsAdded = false;\n return axios.get(payload.hqUrl + '/engine-rest/tenant', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n // Filter out portals\n let tenants = [];\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].id != 'portal') {\n tenants.push(result.data[i]);\n }\n } \n\n let data = {\n 'variables': {\n 'requestType': { 'value': 'tenants', 'type': 'String' },\n 'action': { 'value': 'add', 'type': 'String' },\n 'engineId': { 'value': payload.hqConnId, 'type': 'Integer' },\n 'tenants': { 'value': JSON.stringify(tenants), 'type': 'Json' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('TENANTS_ADDED', true);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch( () => {\n commit('TENANTS_ADDED', false);\n });\n },\n getAllRemoteTenants({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'tenants', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables !== 'undefined') {\n commit('REMOTE_TENANTS', JSON.parse(result.data.variables.remoteTenants.value));\n }else {\n commit('REMOTE_TENANTS', []);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n refreshRemoteTenants({state}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'tenants', 'type': 'String' },\n 'action': { 'value': 'deleteAll', 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n this.dispatch('getAllHqConnections').then( () => {\n for(let i = 0; i < state.allHqConns.length; i++) {\n let tenantData = {\n 'hqUrl': state.allHqConns[i].URL,\n 'hqConnId': state.allHqConns[i].ID\n };\n this.dispatch('addRemoteTenants', tenantData);\n }\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllApis({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'apiVault', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables !== 'undefined') {\n commit('ALL_APIS', JSON.parse(result.data.variables.allApis.value));\n }else {\n commit('ALL_APIS', []);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addApi({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'apiVault', 'type': 'String' },\n 'action': { 'value': 'add', 'type': 'String' },\n 'name': { 'value': payload.name, 'type': 'String' },\n 'authType': { 'value': payload.authType, 'type': 'String' },\n 'basicUser': { 'value': payload.basicUser, 'type': 'String' },\n 'basicPass': { 'value': payload.basicPass, 'type': 'String' },\n 'apiKey': { 'value': payload.apiKey, 'type': 'String' },\n 'apiValue': { 'value': payload.apiValue, 'type': 'String' },\n 'grantType': { 'value': payload.grantType, 'type': 'String' },\n 'clientId': { 'value': payload.clientId, 'type': 'String' },\n 'clientSecret': { 'value': payload.clientSecret, 'type': 'String' },\n 'endpoint': { 'value': payload.endpoint, 'type': 'String' },\n 'headers': { 'value': payload.headers, 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.status == 200) {\n commit('API_ADDED', true);\n }else {\n commit('API_ADDED', false);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n editApi({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'apiVault', 'type': 'String' },\n 'action': { 'value': 'edit', 'type': 'String' },\n 'id': { 'value': payload.id, 'type': 'Integer' },\n 'name': { 'value': payload.name, 'type': 'String' },\n 'authType': { 'value': payload.authType, 'type': 'String' },\n 'basicUser': { 'value': payload.basicUser, 'type': 'String' },\n 'basicPass': { 'value': payload.basicPass, 'type': 'String' },\n 'apiKey': { 'value': payload.apiKey, 'type': 'String' },\n 'apiValue': { 'value': payload.apiValue, 'type': 'String' },\n 'grantType': { 'value': payload.grantType, 'type': 'String' },\n 'clientId': { 'value': payload.clientId, 'type': 'String' },\n 'clientSecret': { 'value': payload.clientSecret, 'type': 'String' },\n 'endpoint': { 'value': payload.endpoint, 'type': 'String' },\n 'headers': { 'value': payload.headers, 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.status == 200) {\n commit('API_UPDATED', true);\n }else {\n commit('API_UPDATED', false);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteApi({commit}, apiId) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'apiVault', 'type': 'String' },\n 'action': { 'value': 'delete', 'type': 'String' },\n 'id': { 'value': apiId, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(result.status == 200) {\n commit('API_DELETED', true);\n }else {\n commit('API_DELETED', false);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateOpLog({commit}, payload) {\n let logData = {\n 'variables': {\n 'requestType': { 'value': 'opLog', 'type': 'String' },\n 'action': { 'value': 'update', 'type': 'String' },\n 'category': { 'value': payload.category, 'type': 'String' },\n 'userId': { 'value': payload.userId, 'type': 'String' },\n 'caseId': { 'value': payload.caseId, 'type': 'Integer' },\n 'processName': { 'value': payload.processName, 'type': 'String' },\n 'taskName': { 'value': payload.taskName, 'type': 'String' },\n 'operation': { 'value': payload.operation, 'type': 'String' },\n 'msg': { 'value': payload.msg, 'type': 'String' },\n 'dateTime': { 'value': payload.dateTime, 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', logData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('OP_LOG_UPDATED', 'success');\n }).catch(error => {\n let msg = 'Failed to write to Operation Log. ' + error;\n commit('OP_LOG_ERROR_MSG', msg);\n });\n },\n updateExternalOpLog({commit, state}, payload) {\n if(!state.enablePentestMode) {\n let logData = {\n 'variables': {\n 'requestType': { 'value': 'opLog', 'type': 'String' },\n 'action': { 'value': 'update', 'type': 'String' },\n 'category': { 'value': payload.category, 'type': 'String' },\n 'userId': { 'value': payload.userId, 'type': 'String' },\n 'caseId': { 'value': payload.caseId, 'type': 'Integer' },\n 'processName': { 'value': payload.processName, 'type': 'String' },\n 'taskName': { 'value': payload.taskName, 'type': 'String' },\n 'operation': { 'value': payload.operation, 'type': 'String' },\n 'msg': { 'value': payload.msg, 'type': 'String' },\n 'dateTime': { 'value': payload.dateTime, 'type': 'String' }\n }\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', logData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => {\n commit('OP_LOG_UPDATED', 'success');\n }).catch(error => {\n let msg = 'Failed to write to Operation Log. ' + error;\n commit('OP_LOG_ERROR_MSG', msg);\n });\n }\n },\n getOpLog({commit}, payload) {\n let logData = {\n 'variables': {\n 'requestType': { 'value': 'opLog', 'type': 'String' },\n 'action': { 'value': 'get', 'type': 'String' },\n 'dateFrom': { 'value': payload.dateFrom, 'type': 'String' },\n 'dateTo': { 'value': payload.dateTo, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', logData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(typeof result.data.variables !== 'undefined') {\n commit('OP_LOG', JSON.parse(result.data.variables.opLog.value));\n }else {\n commit('OP_LOG', []);\n }\n }).catch(error => {\n let msg = 'Failed to get Operation Log. ' + error;\n commit('OP_LOG_ERROR_MSG', msg);\n });\n },\n getErrorLog({commit}, action) {\n let logData = {\n 'variables': {\n 'requestType': { 'value': 'errorLog', 'type': 'String' },\n 'action': { 'value': action, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/databaseController/start', logData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(typeof result.data.variables.errorLog !== 'undefined') {\n commit('ERROR_LOG', JSON.parse(result.data.variables.errorLog.value));\n }else {\n commit('ERROR_LOG', []);\n }\n }).catch(error => {\n let msg = 'Failed to get Error Log. ' + error;\n commit('ERROR_LOG_ERROR_MSG', msg);\n });\n },\n sendSupportRequest({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'send', 'type': 'String' },\n 'from': { 'value': payload.from, 'type': 'String' },\n 'to': { 'value': payload.to, 'type': 'String' },\n 'body': { 'value': payload.body, 'type': 'String' }\n }\n };\n\n if(payload.fileData) {\n data.variables['fileData'] = { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.fileName, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } };\n data.variables['fileName'] = { 'value': payload.fileName, 'type': 'String' };\n data.variables['withAttachment'] = { 'value': true, 'type': 'Boolean' };\n }else {\n data.variables['withAttachment'] = { 'value': false, 'type': 'Boolean' };\n }\n\n return axios.post(baseURL + '/process-definition/key/supportController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('SUPPORT_REQUEST', true);\n }).catch( () => {\n commit('SUPPORT_REQUEST', false);\n });\n },\n supportSettings({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'settings', 'type': 'String' },\n 'action': { 'value': payload.action, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n if(payload.action == 'set') {\n data.variables['supportEmail'] = { 'value': payload.supportEmail, 'type': 'String' };\n }\n\n return axios.post(baseURL + '/process-definition/key/supportController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(payload.action == 'get') {\n commit('SUPPORT_EMAIL', result.data.variables.supportEmail.value);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n createLookupKey({commit}, payload) {\n let data = {\n 'variables': {\n 'keyLookup': { 'value': true, 'type': 'Boolean' },\n 'createUser': { 'value': false, 'type': 'Boolean' },\n 'updateUserCreds': { 'value': false, 'type': 'Boolean' },\n 'action': { 'value': 'set', 'type': 'String' },\n 'userId': { 'value': payload, 'type': 'String' },\n 'baseUrl': { 'value': window.location.href, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/userController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let success = result.data.variables.success.value;\n\n commit('RESET_KEY_CREATED', success);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getLookupKey({commit}, payload) {\n let data = {\n 'variables': {\n 'keyLookup': { 'value': true, 'type': 'Boolean' },\n 'createUser': { 'value': false, 'type': 'Boolean' },\n 'updateUserCreds': { 'value': false, 'type': 'Boolean' },\n 'action': { 'value': 'get', 'type': 'String' },\n 'key': { 'value': payload, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/userController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let uid = result.data.variables.uid.value;\n\n commit('RESET_UID', uid);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n removeLookupKey({commit}, payload) {\n let data = {\n 'variables': {\n 'keyLookup': { 'value': true, 'type': 'Boolean' },\n 'createUser': { 'value': false, 'type': 'Boolean' },\n 'updateUserCreds': { 'value': false, 'type': 'Boolean' },\n 'action': { 'value': 'remove', 'type': 'String' },\n 'key': { 'value': payload, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/userController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let success = result.data.variables.success.value;\n\n commit('RESET_KEY_REMOVED', success);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n};\n\nconst mutations = {\n ALL_TENANTS(state, payload) {\n state.allTenants = payload;\n },\n STORAGE_DETAILS(state, payload) {\n state.storageDetails = payload;\n },\n SAVED_STORAGE_DETAILS(state, payload) {\n state.savedStorageDetails = payload;\n },\n SERVER_DETAILS(state, payload) {\n state.serverDetails = payload;\n },\n SAVED_SERVER_DETAILS(state, payload) {\n state.savedServerDetails = payload;\n },\n SSO_DETAILS(state, payload) {\n state.ssoDetails = payload;\n },\n SAVED_SSO_DETAILS(state, payload) {\n state.savedSsoDetails = payload;\n },\n SAML_METADATA(state, payload) {\n state.samlMetadata = payload;\n },\n LDAP_USER_DATA(state, payload) {\n state.availableLdapUsers = payload;\n },\n LDAP_GROUP_DATA(state, payload) {\n state.availableLdapGroups = payload;\n },\n LDAP_TREE_DATA(state, payload) {\n state.availableLdapTree = payload;\n },\n LDAP_STORE_STATUS(state, payload) {\n state.ldapStoreStatus = payload;\n },\n LDAP_GET_STATUS(state, payload) {\n state.ldapGetStatus = payload;\n },\n LDAP_SELECT_STATUS(state, payload) {\n state.ldapSelectStatus = payload;\n },\n LDAP_SYNC_USER_DATA(state, payload) {\n state.ldapSyncUserData = payload;\n },\n LDAP_SYNC_GROUP_DATA(state, payload) {\n state.ldapSyncGroupData = payload;\n },\n LDAP_SELECTED_DATA(state, payload) {\n state.ldapSelectedData = payload;\n },\n LDAP_GROUP_USER_ADDED(state, payload) {\n state.ldapGroupUserAdded = payload;\n },\n LDAP_USER_ADDED(state, payload) {\n state.ldapUserAdded = payload;\n },\n LDAP_GROUP_USERS_ADDED(state, payload) {\n state.ldapGroupUsersAdded = payload;\n },\n SAVED_TEMPLATE(state, payload) {\n state.savedTemplate = payload;\n },\n UPDATE_TEMPLATE_ID(state, payload) {\n state.templateId = payload;\n },\n UPDATE_TEMPLATE_NAME(state, payload) {\n state.templateName = payload;\n },\n UPDATE_TEMPLATE_KEY(state, payload) {\n state.templateKey = payload;\n },\n UPDATE_TEMPLATE_TYPE(state, payload) {\n state.templateType = payload;\n },\n UPDATE_TEMPLATE_ACTION(state, payload) {\n state.templateAction = payload;\n },\n UPDATE_LAST_TAB(state, payload) {\n state.lastTab = payload;\n },\n TEMPLATE_DATA(state, payload) {\n state.templateData = payload;\n },\n DOC_TEMPLATES(state, payload) {\n state.allDocTemplates = payload;\n },\n EMAIL_TEMPLATES(state, payload) {\n state.allEmailTemplates = payload;\n },\n DELETED_TEMPLATE(state, payload) {\n state.deletedTemplate = payload;\n },\n EXT_DB_CONNECTIONS(state, payload) {\n state.allExtDbs = payload;\n },\n DB_CONN_ADDED(state, payload) {\n state.dbConnAdded = payload;\n },\n DB_CONN_EDITED(state, payload) {\n state.dbConnEdited = payload;\n },\n DB_CONN_DELETED(state, payload) {\n state.dbConnDeleted = payload;\n },\n CHECK_ENGINE(state, payload) {\n state.checkEngine = payload;\n },\n HQ_CONNECTIONS(state, payload) {\n state.allHqConns = payload;\n },\n TENANT_INFO(state, payload) {\n state.tenantInfo = payload;\n },\n HQ_CONN_ADDED(state, payload) {\n state.hqConnAdded = payload;\n },\n HQ_CONN_EDITED(state, payload) {\n state.hqConnEdited = payload;\n },\n HQ_CONN_DELETED(state, payload) {\n state.hqConnDeleted = payload;\n },\n TENANTS_ADDED(state, payload) {\n state.tenantsAdded = payload;\n },\n REMOTE_TENANTS(state, payload) {\n state.remoteTenants = payload;\n },\n ALL_APIS(state, payload) {\n state.allApis = payload;\n },\n API_ADDED(state, payload) {\n state.apiAdded = payload;\n },\n API_UPDATED(state, payload) {\n state.apiUpdated = payload;\n },\n API_DELETED(state, payload) {\n state.apiDeleted = payload;\n },\n OP_LOG(state, payload) {\n state.operationLog = payload;\n },\n OP_LOG_UPDATED(state, payload) {\n state.operationLogUpdated = payload;\n },\n OP_LOG_ERROR_MSG(state, payload) {\n state.operationLogError = payload;\n },\n ERROR_LOG(state, payload) {\n state.errorLog = payload;\n },\n ERROR_LOG_ERROR_MSG(state, payload) {\n state.errorLogError = payload;\n },\n PROMOTE_TEMPLATE_DATA(state, payload) {\n state.promoteTemplateData = payload;\n },\n PROMOTE_TEMPLATE_RES(state, payload) {\n state.promoteTemplateRes = payload;\n },\n LICENSE_START_DATE(state, payload) {\n state.licenseStartDate = payload;\n },\n LICENSE_EXPIRY_DATE(state, payload) {\n state.licenseExpiryDate = payload;\n },\n LICENSE_KEY_UPDATED(state, payload) {\n state.licenseKeyUpdated = payload;\n },\n ENABLE_PROCESS_UNDEPLOY(state, payload) {\n state.enableProcessUndeploy = payload;\n },\n ENABLE_PROCESS_DELETION(state, payload) {\n state.enableProcessDeletion = payload;\n },\n ENABLE_PENTEST_MODE(state, payload) {\n state.enablePentestMode = payload;\n },\n SUPPORT_REQUEST(state, payload) {\n state.supportRequest = payload;\n },\n SUPPORT_EMAIL(state, payload) {\n state.supportEmail = payload;\n },\n RESET_KEY_CREATED(state, payload) {\n state.resetKeyCreated = payload;\n },\n RESET_KEY_REMOVED(state, payload) {\n state.resetKeyRemoved = payload;\n },\n RESET_UID(state, payload) {\n state.resetUid = payload;\n },\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar collectionAdd = require('diagram-js/lib/util/Collections').add,\n getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar CategoryHelper = {};\n\nmodule.exports = CategoryHelper;\n\n/**\n * Creates a new bpmn:CategoryValue inside a new bpmn:Category\n *\n * @param {ModdleElement} definitions\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement} categoryValue.\n */\nCategoryHelper.createCategoryValue = function(definitions, bpmnFactory) {\n var categoryValue = bpmnFactory.create('bpmn:CategoryValue'),\n category = bpmnFactory.create('bpmn:Category', {\n categoryValue: [ categoryValue ]\n });\n\n // add to correct place\n collectionAdd(definitions.get('rootElements'), category);\n getBusinessObject(category).$parent = definitions;\n getBusinessObject(categoryValue).$parent = category;\n\n return categoryValue;\n\n};","'use strict';\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\n/**\n * Get the timer definition type for a given timer event definition.\n *\n * @param {ModdleElement} timer\n *\n * @return {string|undefined} the timer definition type\n */\nfunction getTimerDefinitionType(timer) {\n\n if (!timer) {\n return;\n }\n\n var timeDate = timer.get('timeDate');\n if (typeof timeDate !== 'undefined') {\n return 'timeDate';\n }\n\n var timeCycle = timer.get('timeCycle');\n if (typeof timeCycle !== 'undefined') {\n return 'timeCycle';\n }\n\n var timeDuration = timer.get('timeDuration');\n if (typeof timeDuration !== 'undefined') {\n return 'timeDuration';\n }\n}\n\n/**\n * Get the actual timer event definition based on option, whether it's a getter\n * to fetch the timer event definition or the exact event definition itself\n *\n * @param {ModdleElement|Function} timerOrFunction\n * @param {Shape} element\n * @param {HTMLElement} node\n *\n * @return ModdleElement\n */\nfunction getTimerDefinition(timerOrFunction, element, node) {\n if (typeof timerOrFunction === 'function') {\n return timerOrFunction(element, node);\n }\n\n return timerOrFunction;\n}\n\n/**\n * Creates 'bpmn:FormalExpression' element.\n *\n * @param {ModdleElement} parent\n * @param {string} body\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement} a formal expression\n */\nfunction createFormalExpression(parent, body, bpmnFactory) {\n body = body || undefined;\n return elementHelper.createElement('bpmn:FormalExpression', { body: body }, parent, bpmnFactory);\n}\n\nfunction TimerEventDefinition(group, element, bpmnFactory, timerEventDefinition, translate, options) {\n\n var selectOptions = [\n { value: 'timeDate', name: translate('Date') },\n { value: 'timeDuration', name: translate('Duration') },\n { value: 'timeCycle', name: translate('Cycle') }\n ];\n\n var prefix = options && options.idPrefix,\n createTimerEventDefinition = options && options.createTimerEventDefinition;\n\n\n group.entries.push(entryFactory.selectBox(translate, {\n id: prefix + 'timer-event-definition-type',\n label: translate('Timer Definition Type'),\n selectOptions: selectOptions,\n emptyParameter: true,\n modelProperty: 'timerDefinitionType',\n\n get: function(element, node) {\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node);\n\n return {\n timerDefinitionType: getTimerDefinitionType(timerDefinition) || ''\n };\n },\n\n set: function(element, values, node) {\n var props = {\n timeDuration: undefined,\n timeDate: undefined,\n timeCycle: undefined\n };\n\n\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node),\n newType = values.timerDefinitionType;\n\n if (!timerDefinition && typeof createTimerEventDefinition === 'function') {\n timerDefinition = createTimerEventDefinition(element, node);\n }\n\n if (values.timerDefinitionType) {\n var oldType = getTimerDefinitionType(timerDefinition);\n\n var value;\n if (oldType) {\n var definition = timerDefinition.get(oldType);\n value = definition.get('body');\n }\n\n props[newType] = createFormalExpression(timerDefinition, value, bpmnFactory);\n }\n\n return cmdHelper.updateBusinessObject(element, timerDefinition, props);\n },\n\n hidden: function(element, node) {\n return getTimerDefinition(timerEventDefinition, element, node) === undefined;\n }\n\n }));\n\n\n group.entries.push(entryFactory.textField(translate, {\n id: prefix + 'timer-event-definition',\n label: translate('Timer Definition'),\n modelProperty: 'timerDefinition',\n\n get: function(element, node) {\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node),\n type = getTimerDefinitionType(timerDefinition),\n definition = type && timerDefinition.get(type),\n value = definition && definition.get('body');\n\n return {\n timerDefinition: value\n };\n },\n\n set: function(element, values, node) {\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node),\n type = getTimerDefinitionType(timerDefinition),\n definition = type && timerDefinition.get(type);\n\n if (definition) {\n return cmdHelper.updateBusinessObject(element, definition, {\n body: values.timerDefinition || undefined\n });\n }\n },\n\n validate: function(element, node) {\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node),\n type = getTimerDefinitionType(timerDefinition),\n definition = type && timerDefinition.get(type);\n\n if (definition) {\n var value = definition.get('body');\n if (!value) {\n return {\n timerDefinition: translate('Must provide a value')\n };\n }\n }\n },\n\n hidden: function(element, node) {\n var timerDefinition = getTimerDefinition(timerEventDefinition, element, node);\n\n return !getTimerDefinitionType(timerDefinition);\n }\n\n }));\n\n}\n\nmodule.exports = TimerEventDefinition;\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is;\n\nvar find = require('min-dash').find;\n\nvar entryFactory = require('../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../helper/CmdHelper'),\n ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper'),\n scriptImplementation = require('./implementation/Script'),\n timerImplementation = require('../../bpmn/parts/implementation/TimerEventDefinition');\n\nmodule.exports = function(group, element, bpmnFactory, options, translate) {\n\n var LISTENER_TYPE_LABEL = {\n class: translate('Java Class'),\n expression: translate('Expression'),\n delegateExpression: translate('Delegate Expression'),\n script: translate('Script')\n };\n\n options = options || {};\n\n var getSelectedListener = options.getSelectedListener;\n\n var classProp = 'class',\n expressionProp = 'expression',\n delegateExpressionProp = 'delegateExpression',\n scriptProp = 'script';\n\n var executionListenerEventTypeOptions = ImplementationTypeHelper.isSequenceFlow(element) ? [\n { name: translate('take'), value: 'take' }\n ] : [\n { name: translate('start'), value: 'start' },\n { name: translate('end'), value: 'end' }\n ];\n\n var taskListenerEventTypeOptions = [\n { name: translate('create'), value: 'create' },\n { name: translate('assignment'), value: 'assignment' },\n { name: translate('complete'), value: 'complete' },\n { name: translate('delete'), value: 'delete' },\n { name: translate('update'), value: 'update' },\n { name: translate('timeout'), value: 'timeout' }\n ];\n\n var isSelected = function(element, node) {\n return getSelectedListener(element, node);\n };\n\n\n // eventType ////////////////\n group.entries.push(entryFactory.selectBox(translate, {\n id: 'listener-event-type',\n label: translate('Event Type'),\n modelProperty: 'eventType',\n emptyParameter: false,\n\n get: function(element, node) {\n\n var listener = getSelectedListener(element, node);\n\n var eventType = listener && listener.get('event');\n\n return {\n eventType: eventType\n };\n },\n\n set: function(element, values, node) {\n var eventType = values.eventType,\n listener = getSelectedListener(element, node),\n eventDefinitions = listener && listener.eventDefinitions;\n\n // ensure only timeout events can have timer event definitions\n if (eventDefinitions && eventType !== 'timeout') {\n eventDefinitions = [];\n }\n\n return cmdHelper.updateBusinessObject(element, listener,\n {\n event: eventType,\n eventDefinitions: eventDefinitions\n }\n );\n },\n\n selectOptions: function(element, node) {\n var eventTypeOptions;\n\n var selectedListener = getSelectedListener(element, node);\n if (ImplementationTypeHelper.isTaskListener(selectedListener)) {\n eventTypeOptions = taskListenerEventTypeOptions;\n } else if (ImplementationTypeHelper.isExecutionListener(selectedListener)) {\n eventTypeOptions = executionListenerEventTypeOptions;\n }\n\n return eventTypeOptions;\n\n },\n\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n\n }));\n\n\n // listenerId ///////////////\n group.entries.push(entryFactory.textField(translate, {\n id: 'listener-id',\n label: translate('Listener Id'),\n modelProperty: 'listenerId',\n\n get: function(element, node) {\n var value = {},\n listener = getSelectedListener(element, node);\n\n value.listenerId = (listener && listener.get('id')) || undefined;\n\n return value;\n },\n\n set: function(element, values, node) {\n var update = {},\n listener = getSelectedListener(element, node);\n\n update['id'] = values.listenerId || '';\n\n return cmdHelper.updateBusinessObject(element, listener, update);\n },\n\n hidden: function(element, node) {\n var listener = getSelectedListener(element, node);\n\n return !ImplementationTypeHelper.isTaskListener(listener);\n },\n\n validate: function(element, values, node) {\n var value = values.listenerId,\n listener = getSelectedListener(element, node),\n validate = {};\n\n if (!value && isTimeoutTaskListener(listener)) {\n validate.listenerId = translate('Must provide a value for timeout task listener');\n }\n\n return validate;\n }\n\n }));\n\n\n // listenerType ///////////////\n group.entries.push(entryFactory.selectBox(translate, {\n id: 'listener-type',\n label: translate('Listener Type'),\n selectOptions: [\n { value: classProp, name: translate('Java Class') },\n { value: expressionProp, name: translate('Expression') },\n { value: delegateExpressionProp, name: translate('Delegate Expression') },\n { value: scriptProp, name: translate('Script') }\n ],\n modelProperty: 'listenerType',\n emptyParameter: false,\n\n get: function(element, node) {\n var listener = getSelectedListener(element, node);\n return {\n listenerType: ImplementationTypeHelper.getImplementationType(listener)\n };\n },\n\n set: function(element, values, node) {\n var listener = getSelectedListener(element, node),\n listenerType = values.listenerType || undefined,\n update = {};\n\n update[classProp] = listenerType === classProp ? '' : undefined;\n update[expressionProp] = listenerType === expressionProp ? '' : undefined;\n update[delegateExpressionProp] = listenerType === delegateExpressionProp ? '' : undefined;\n update[scriptProp] = listenerType === scriptProp ? bpmnFactory.create('harlequin:Script') : undefined;\n\n return cmdHelper.updateBusinessObject(element, listener, update);\n },\n\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n\n }));\n\n\n // listenerValue //////////////\n group.entries.push(entryFactory.textField(translate, {\n id: 'listener-value',\n dataValueLabel: 'listenerValueLabel',\n modelProperty: 'listenerValue',\n\n get: function(element, node) {\n var value = {},\n listener = getSelectedListener(element, node),\n listenerType = ImplementationTypeHelper.getImplementationType(listener);\n\n value.listenerValueLabel = LISTENER_TYPE_LABEL[listenerType] || '';\n value.listenerValue = (listener && listener.get(listenerType)) || undefined;\n\n return value;\n },\n\n set: function(element, values, node) {\n var update = {},\n listener = getSelectedListener(element, node),\n listenerType = ImplementationTypeHelper.getImplementationType(listener);\n\n update[listenerType] = values.listenerValue || '';\n\n return cmdHelper.updateBusinessObject(element, listener, update);\n },\n\n hidden: function(element, node) {\n var listener = getSelectedListener(element, node);\n return !listener || listener.script;\n },\n\n validate: function(element, values) {\n var value = values.listenerValue,\n validate = {};\n\n if (!value) {\n validate.listenerValue = translate('Must provide a value');\n }\n\n return validate;\n }\n\n }));\n\n\n // script ////////////////////\n var script = scriptImplementation('scriptFormat', 'value', true, translate);\n\n group.entries.push({\n id: 'listener-script-value',\n html: '
' +\n script.template +\n '
',\n\n get: function(element, node) {\n var listener = getSelectedListener(element, node);\n return listener && listener.script ? script.get(element, listener.script) : {};\n },\n\n set: function(element, values, node) {\n var listener = getSelectedListener(element, node);\n var update = script.set(element, values, listener);\n return cmdHelper.updateBusinessObject(element, listener.script, update);\n },\n\n validate: function(element, values, node) {\n var listener = getSelectedListener(element, node);\n return listener && listener.script ? script.validate(element, values) : {};\n },\n\n isScript: function(element, node) {\n var listener = getSelectedListener(element, node);\n return listener && listener.script;\n },\n\n script: script\n\n });\n\n\n // timerEventDefinition //////\n var timerEventDefinitionHandler = function(element, node) {\n var listener = getSelectedListener(element, node);\n\n if (!listener || !isTimeoutTaskListener(listener)) {\n return;\n }\n\n var timerEventDefinition = getTimerEventDefinition(listener);\n\n if (!timerEventDefinition) {\n return false;\n }\n\n return timerEventDefinition;\n };\n\n function createTimerEventDefinition(element, node) {\n\n var listener = getSelectedListener(element, node);\n\n if (!listener || !isTimeoutTaskListener(listener)) {\n return;\n }\n\n var eventDefinitions = listener.get('eventDefinitions') || [],\n timerEventDefinition = bpmnFactory.create('bpmn:TimerEventDefinition');\n\n eventDefinitions.push(timerEventDefinition);\n\n listener.eventDefinitions = eventDefinitions;\n\n return timerEventDefinition;\n }\n\n var timerOptions = {\n idPrefix: 'listener-',\n createTimerEventDefinition: createTimerEventDefinition\n };\n\n timerImplementation(group, element, bpmnFactory, timerEventDefinitionHandler, translate, timerOptions);\n\n};\n\n\n// helpers //////////////\n\nfunction isTimeoutTaskListener(listener) {\n var eventType = listener && listener.event;\n return eventType === 'timeout';\n}\n\nfunction getTimerEventDefinition(bo) {\n var eventDefinitions = bo.eventDefinitions || [];\n\n return find(eventDefinitions, function(event) {\n return is(event, 'bpmn:TimerEventDefinition');\n });\n\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewreport.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../../process-builder/lib/base/BaseServices').is;\n\nvar factory = require('../../../../factory/EntryFactory');\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils');\n\nvar assign = require('lodash/assign'),\n forEach = require('lodash/forEach'),\n find = require('lodash/find');\n\nfunction generatePropertyId() {\n return utils.nextId('Property_');\n}\n\n/**\n * Get all harlequin:property objects for a specific business object\n *\n * @param {ModdleElement} parent\n *\n * @return {Array} a list of harlequin:property objects\n */\nfunction getPropertyValues(parent) {\n var properties = parent && getPropertiesElement(parent);\n if (properties && properties.values) {\n return properties.values;\n }\n return [];\n}\n\n/**\n * Get all harlequin:Properties object for a specific business object\n *\n * @param {ModdleElement} parent\n *\n * @return {ModdleElement} a harlequin:Properties object\n */\nfunction getPropertiesElement(element) {\n if (!isExtensionElements(element)) {\n return element.properties;\n } else {\n return getPropertiesElementInsideExtensionElements(element);\n }\n}\n\n/**\n * Get first harlequin:Properties object for a specific bpmn:ExtensionElements\n * business object.\n *\n * @param {ModdleElement} extensionElements\n *\n * @return {ModdleElement} a harlequin:Properties object\n */\nfunction getPropertiesElementInsideExtensionElements(extensionElements) {\n return find(extensionElements.values, function(elem) {\n return is(elem, 'harlequin:Properties');\n });\n}\n\n/**\n * Returns true, if the given business object is a bpmn:ExtensionElements.\n *\n * @param {ModdleElement} element\n *\n * @return {boolean} a boolean value\n */\nfunction isExtensionElements(element) {\n return is(element, 'bpmn:ExtensionElements');\n}\n\n/**\n * Create a harlequin:property entry using tableEntryFactory\n *\n * @param {djs.model.Base} element\n * @param {BpmnFactory} bpmnFactory\n * @param {Object} options\n * @param {string} options.id\n * @param {Array} options.modelProperties\n * @param {Array} options.labels\n * @param {function} options.getParent Gets the parent business object\n * @param {function} options.show Indicate when the entry will be shown, should return boolean\n */\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getParent = options.getParent;\n\n var modelProperties = options.modelProperties,\n createParent = options.createParent;\n\n var bo = getBusinessObject(element);\n if (is(element, 'bpmn:Participant')) {\n bo = bo.get('processRef');\n }\n\n // build properties group only when the participant have a processRef\n if (!bo) {\n return;\n }\n\n assign(options, {\n addLabel: translate('Add Property'),\n getElements: function(element, node) {\n var parent = getParent(element, node, bo);\n return getPropertyValues(parent);\n },\n addElement: function(element, node) {\n var commands = [],\n parent = getParent(element, node, bo);\n\n if (!parent && typeof createParent === 'function') {\n var result = createParent(element, bo);\n parent = result.parent;\n commands.push(result.cmd);\n }\n\n var properties = getPropertiesElement(parent);\n if (!properties) {\n properties = elementHelper.createElement('harlequin:Properties', {}, parent, bpmnFactory);\n\n if (!isExtensionElements(parent)) {\n commands.push(cmdHelper.updateBusinessObject(element, parent, { 'properties': properties }));\n } else {\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n parent,\n 'values',\n 'extensionElements',\n [ properties ],\n []\n ));\n }\n }\n\n var propertyProps = {};\n forEach(modelProperties, function(prop) {\n propertyProps[prop] = undefined;\n });\n\n // create id if necessary\n if (modelProperties.indexOf('id') >= 0) {\n propertyProps.id = generatePropertyId();\n }\n\n var property = elementHelper.createElement('harlequin:Property', propertyProps, properties, bpmnFactory);\n commands.push(cmdHelper.addElementsTolist(element, properties, 'values', [ property ]));\n\n return commands;\n },\n updateElement: function(element, value, node, idx) {\n var parent = getParent(element, node, bo),\n property = getPropertyValues(parent)[idx];\n\n forEach(modelProperties, function(prop) {\n value[prop] = value[prop] || undefined;\n });\n\n return cmdHelper.updateBusinessObject(element, property, value);\n },\n validate: function(element, value, node, idx) {\n\n // validate id if necessary\n if (modelProperties.indexOf('id') >= 0) {\n\n var parent = getParent(element, node, bo),\n properties = getPropertyValues(parent),\n property = properties[idx];\n\n if (property) {\n\n // check if id is valid\n var validationError = utils.isIdValid(property, value.id, translate);\n\n if (validationError) {\n return { id: validationError };\n }\n }\n }\n },\n removeElement: function(element, node, idx) {\n var commands = [],\n parent = getParent(element, node, bo),\n properties = getPropertiesElement(parent),\n propertyValues = getPropertyValues(parent),\n currentProperty = propertyValues[idx];\n\n commands.push(cmdHelper.removeElementsFromList(element, properties, 'values', null, [ currentProperty ]));\n\n if (propertyValues.length === 1) {\n\n // remove harlequin:properties if the last existing property has been removed\n if (!isExtensionElements(parent)) {\n commands.push(cmdHelper.updateBusinessObject(element, parent, { properties: undefined }));\n } else {\n forEach(parent.values, function(value) {\n if (is(value, 'harlequin:Properties')) {\n commands.push(extensionElementsHelper.removeEntry(bo, element, value));\n }\n });\n }\n }\n\n return commands;\n }\n });\n\n return factory.table(translate, options);\n};\n","'use strict';\n\nvar assign = require('min-dash').assign,\n forEach = require('min-dash').forEach,\n keys = require('min-dash').keys,\n isObject = require('min-dash').isObject;\n\n/**\n * Converts legacy scopes descriptor to newer supported array structure.\n *\n * For example, it transforms\n *\n * scopes: {\n * 'harlequin:Connector':\n * { properties: []\n * }\n * }\n *\n * to\n *\n * scopes: [\n * {\n * type: 'harlequin:Connector',\n * properties: []\n * }\n * ]\n *\n * @param {ScopesDescriptor} scopes\n *\n * @returns {Array}\n */\nmodule.exports = function handleLegacyScopes(scopes) {\n var scopesAsArray = [];\n\n if (!isObject(scopes)) {\n return scopes;\n }\n\n forEach(keys(scopes), function(scopeName) {\n scopesAsArray.push(assign({\n type: scopeName\n }, scopes[scopeName]));\n });\n\n return scopesAsArray;\n};","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./external.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar cmdHelper = require('./CmdHelper'),\n elementHelper = require('./ElementHelper');\n\nvar is = require('../../../process-builder/lib/base/BaseServices').is;\n\nvar ExtensionElementsHelper = {};\n\nExtensionElementsHelper.getExtensionElements = function(bo, type) {\n var elements = [];\n var extensionElements = bo.get('extensionElements');\n\n if (typeof extensionElements !== 'undefined') {\n var extensionValues = extensionElements.get('values');\n if (typeof extensionValues !== 'undefined') {\n elements = extensionValues.filter(function(value) {\n return is(value, type);\n });\n }\n }\n\n return elements;\n};\n\nExtensionElementsHelper.addEntry = function(bo, element, entry, bpmnFactory) {\n var extensionElements = bo.get('extensionElements');\n\n // if there is no extensionElements list, create one\n if (!extensionElements) {\n\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [entry] }, bo, bpmnFactory);\n return { extensionElements : extensionElements };\n } else {\n\n // add new failedJobRetryExtensionElement to existing extensionElements list\n return cmdHelper.addElementsTolist(element, extensionElements, 'values', [entry]);\n }\n};\n\nExtensionElementsHelper.removeEntry = function(bo, element, entry) {\n var extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n\n // return an empty command when there is no extensionElements list\n return {};\n }\n\n return cmdHelper.removeElementsFromList(element, extensionElements, 'values', 'extensionElements', [entry]);\n};\n\nmodule.exports = ExtensionElementsHelper;\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar forEach = require('lodash/forEach');\n\nvar HANDLERS = {\n 'properties-panel.update-businessobject': require('./UpdateBusinessObjectHandler'),\n 'properties-panel.create-and-reference': require('./CreateAndReferenceHandler'),\n 'properties-panel.create-businessobject-list': require('./CreateBusinessObjectListHandler'),\n 'properties-panel.update-businessobject-list': require('./UpdateBusinessObjectListHandler'),\n 'properties-panel.multi-command-executor': require('./MultiCommandHandler')\n};\n\n\nfunction CommandInitializer(eventBus, commandStack) {\n\n eventBus.on('diagram.init', function() {\n forEach(HANDLERS, function(handler, id) {\n commandStack.registerHandler(id, handler);\n });\n });\n}\n\nCommandInitializer.$inject = [ 'eventBus', 'commandStack' ];\n\nmodule.exports = {\n __init__: [ CommandInitializer ]\n};","'use strict';\n\nvar flatten = require('lodash/flatten'),\n find = require('lodash/find'),\n isString = require('lodash/isString'),\n isUndefined = require('lodash/isUndefined'),\n values = require('lodash/values');\n\nvar getTemplateId = require('./Helper').getTemplateId,\n getTemplateVersion = require('./Helper').getTemplateVersion;\n\nvar isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\n\n/**\n * Registry for element templates.\n */\nfunction ElementTemplates() {\n this._templates = {};\n}\n\n/**\n * Get template with given ID and optional version or for element.\n *\n * @param {String|djs.model.Base} id\n * @param {number} [version]\n *\n * @return {ElementTemplate}\n */\nElementTemplates.prototype.get = function(id, version) {\n var templates = this._templates,\n element;\n\n if (isUndefined(id)) {\n return null;\n } else if (isString(id)) {\n\n if (isUndefined(version)) {\n version = '_';\n }\n\n if (templates[ id ] && templates[ id ][ version ]) {\n return templates[ id ][ version ];\n } else {\n return null;\n }\n } else {\n element = id;\n\n return this.get(getTemplateId(element), getTemplateVersion(element));\n }\n};\n\n/**\n * Get default template for given element.\n *\n * @param {djs.model.Base} element\n *\n * @return {ElementTemplate}\n */\nElementTemplates.prototype.getDefault = function(element) {\n return find(this.getAll(), function(template) {\n return isAny(element, template.appliesTo) && template.isDefault;\n }) || null;\n};\n\n/**\n * Get all templates (with given ID).\n *\n * @param {string} [id]\n *\n * @return {Array}\n */\nElementTemplates.prototype.getAll = function(id) {\n if (!isUndefined(id) && this._templates[ id ]) {\n return values(this._templates[ id ]);\n }\n\n return flatten(values(this._templates).map(values));\n};\n\n/**\n * Set templates.\n *\n * @param {Array} templates\n */\nElementTemplates.prototype.set = function(templates) {\n var self = this;\n\n this._templates = {};\n\n templates.forEach(function(template) {\n var id = template.id,\n version = isUndefined(template.version) ? '_' : template.version;\n\n if (!self._templates[ id ]) {\n self._templates[ id ] = {};\n }\n\n self._templates[ id ][ version ] = template;\n });\n};\n\nmodule.exports = ElementTemplates;","'use strict';\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is;\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar asyncCapableHelper = require('../../../../helper/AsyncCapableHelper');\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n eventDefinitionHelper = require('../../../../helper/EventDefinitionHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nfunction isAsyncBefore(bo) {\n return asyncCapableHelper.isAsyncBefore(bo);\n}\n\nfunction isAsyncAfter(bo) {\n return asyncCapableHelper.isAsyncAfter(bo);\n}\n\nfunction getFailedJobRetryTimeCycle(bo) {\n return asyncCapableHelper.getFailedJobRetryTimeCycle(bo);\n}\n\nfunction removeFailedJobRetryTimeCycle(bo, element) {\n return asyncCapableHelper.removeFailedJobRetryTimeCycle(bo, element);\n}\n\nfunction createExtensionElements(parent, bpmnFactory) {\n return elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, parent, bpmnFactory);\n}\n\nfunction createFailedJobRetryTimeCycle(parent, bpmnFactory, cycle) {\n return elementHelper.createElement('harlequin:FailedJobRetryTimeCycle', { body: cycle }, parent, bpmnFactory);\n}\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var idPrefix = options.idPrefix || '',\n labelPrefix = options.labelPrefix || '';\n\n var retryTimeCycleEntry = entryFactory.textField(translate, {\n id: idPrefix + 'retryTimeCycle',\n label: labelPrefix + translate('Retry Time Cycle'),\n modelProperty: 'cycle',\n\n get: function(element, node) {\n var retryTimeCycle = getFailedJobRetryTimeCycle(getBusinessObject(element));\n var value = retryTimeCycle && retryTimeCycle.get('body');\n return {\n cycle: value\n };\n },\n\n set: function(element, values, node) {\n var newCycle = values.cycle;\n var bo = getBusinessObject(element);\n\n if (newCycle === '' || typeof newCycle === 'undefined') {\n\n // remove retry time cycle element(s)\n return removeFailedJobRetryTimeCycle(bo, element);\n }\n\n var retryTimeCycle = getFailedJobRetryTimeCycle(bo);\n\n if (!retryTimeCycle) {\n\n // add new retry time cycle element\n var commands = [];\n\n var extensionElements = bo.get('extensionElements');\n if (!extensionElements) {\n extensionElements = createExtensionElements(bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n\n retryTimeCycle = createFailedJobRetryTimeCycle(extensionElements, bpmnFactory, newCycle);\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [ retryTimeCycle ],\n []\n ));\n\n return commands;\n }\n\n // update existing retry time cycle element\n return cmdHelper.updateBusinessObject(element, retryTimeCycle, { body: newCycle });\n },\n\n hidden: function(element) {\n var bo = getBusinessObject(element);\n\n if (bo && (isAsyncBefore(bo) || isAsyncAfter(bo))) {\n return false;\n }\n\n if (is(element, 'bpmn:Event')) {\n return !eventDefinitionHelper.getTimerEventDefinition(element);\n }\n\n return true;\n }\n\n });\n\n return [ retryTimeCycleEntry ];\n\n};\n","'use strict';\n\nvar entryFactory = require('../../../factory/EntryFactory'),\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n utils = require('../../../Utils'),\n cmdHelper = require('../../../helper/CmdHelper');\n\nmodule.exports = function(group, element, translate, options) {\n if (!options) {\n options = {};\n }\n\n // Id\n group.entries.push(entryFactory.validationAwareTextField(translate, {\n id: options.id || 'id',\n label: translate(options.label || 'Id'),\n description: options.description && translate(options.description),\n modelProperty: 'id',\n getProperty: function(element) {\n return getBusinessObject(element).id;\n },\n setProperty: function(element, properties) {\n\n element = element.labelTarget || element;\n\n return cmdHelper.updateProperties(element, properties);\n },\n validate: function(element, values) {\n var idValue = values.id;\n\n var bo = getBusinessObject(element);\n\n var idError = utils.isIdValid(bo, idValue, translate);\n\n return idError ? { id: idError } : {};\n }\n }));\n\n};\n","'use strict';\n\nvar escapeHTML = require('../Utils').escapeHTML;\nvar domQuery = require('min-dom').query;\n\n\n/**\n * @param {object} options\n * @param {string} options.id\n * @param {string} [options.title='']\n * @param {string} [options.description='']\n * @param {boolean} [options.open=false]\n * @param {Function} [options.onToggle]\n * @param {Function} [options.onRemove]\n *\n * @return {object}\n */\nfunction Collapsible(options) {\n\n var id = options.id,\n title = options.title || '',\n description = options.description || '',\n open = !!options.open || false,\n onToggle = options.onToggle || noop,\n onRemove = options.onRemove,\n cssClasses = options.cssClasses || [];\n\n\n var collapsibleEntry = {\n id: id,\n toggle: toggle,\n isOpen: isOpen,\n set: set,\n setOpen: setOpen,\n get: get\n };\n\n if (typeof onRemove === 'function') {\n collapsibleEntry.onRemove = function(entry, entryNode, actionId, event) {\n var commands = onRemove(entry, entryNode, actionId, event);\n\n if (commands) {\n scheduleCommands(commands, entryNode);\n return true;\n }\n };\n }\n\n function get(element, entryNode) {\n if (options.get) {\n return options.get(element, entryNode);\n }\n\n return {\n title: title || '',\n description: description || ''\n };\n }\n\n function set() {\n var commands = this._commands;\n\n if (commands) {\n delete this._commands;\n return commands;\n }\n }\n\n function toggle(element, entryNode, event, scope) {\n var value = !open;\n\n setOpen(value, entryNode);\n onToggle(value, entryNode);\n }\n\n /**\n * Set entry's open state.\n *\n * @param {boolean} value\n * @param {HTMLElement} entryNode\n */\n function setOpen(value, entryNode) {\n open = value;\n entryNode.classList.toggle('bpp-collapsible--collapsed', !value);\n }\n\n function isOpen() {\n return open;\n }\n\n /**\n * Schedule commands to be run with next `set` method call.\n *\n * @param {Array} commands\n * @param {HTMLElement} entryNode\n */\n function scheduleCommands(commands, entryNode) {\n collapsibleEntry._commands = commands;\n\n // @barmac: hack to make properties panel call `set`\n var input = domQuery('input[type=\"hidden\"]', entryNode);\n input.value = 1;\n }\n\n collapsibleEntry.html = '
' +\n '' +\n '' +\n '' +\n (onRemove ? '' : '') +\n '
';\n\n collapsibleEntry.cssClasses = cssClasses.concat(open ?\n [ 'bpp-collapsible' ] : [ 'bpp-collapsible', 'bpp-collapsible--collapsed' ]\n );\n\n return collapsibleEntry;\n}\n\nmodule.exports = Collapsible;\n\nfunction noop() {}\n","'use strict';\n\nvar is = require('../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject,\n cmdHelper = require('./CmdHelper');\n\n\nvar ParticipantHelper = {};\n\nmodule.exports = ParticipantHelper;\n\nParticipantHelper.modifyProcessBusinessObject = function(element, property, values) {\n if (!is(element, 'bpmn:Participant')) {\n return {};\n }\n\n var bo = getBusinessObject(element).get('processRef'),\n properties = {};\n\n properties[property] = values[property];\n\n return cmdHelper.updateBusinessObject(element, bo, properties);\n};\n\nParticipantHelper.getProcessBusinessObject = function(element, propertyName) {\n if (!is(element, 'bpmn:Participant')) {\n return {};\n }\n\n var bo = getBusinessObject(element).get('processRef'),\n properties = {};\n\n properties[propertyName] = bo.get(propertyName);\n\n return properties;\n};","\n\n\n\n\n\n","module.exports = {\n __depends__: [\n require('./handlers'),\n require('diagram-js/lib/i18n/translate').default\n ],\n __init__: [\n 'customElementsPropertiesActivator',\n 'elementTemplatesLoader',\n 'replaceBehavior'\n ],\n customElementsPropertiesActivator: [ 'type', require('./CustomElementsPropertiesActivator') ],\n elementTemplates: [ 'type', require('./ElementTemplates') ],\n elementTemplatesLoader: [ 'type', require('./ElementTemplatesLoader') ],\n replaceBehavior: [ 'type', require('./ReplaceBehavior') ],\n};\n","module.exports = require('./lib');\n","'use strict';\r\n\r\nvar entryFactory = require('../../../../factory/EntryFactory');\r\n\r\nvar cmdHelper = require('../../../../helper/CmdHelper');\r\n\r\nmodule.exports = function(element, bpmnFactory, options, translate) {\r\n\r\n var getBusinessObject = options.getBusinessObject;\r\n\r\n var isStartableInTasklistEntry = entryFactory.checkbox(translate, {\r\n id: 'isStartableInTasklist',\r\n label: translate('Startable'),\r\n modelProperty: 'isStartableInTasklist',\r\n\r\n get: function(element, node) {\r\n var bo = getBusinessObject(element);\r\n var isStartableInTasklist = bo.get('harlequin:isStartableInTasklist');\r\n\r\n return {\r\n isStartableInTasklist: isStartableInTasklist ? isStartableInTasklist : ''\r\n };\r\n },\r\n\r\n set: function(element, values) {\r\n var bo = getBusinessObject(element);\r\n return cmdHelper.updateBusinessObject(element, bo, {\r\n 'harlequin:isStartableInTasklist': !!values.isStartableInTasklist\r\n });\r\n }\r\n\r\n });\r\n\r\n return [\r\n isStartableInTasklistEntry\r\n ];\r\n};\r\n","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n inputOutputHelper = require('../../../../helper/InputOutputHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils');\n\nvar entryFieldDescription = require('../../../../factory/EntryFieldDescription');\n\nvar domQuery = require('min-dom').query;\n\nvar InputOutputParameter = require('./InputOutputParameter');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n options = options || {};\n\n var insideConnector = !!options.insideConnector,\n idPrefix = options.idPrefix || '';\n\n var result = {};\n\n var entries = result.entries = [];\n\n if (!inputOutputHelper.isInputOutputSupported(element, insideConnector)) {\n return result;\n }\n\n var parametersOptions = {\n insideConnector: insideConnector,\n idPrefix: idPrefix\n };\n\n // input parameters ///////////////////////////////////////////////////////////////\n entries.push(\n getParametersHeading(element, bpmnFactory, {\n idPrefix: idPrefix,\n insideConnector: insideConnector,\n type: 'harlequin:InputParameter',\n prop: 'inputParameters',\n prefix: 'Input'\n }));\n\n append(entries,\n getInputParameterEntries(element, bpmnFactory, parametersOptions, translate)\n );\n\n return result;\n};\n\nfunction getParametersHeading(element, bpmnFactory, options) {\n var idPrefix = options.idPrefix || '',\n prefix = options.prefix,\n type = options.type,\n prop = options.prop,\n insideConnector = options.insideConnector;\n\n var entry = {\n id: idPrefix + prefix + '-heading',\n cssClasses: [ 'bpp-input-output' ],\n html: '
' +\n '' +\n '
'\n };\n\n entry.createElement = function(_, entryNode) {\n var commands = createElement();\n\n if (commands) {\n scheduleCommands(commands, entryNode);\n return true;\n }\n };\n\n entry.set = function() {\n var commands = entry._commands;\n\n if (commands) {\n delete entry._commands;\n return commands;\n }\n };\n\n function createElement() {\n var commands = [];\n var bo = getBusinessObject(element);\n var extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n\n var inputOutput = getInputOutput(element, insideConnector);\n if (!inputOutput) {\n var parent = !insideConnector ? extensionElements : getConnector(element);\n inputOutput = createInputOutput(parent, bpmnFactory, {\n inputParameters: [],\n outputParameters: []\n });\n\n if (!insideConnector) {\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [ inputOutput ],\n []\n ));\n } else {\n commands.push(cmdHelper.updateBusinessObject(element, parent, { inputOutput: inputOutput }));\n }\n }\n\n var newElem = createParameter(type, inputOutput, bpmnFactory, { name: generateElementId(prefix) });\n commands.push(cmdHelper.addElementsTolist(element, inputOutput, prop, [], [ newElem ]));\n\n return commands;\n }\n\n /**\n * Schedule commands to be run with next `set` method call.\n *\n * @param {Array} commands\n * @param {HTMLElement} entryNode\n */\n function scheduleCommands(commands, entryNode) {\n entry._commands = commands;\n\n // @barmac: hack to make properties panel call `set`\n var input = domQuery('input[type=\"hidden\"]', entryNode);\n input.value = 1;\n }\n\n return entry;\n}\n\nfunction getInputParameterEntries(element, bpmnFactory, options, translate) {\n var idPrefix = options.idPrefix,\n insideConnector = options.insideConnector,\n inputOutput = getInputOutput(element, insideConnector),\n params = getInputParameters(element, insideConnector),\n entries;\n\n if (!params.length) {\n var description = entryFieldDescription(translate, translate('No variables defined.'));\n\n return [{\n id: idPrefix + 'input-parameter' + '-placeholder',\n cssClasses: [ 'bpp-input-output-placeholder' ],\n html: description\n }];\n }\n\n var inputParameters = params.map(function(param, index) {\n function onRemove() {\n var commands = [];\n commands.push(cmdHelper.removeElementsFromList(element, inputOutput, 'inputParameters', null, [param]));\n\n // remove inputOutput if there are no input/output parameters anymore\n if (inputOutput.get('inputParameters').length === 1 && (inputOutput.get('outputParameters') || []).length === 0) {\n\n if (!insideConnector) {\n commands.push(extensionElementsHelper.removeEntry(getBusinessObject(element), element, inputOutput));\n }\n else {\n var connector = getConnector(element);\n commands.push(cmdHelper.updateBusinessObject(element, connector, { inputOutput: undefined }));\n }\n }\n\n return commands;\n }\n\n return InputOutputParameter(param, bpmnFactory,\n {\n idPrefix: idPrefix + 'input-parameter-' + index,\n onRemove: onRemove,\n onToggle: onToggle\n }, translate);\n });\n\n /**\n * Close remaining collapsible entries within group.\n *\n * @param {boolean} value\n * @param {HTMLElement} entryNode\n */\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n inputParameters.forEach(function(inputParameter) {\n if (inputParameter.entries[0].id === currentEntryId) {\n return;\n }\n\n inputParameter.setOpen(false, entryNode.parentElement);\n });\n }\n\n entries = inputParameters.map(function(input) {\n return input.entries;\n });\n\n return flatten(entries);\n}\n\n\nfunction append(array, items) {\n Array.prototype.push.apply(array, items);\n}\n\nfunction flatten(arrays) {\n return Array.prototype.concat.apply([], arrays);\n}\n\nfunction generateElementId(prefix) {\n prefix = prefix + '_';\n return utils.nextId(prefix);\n}\n\nfunction getInputOutput(element, insideConnector) {\n return inputOutputHelper.getInputOutput(element, insideConnector);\n}\n\nfunction getConnector(element) {\n return inputOutputHelper.getConnector(element);\n}\n\nfunction getInputParameters(element, insideConnector) {\n return inputOutputHelper.getInputParameters(element, insideConnector);\n}\n\nfunction createElement(type, parent, factory, properties) {\n return elementHelper.createElement(type, properties, parent, factory);\n}\n\nfunction createInputOutput(parent, bpmnFactory, properties) {\n return createElement('harlequin:InputOutput', parent, bpmnFactory, properties);\n}\n\nfunction createParameter(type, parent, bpmnFactory, properties) {\n return createElement(type, parent, bpmnFactory, properties);\n}\n","'use strict';\n\nvar getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject,\n cmdHelper = require('../helper/CmdHelper'),\n escapeHTML = require('../Utils').escapeHTML;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\nvar domify = require('min-dom').domify;\n\nvar toggleSwitch = function(translate, options, defaultParameters) {\n var resource = defaultParameters,\n id = resource.id,\n label = options.label || id,\n canBeHidden = !!options.hidden && typeof options.hidden === 'function',\n isOn = options.isOn,\n descriptionOn = options.descriptionOn,\n descriptionOff = options.descriptionOff,\n labelOn = options.labelOn,\n labelOff = options.labelOff;\n\n resource.html = document.createDocumentFragment();\n\n resource.html.appendChild(domify('' +\n '
' +\n '' +\n '

' +\n escapeHTML(labelOn) +\n '

' +\n '

' +\n escapeHTML(labelOff) +\n '

' +\n '
'));\n\n if (descriptionOn) {\n resource.html.appendChild(entryFieldDescription(translate, descriptionOn, { show: 'isOn' }));\n }\n\n if (descriptionOff) {\n resource.html.appendChild(entryFieldDescription(translate, descriptionOff, { show: 'isOff' }));\n }\n\n resource.get = function(element) {\n var bo = getBusinessObject(element),\n res = {};\n\n res[options.modelProperty] = bo.get(options.modelProperty);\n\n return res;\n };\n\n resource.set = function(element, values) {\n var res = {};\n\n res[options.modelProperty] = !!values[options.modelProperty];\n\n return cmdHelper.updateProperties(element, res);\n };\n\n if (typeof options.set === 'function') {\n resource.set = options.set;\n }\n\n if (typeof options.get === 'function') {\n resource.get = options.get;\n }\n\n if (canBeHidden) {\n resource.shouldShow = function() {\n return !options.hidden.apply(resource, arguments);\n };\n }\n\n resource.isOn = function() {\n if (canBeHidden && !resource.shouldShow()) {\n return false;\n }\n\n return isOn.apply(resource, arguments);\n };\n\n resource.isOff = function() {\n if (canBeHidden && !resource.shouldShow()) {\n return false;\n }\n\n return !resource.isOn();\n };\n\n resource.cssClasses = ['bpp-toggle-switch'];\n\n return resource;\n};\n\nmodule.exports = toggleSwitch;\n","'use strict';\n\nvar domify = require('min-dom').domify;\n\nvar getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject,\n cmdHelper = require('../helper/CmdHelper'),\n escapeHTML = require('../Utils').escapeHTML;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\n\nvar checkbox = function(translate, options, defaultParameters) {\n var resource = defaultParameters,\n id = resource.id,\n label = options.label || id,\n canBeDisabled = !!options.disabled && typeof options.disabled === 'function',\n canBeHidden = !!options.hidden && typeof options.hidden === 'function',\n description = options.description;\n\n resource.html =\n domify('' +\n '');\n\n // add description below checkbox entry field\n if (description) {\n resource.html.appendChild(entryFieldDescription(translate, description, { show: canBeHidden && 'isHidden' }));\n }\n\n resource.get = function(element) {\n var bo = getBusinessObject(element),\n res = {};\n\n res[options.modelProperty] = bo.get(options.modelProperty);\n\n return res;\n };\n\n resource.set = function(element, values) {\n var res = {};\n\n res[options.modelProperty] = !!values[options.modelProperty];\n\n return cmdHelper.updateProperties(element, res);\n };\n\n if (typeof options.set === 'function') {\n resource.set = options.set;\n }\n\n if (typeof options.get === 'function') {\n resource.get = options.get;\n }\n\n if (canBeDisabled) {\n resource.isDisabled = function() {\n return options.disabled.apply(resource, arguments);\n };\n }\n\n if (canBeHidden) {\n resource.isHidden = function() {\n return !options.hidden.apply(resource, arguments);\n };\n }\n\n resource.cssClasses = ['bpp-checkbox'];\n\n return resource;\n};\n\nmodule.exports = checkbox;\n","'use strict';\n\nvar extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n elementHelper = require('../../../../helper/ElementHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar utils = require('../../../../Utils');\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar extensionElementsEntry = require('./ExtensionElements');\n\nvar ModelUtil = require('../../../../../../process-builder/lib/base/BaseServices'),\n getBusinessObject = ModelUtil.getBusinessObject;\n\nvar assign = require('lodash/assign');\n\n\nvar DEFAULT_PROPS = {\n 'stringValue': undefined,\n 'string': undefined,\n 'expression': undefined\n};\n\nvar HARLEQUIN_FIELD_EXTENSION_ELEMENT = 'harlequin:Field';\n\nmodule.exports = function(element, bpmnFactory, translate, options) {\n\n options = options || {};\n\n var insideListener = !!options.insideListener,\n idPrefix = options.idPrefix || '',\n getSelectedListener = options.getSelectedListener,\n businessObject = options.businessObject || getBusinessObject(element);\n\n var entries = [];\n\n var isSelected = function(element, node) {\n return getSelectedField(element, node);\n };\n\n function getSelectedField(element, node) {\n var selected = fieldEntry.getSelected(element, node.parentNode);\n\n if (selected.idx === -1) {\n return;\n }\n\n var fields = getHarlequinFields(element, node);\n\n return fields[selected.idx];\n }\n\n function getHarlequinFields(element, node) {\n if (!insideListener) {\n return (\n businessObject &&\n extensionElementsHelper.getExtensionElements(businessObject, HARLEQUIN_FIELD_EXTENSION_ELEMENT)\n );\n }\n return getHarlequinListenerFields(element, node);\n }\n\n function getHarlequinListenerFields(element, node) {\n var selectedListener = getSelectedListener(element, node);\n return selectedListener && selectedListener.fields || [];\n }\n\n function getFieldType(bo) {\n var fieldType = 'string';\n\n var expressionValue = bo && bo.expression;\n var stringValue = bo && (bo.string || bo.stringValue);\n\n if (typeof stringValue !== 'undefined') {\n fieldType = 'string';\n } else if (typeof expressionValue !== 'undefined') {\n fieldType = 'expression';\n }\n\n return fieldType;\n }\n\n var setOptionLabelValue = function() {\n return function(element, node, option, property, value, idx) {\n var harlequinFields = getHarlequinFields(element, node);\n var field = harlequinFields[idx];\n\n value = (field.name) ? field.name : '';\n\n var label = idx + ' : ' + value;\n\n option.text = label;\n };\n };\n\n var newElement = function() {\n return function(element, extensionElements, value, node) {\n\n var props = {\n name: '',\n string: ''\n };\n\n var newFieldElem;\n\n if (!insideListener) {\n\n newFieldElem = elementHelper.createElement(HARLEQUIN_FIELD_EXTENSION_ELEMENT, props, extensionElements, bpmnFactory);\n return cmdHelper.addElementsTolist(element, extensionElements, 'values', [ newFieldElem ]);\n\n } else {\n\n var selectedListener = getSelectedListener(element, node);\n newFieldElem = elementHelper.createElement(HARLEQUIN_FIELD_EXTENSION_ELEMENT, props, selectedListener, bpmnFactory);\n return cmdHelper.addElementsTolist(element, selectedListener, 'fields', [ newFieldElem ]);\n\n }\n\n };\n };\n\n var removeElement = function() {\n return function(element, extensionElements, value, idx, node) {\n var harlequinFields= getHarlequinFields(element, node);\n var field = harlequinFields[idx];\n if (field) {\n if (!insideListener) {\n return extensionElementsHelper.removeEntry(businessObject, element, field);\n }\n var selectedListener = getSelectedListener(element, node);\n return cmdHelper.removeElementsFromList(element, selectedListener, 'fields', null, [ field ]);\n }\n };\n };\n\n\n var fieldEntry = extensionElementsEntry(element, bpmnFactory, {\n id : idPrefix + 'fields',\n label : translate('Fields'),\n modelProperty: 'fieldName',\n idGeneration: 'false',\n\n businessObject: businessObject,\n\n createExtensionElement: newElement(),\n removeExtensionElement: removeElement(),\n\n getExtensionElements: function(element, node) {\n return getHarlequinFields(element, node);\n },\n\n setOptionLabelValue: setOptionLabelValue()\n\n });\n entries.push(fieldEntry);\n\n\n entries.push(entryFactory.validationAwareTextField(translate, {\n id: idPrefix + 'field-name',\n label: translate('Name'),\n modelProperty: 'fieldName',\n\n getProperty: function(element, node) {\n return (getSelectedField(element, node) || {}).name;\n },\n\n setProperty: function(element, values, node) {\n var selectedField = getSelectedField(element, node);\n return cmdHelper.updateBusinessObject(element, selectedField, { name : values.fieldName });\n },\n\n validate: function(element, values, node) {\n var bo = getSelectedField(element, node);\n\n var validation = {};\n if (bo) {\n var nameValue = values.fieldName;\n\n if (nameValue) {\n if (utils.containsSpace(nameValue)) {\n validation.fieldName = translate('Name must not contain spaces');\n }\n } else {\n validation.fieldName = translate('Parameter must have a name');\n }\n }\n\n return validation;\n },\n\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n\n }));\n\n var fieldTypeOptions = [\n {\n name: translate('String'),\n value: 'string'\n },\n {\n name: translate('Expression'),\n value: 'expression'\n }\n ];\n\n entries.push(entryFactory.selectBox(translate, {\n id: idPrefix + 'field-type',\n label: translate('Type'),\n selectOptions: fieldTypeOptions,\n modelProperty: 'fieldType',\n\n get: function(element, node) {\n var bo = getSelectedField(element, node);\n\n var fieldType = getFieldType(bo);\n\n return {\n fieldType: fieldType\n };\n },\n\n set: function(element, values, node) {\n var props = assign({}, DEFAULT_PROPS);\n\n var fieldType = values.fieldType;\n\n if (fieldType === 'string') {\n props.string = '';\n }\n else if (fieldType === 'expression') {\n props.expression = '';\n }\n\n return cmdHelper.updateBusinessObject(element, getSelectedField(element, node), props);\n },\n\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n\n }));\n\n\n entries.push(entryFactory.textBox(translate, {\n id: idPrefix + 'field-value',\n label: translate('Value'),\n modelProperty: 'fieldValue',\n\n get: function(element, node) {\n var bo = getSelectedField(element, node);\n var fieldType = getFieldType(bo);\n\n var fieldValue;\n\n if (fieldType === 'string') {\n fieldValue = bo && (bo.string || bo.stringValue);\n }\n else if (fieldType === 'expression') {\n fieldValue = bo && bo.expression;\n }\n\n return {\n fieldValue: fieldValue\n };\n },\n\n set: function(element, values, node) {\n var bo = getSelectedField(element, node);\n var fieldType = getFieldType(bo);\n\n var props = assign({}, DEFAULT_PROPS);\n\n var fieldValue = values.fieldValue || undefined;\n\n if (fieldType === 'string') {\n props.string = fieldValue;\n }\n else if (fieldType === 'expression') {\n props.expression = fieldValue;\n }\n\n return cmdHelper.updateBusinessObject(element, bo, props);\n\n },\n\n validate: function(element, values, node) {\n var bo = getSelectedField(element, node);\n\n var validation = {};\n if (bo) {\n if (!values.fieldValue) {\n validation.fieldValue = translate('Must provide a value');\n }\n }\n\n return validation;\n },\n\n show: function(element, node) {\n return isSelected(element, node);\n }\n\n }));\n\n return entries;\n\n};\n","'use strict';\n\nvar CmdHelper = {};\nmodule.exports = CmdHelper;\n\nCmdHelper.updateProperties = function(element, properties) {\n return {\n cmd: 'element.updateProperties',\n context: { element: element, properties: properties }\n };\n};\n\nCmdHelper.updateBusinessObject = function(element, businessObject, newProperties) {\n return {\n cmd: 'properties-panel.update-businessobject',\n context: {\n element: element,\n businessObject: businessObject,\n properties: newProperties\n }\n };\n};\n\nCmdHelper.addElementsTolist = function(element, businessObject, listPropertyName, objectsToAdd, objectsToPrepend) {\n return {\n cmd: 'properties-panel.update-businessobject-list',\n context: {\n element: element,\n currentObject: businessObject,\n propertyName: listPropertyName,\n objectsToPrepend: objectsToPrepend,\n objectsToAdd: objectsToAdd\n }\n };\n};\n\nCmdHelper.removeElementsFromList = function(element, businessObject, listPropertyName, referencePropertyName, objectsToRemove) {\n\n return {\n cmd: 'properties-panel.update-businessobject-list',\n context: {\n element: element,\n currentObject: businessObject,\n propertyName: listPropertyName,\n referencePropertyName: referencePropertyName,\n objectsToRemove: objectsToRemove\n }\n };\n};\n\n\nCmdHelper.addAndRemoveElementsFromList = function(element, businessObject, listPropertyName, referencePropertyName, objectsToAdd, objectsToRemove) {\n\n return {\n cmd: 'properties-panel.update-businessobject-list',\n context: {\n element: element,\n currentObject: businessObject,\n propertyName: listPropertyName,\n referencePropertyName: referencePropertyName,\n objectsToAdd: objectsToAdd,\n objectsToRemove: objectsToRemove\n }\n };\n};\n\n\nCmdHelper.setList = function(element, businessObject, listPropertyName, updatedObjectList) {\n return {\n cmd: 'properties-panel.update-businessobject-list',\n context: {\n element: element,\n currentObject: businessObject,\n propertyName: listPropertyName,\n updatedObjectList: updatedObjectList\n }\n };\n};\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar filter = require('lodash/filter');\n\nvar extensionElementsHelper = require('../../../helper/ExtensionElementsHelper'),\n cmdHelper = require('../../../helper/CmdHelper'),\n elementHelper = require('../../../helper/ElementHelper'),\n eventDefinitionHelper = require('../../../helper/EventDefinitionHelper');\n\nvar extensionElementsEntry = require('./implementation/ExtensionElements');\n\nvar entryFactory = require('../../../factory/EntryFactory');\n\n/**\n * return depend on parameter 'type' harlequin:In or harlequin:Out extension elements\n */\nfunction getHarlequinInOutMappings(element, type) {\n var bo = getBusinessObject(element);\n\n var signalEventDefinition = eventDefinitionHelper.getSignalEventDefinition(bo);\n\n return extensionElementsHelper.getExtensionElements(signalEventDefinition || bo, type);\n}\n\n/**\n * return depend on parameter 'type' harlequin:In or harlequin:Out extension elements\n * with source or sourceExpression attribute\n */\nfunction getVariableMappings(element, type) {\n var harlequinMappings = getHarlequinInOutMappings(element, type);\n\n return filter(harlequinMappings, function(mapping) {\n return !mapping.businessKey;\n });\n}\n\nfunction getInOutType(mapping) {\n var inOutType = 'source';\n\n if (mapping.variables === 'all') {\n inOutType = 'variables';\n }\n else if (typeof mapping.source !== 'undefined') {\n inOutType = 'source';\n }\n else if (typeof mapping.sourceExpression !== 'undefined') {\n inOutType = 'sourceExpression';\n }\n\n return inOutType;\n}\n\nvar HARLEQUIN_IN_EXTENSION_ELEMENT = 'harlequin:In',\n HARLEQUIN_OUT_EXTENSION_ELEMENT = 'harlequin:Out';\n\nvar WHITESPACE_REGEX = /\\s/;\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var inOutTypeOptions = [\n {\n name: translate('Source'),\n value: 'source'\n },\n {\n name: translate('Source Expression'),\n value: 'sourceExpression'\n },\n {\n name: translate('All'),\n value: 'variables'\n }\n ];\n\n var signalEventDefinition = eventDefinitionHelper.getSignalEventDefinition(element);\n\n if (!is(element, 'harlequin:CallActivity') && !signalEventDefinition) {\n return;\n }\n\n if (signalEventDefinition && !(isAny(element, [\n 'bpmn:IntermediateThrowEvent',\n 'bpmn:EndEvent'\n ]))) {\n return;\n }\n\n var isSelected = function(element, node) {\n return !!getSelected(element, node);\n };\n\n var getSelected = function(element, node) {\n var parentNode = node.parentNode;\n var selection = inEntry.getSelected(element, parentNode);\n\n var parameter = getVariableMappings(element, HARLEQUIN_IN_EXTENSION_ELEMENT)[selection.idx];\n\n if (!parameter && outEntry) {\n selection = outEntry.getSelected(element, parentNode);\n parameter = getVariableMappings(element, HARLEQUIN_OUT_EXTENSION_ELEMENT)[selection.idx];\n }\n\n return parameter;\n };\n\n var setOptionLabelValue = function(type) {\n return function(element, node, option, property, value, idx) {\n var variableMappings = getVariableMappings(element, type);\n var mappingValue = variableMappings[idx];\n var label = (mappingValue.target || '') + ' := ';\n var mappingType = getInOutType(mappingValue);\n\n if (mappingType === 'variables') {\n label = 'all';\n }\n else if (mappingType === 'source') {\n label = label + (mappingValue.source || '');\n }\n else if (mappingType === 'sourceExpression') {\n label = label + (mappingValue.sourceExpression || '');\n } else {\n label = label + '';\n }\n\n option.text = label;\n };\n };\n\n var newElement = function(type) {\n return function(element, extensionElements, value) {\n var newElem = elementHelper.createElement(type, { source: '' }, extensionElements, bpmnFactory);\n\n return cmdHelper.addElementsTolist(element, extensionElements, 'values', [ newElem ]);\n };\n };\n\n var removeElement = function(type) {\n return function(element, extensionElements, value, idx) {\n var variablesMappings= getVariableMappings(element, type);\n var mapping = variablesMappings[idx];\n\n if (mapping) {\n return extensionElementsHelper\n .removeEntry(signalEventDefinition || getBusinessObject(element), element, mapping);\n }\n };\n };\n\n // in mapping for source and sourceExpression ///////////////////////////////////////////////////////////////\n\n var inEntry = extensionElementsEntry(element, bpmnFactory, {\n id: 'variableMapping-in',\n label: translate('In Mapping'),\n modelProperty: 'source',\n prefix: 'In',\n idGeneration: false,\n resizable: true,\n businessObject: signalEventDefinition || getBusinessObject(element),\n\n createExtensionElement: newElement(HARLEQUIN_IN_EXTENSION_ELEMENT),\n removeExtensionElement: removeElement(HARLEQUIN_IN_EXTENSION_ELEMENT),\n\n getExtensionElements: function(element) {\n return getVariableMappings(element, HARLEQUIN_IN_EXTENSION_ELEMENT);\n },\n\n onSelectionChange: function(element, node, event, scope) {\n outEntry && outEntry.deselect(element, node.parentNode);\n },\n\n setOptionLabelValue: setOptionLabelValue(HARLEQUIN_IN_EXTENSION_ELEMENT)\n });\n group.entries.push(inEntry);\n\n // out mapping for source and sourceExpression ///////////////////////////////////////////////////////\n\n if (!signalEventDefinition) {\n var outEntry = extensionElementsEntry(element, bpmnFactory, {\n id: 'variableMapping-out',\n label: translate('Out Mapping'),\n modelProperty: 'source',\n prefix: 'Out',\n idGeneration: false,\n resizable: true,\n\n createExtensionElement: newElement(HARLEQUIN_OUT_EXTENSION_ELEMENT),\n removeExtensionElement: removeElement(HARLEQUIN_OUT_EXTENSION_ELEMENT),\n\n getExtensionElements: function(element) {\n return getVariableMappings(element, HARLEQUIN_OUT_EXTENSION_ELEMENT);\n },\n\n onSelectionChange: function(element, node, event, scope) {\n inEntry.deselect(element, node.parentNode);\n },\n\n setOptionLabelValue: setOptionLabelValue(HARLEQUIN_OUT_EXTENSION_ELEMENT)\n });\n group.entries.push(outEntry);\n }\n\n // label for selected mapping ///////////////////////////////////////////////////////\n\n group.entries.push(entryFactory.label({\n id: 'variableMapping-typeLabel',\n get: function(element, node) {\n var mapping = getSelected(element, node);\n\n var value = '';\n if (is(mapping, HARLEQUIN_IN_EXTENSION_ELEMENT)) {\n value = translate('In Mapping');\n }\n else if (is(mapping, HARLEQUIN_OUT_EXTENSION_ELEMENT)) {\n value = translate('Out Mapping');\n }\n\n return {\n label: value\n };\n },\n\n showLabel: function(element, node) {\n return isSelected(element, node);\n }\n }));\n\n\n group.entries.push(entryFactory.selectBox(translate, {\n id: 'variableMapping-inOutType',\n label: translate('Type'),\n selectOptions: inOutTypeOptions,\n modelProperty: 'inOutType',\n get: function(element, node) {\n var mapping = getSelected(element, node) || {};\n return {\n inOutType: getInOutType(mapping)\n };\n },\n set: function(element, values, node) {\n var inOutType = values.inOutType;\n\n var props = {\n 'source' : undefined,\n 'sourceExpression' : undefined,\n 'variables' : undefined\n };\n\n if (inOutType === 'source') {\n props.source = '';\n }\n else if (inOutType === 'sourceExpression') {\n props.sourceExpression = '';\n }\n else if (inOutType === 'variables') {\n props.variables = 'all';\n props.target = undefined;\n }\n\n var mapping = getSelected(element, node);\n return cmdHelper.updateBusinessObject(element, mapping, props);\n },\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n\n }));\n\n\n group.entries.push(entryFactory.textField(translate, {\n id: 'variableMapping-source',\n dataValueLabel: 'sourceLabel',\n modelProperty: 'source',\n get: function(element, node) {\n var mapping = getSelected(element, node) || {};\n\n var label = '';\n var inOutType = getInOutType(mapping);\n if (inOutType === 'source') {\n label = translate('Source');\n }\n else if (inOutType === 'sourceExpression') {\n label = translate('Source Expression');\n }\n\n return {\n source: mapping[inOutType],\n sourceLabel: label\n };\n },\n set: function(element, values, node) {\n values.source = values.source || undefined;\n\n var mapping = getSelected(element, node);\n var inOutType = getInOutType(mapping);\n\n var props = {};\n props[inOutType] = values.source || '';\n\n return cmdHelper.updateBusinessObject(element, mapping, props);\n },\n\n // one of both (source or sourceExpression) must have a value to make\n // the configuration easier and more understandable\n // it is not engine conform\n validate: function(element, values, node) {\n var mapping = getSelected(element, node);\n\n var validation = {};\n if (mapping) {\n if (!values.source) {\n validation.source =\n validation.source = values.sourceLabel ?\n translate('Mapping must have a {value}', { value: values.sourceLabel.toLowerCase() }) :\n translate('Mapping must have a value');\n }\n\n var inOutType = getInOutType(mapping);\n\n if (WHITESPACE_REGEX.test(values.source) && inOutType !== 'sourceExpression') {\n validation.source = translate('{label} must not contain whitespace', { label: values.sourceLabel });\n }\n }\n\n return validation;\n },\n hidden: function(element, node) {\n var selectedMapping = getSelected(element, node);\n return !selectedMapping || (selectedMapping && selectedMapping.variables);\n }\n }));\n\n\n group.entries.push(entryFactory.textField(translate, {\n id: 'variableMapping-target',\n label: translate('Target'),\n modelProperty: 'target',\n get: function(element, node) {\n return {\n target: (getSelected(element, node) || {}).target\n };\n },\n set: function(element, values, node) {\n values.target = values.target || undefined;\n var mapping = getSelected(element, node);\n return cmdHelper.updateBusinessObject(element, mapping, values);\n },\n validate: function(element, values, node) {\n var mapping = getSelected(element, node);\n\n var validation = {};\n if (mapping) {\n var mappingType = getInOutType(mapping);\n\n if (!values.target && mappingType !== 'variables') {\n validation.target = translate('Mapping must have a target');\n }\n\n if (values.target\n && WHITESPACE_REGEX.test(values.target)\n && mappingType !== 'variables') {\n validation.target = translate('Target must not contain whitespace');\n }\n }\n\n return validation;\n },\n hidden: function(element, node) {\n var selectedMapping = getSelected(element, node);\n return !selectedMapping || (selectedMapping && selectedMapping.variables);\n }\n }));\n\n\n group.entries.push(entryFactory.checkbox(translate, {\n id: 'variableMapping-local',\n label: translate('Local'),\n modelProperty: 'local',\n get: function(element, node) {\n return {\n local: (getSelected(element, node) || {}).local\n };\n },\n set: function(element, values, node) {\n values.local = values.local || false;\n var mapping = getSelected(element, node);\n return cmdHelper.updateBusinessObject(element, mapping, values);\n },\n hidden: function(element, node) {\n return !isSelected(element, node);\n }\n }));\n\n};\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper');\n\nvar externalTaskPriority = require('./implementation/ExternalTaskPriority');\n\nfunction getServiceTaskLikeBusinessObject(element) {\n var bo = ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n\n // if the element is not a serviceTaskLike element, fetch the normal business object\n // This avoids the loss of the process / participant business object\n if (!bo) {\n bo = getBusinessObject(element);\n }\n\n return bo;\n}\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var bo = getServiceTaskLikeBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n if (is(bo, 'harlequin:TaskPriorized') || (is(bo, 'bpmn:Participant')) && bo.get('processRef')) {\n group.entries = group.entries.concat(externalTaskPriority(element, bpmnFactory, {\n getBusinessObject: function(element) {\n if (!is(bo, 'bpmn:Participant')) {\n return bo;\n }\n return bo.get('processRef');\n }\n }, translate));\n }\n};","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var externalTaskPriorityEntry = entryFactory.textField(translate, {\n id: 'externalTaskPriority',\n label: translate('Task Priority'),\n modelProperty: 'taskPriority',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return {\n taskPriority: bo.get('harlequin:taskPriority')\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:taskPriority': values.taskPriority || undefined\n });\n }\n\n });\n\n return [ externalTaskPriorityEntry ];\n\n};\n","'use strict';\n\nvar DEFAULT_PRIORITY = 1000;\n\n\n/**\n * A component that decides upon the visibility / editable\n * state of properties in the properties panel.\n *\n * Implementors must subclass this component and override\n * {@link PropertiesActivator#isEntryVisible} and\n * {@link PropertiesActivator#isPropertyEditable} to provide\n * custom behavior.\n *\n * @class\n * @constructor\n *\n * @param {EventBus} eventBus\n * @param {Number} [priority] at which priority to hook into the activation\n */\nfunction PropertiesActivator(eventBus, priority) {\n var self = this;\n\n priority = priority || DEFAULT_PRIORITY;\n\n eventBus.on('propertiesPanel.isEntryVisible', priority, function(context) {\n var element = context.element,\n entry = context.entry,\n group = context.group,\n tab = context.tab;\n\n return self.isEntryVisible(element, entry, group, tab);\n });\n\n eventBus.on('propertiesPanel.isPropertyEditable', priority, function(context) {\n var element = context.element,\n entry = context.entry,\n group = context.group,\n propertyName = context.propertyName,\n tab = context.tab;\n\n return self.isPropertyEditable(propertyName, element, entry, group, tab);\n });\n}\n\nPropertiesActivator.$inject = [ 'eventBus' ];\n\nmodule.exports = PropertiesActivator;\n\n\n/**\n * Should the given entry be visible for the specified element.\n *\n * @method PropertiesActivator#isEntryVisible\n *\n * @param {ModdleElement} element\n * @param {Object} entry\n * @param {Object} group\n * @param {Object} tab\n *\n * @returns {boolean}\n */\nPropertiesActivator.prototype.isEntryVisible = function(element, entry, group, tab) {\n return true;\n};\n\n/**\n * Should the given property be editable for the specified element\n *\n * @method PropertiesActivator#isPropertyEditable\n *\n * @param {string} propertyName\n * @param {ModdleElement} element\n * @param {Object} entry\n * @param {Object} group\n * @param {Object} tab\n *\n * @returns {boolean}\n */\nPropertiesActivator.prototype.isPropertyEditable = function(propertyName, element, entry, group, tab) {\n return true;\n};","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar domQuery = require('min-dom').query,\n domClosest = require('min-dom').closest,\n domify = require('min-dom').domify,\n forEach = require('lodash/forEach');\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils'),\n escapeHTML = utils.escapeHTML;\n\nfunction getSelectBox(node, id) {\n var currentTab = domClosest(node, 'div.bpp-properties-tab');\n var query = 'select[name=selectedExtensionElement]' + (id ? '[id=har-extensionElements-' + id + ']' : '');\n return domQuery(query, currentTab);\n}\n\nfunction getSelected(node, id) {\n var selectBox = getSelectBox(node, id);\n return {\n value: (selectBox || {}).value,\n idx: (selectBox || {}).selectedIndex\n };\n}\n\nfunction generateElementId(prefix) {\n prefix = prefix + '_';\n return utils.nextId(prefix);\n}\n\nvar CREATE_EXTENSION_ELEMENT_ACTION = 'create-extension-element',\n REMOVE_EXTENSION_ELEMENT_ACTION = 'remove-extension-element';\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var id = options.id,\n prefix = options.prefix || 'elem',\n label = options.label || id,\n idGeneration = (options.idGeneration === false) ? options.idGeneration : true,\n businessObject = options.businessObject || getBusinessObject(element);\n\n var modelProperty = options.modelProperty || 'id';\n\n var getElements = options.getExtensionElements;\n\n var createElement = options.createExtensionElement,\n canCreate = typeof createElement === 'function';\n\n var removeElement = options.removeExtensionElement,\n canRemove = typeof removeElement === 'function';\n\n var onSelectionChange = options.onSelectionChange;\n\n var hideElements = options.hideExtensionElements,\n canBeHidden = typeof hideElements === 'function';\n\n var setOptionLabelValue = options.setOptionLabelValue;\n\n var defaultSize = options.size || 5,\n resizable = options.resizable;\n\n var reference = options.reference || undefined;\n\n var selectionChanged = function(element, node, event, scope) {\n if (typeof onSelectionChange === 'function') {\n return onSelectionChange(element, node, event, scope);\n }\n };\n\n var createOption = function(value) {\n return '';\n };\n\n var initSelectionSize = function(selectBox, optionsLength) {\n if (resizable) {\n selectBox.size = optionsLength > defaultSize ? optionsLength : defaultSize;\n }\n };\n\n return {\n id: id,\n html: '
' +\n '' +\n '
' +\n '' +\n (canCreate ? '' : '') +\n (canRemove ? '' : '') +\n '
' +\n '
',\n\n get: function(element, node) {\n var elements = getElements(element, node);\n\n var result = [];\n forEach(elements, function(elem) {\n result.push({\n extensionElementValue: elem.get(modelProperty)\n });\n });\n\n var selectBox = getSelectBox(node.parentNode, id);\n initSelectionSize(selectBox, result.length);\n\n return result;\n },\n\n set: function(element, values, node) {\n var action = this.__action;\n delete this.__action;\n\n businessObject = businessObject || getBusinessObject(element);\n\n var bo =\n (reference && businessObject.get(reference))\n ? businessObject.get(reference)\n : businessObject;\n\n var extensionElements = bo.get('extensionElements');\n\n if (action.id === CREATE_EXTENSION_ELEMENT_ACTION) {\n var commands = [];\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n commands.push(createElement(element, extensionElements, action.value, node));\n return commands;\n\n }\n else if (action.id === REMOVE_EXTENSION_ELEMENT_ACTION) {\n return removeElement(element, extensionElements, action.value, action.idx, node);\n }\n\n },\n\n createListEntryTemplate: function(value, index, selectBox) {\n initSelectionSize(selectBox, selectBox.options.length + 1);\n return createOption(value.extensionElementValue);\n },\n\n deselect: function(element, node) {\n var selectBox = getSelectBox(node, id);\n selectBox.selectedIndex = -1;\n },\n\n getSelected: function(element, node) {\n return getSelected(node, id);\n },\n\n setControlValue: function(element, node, option, property, value, idx) {\n node.value = value;\n\n if (!setOptionLabelValue) {\n node.text = value;\n } else {\n setOptionLabelValue(element, node, option, property, value, idx);\n }\n },\n\n createElement: function(element, node) {\n\n // create option template\n var generatedId;\n if (idGeneration) {\n generatedId = generateElementId(prefix);\n }\n\n var selectBox = getSelectBox(node, id);\n var template = domify(createOption(generatedId));\n\n // add new empty option as last child element\n selectBox.appendChild(template);\n\n // select last child element\n selectBox.lastChild.selected = 'selected';\n selectionChanged(element, node);\n\n // update select box size\n initSelectionSize(selectBox, selectBox.options.length);\n\n this.__action = {\n id: CREATE_EXTENSION_ELEMENT_ACTION,\n value: generatedId\n };\n\n return true;\n },\n\n removeElement: function(element, node) {\n var selection = getSelected(node, id);\n\n var selectBox = getSelectBox(node, id);\n selectBox.removeChild(selectBox.options[selection.idx]);\n\n // update select box size\n initSelectionSize(selectBox, selectBox.options.length);\n\n this.__action = {\n id: REMOVE_EXTENSION_ELEMENT_ACTION,\n value: selection.value,\n idx: selection.idx\n };\n\n return true;\n },\n\n hideElements: function(element, entryNode, node, scopeNode) {\n return !hideElements(element, entryNode, node, scopeNode);\n },\n\n disableRemove: function(element, entryNode, node, scopeNode) {\n return (getSelected(entryNode, id) || {}).idx < 0;\n },\n\n selectElement: selectionChanged\n };\n\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../process-builder/lib/base/BaseServices').is,\n forEach = require('lodash/forEach');\n\nvar EventDefinitionHelper = {};\n\nmodule.exports = EventDefinitionHelper;\n\nEventDefinitionHelper.getEventDefinition = function(element, eventType) {\n\n var bo = getBusinessObject(element),\n eventDefinition = null;\n\n if (bo.eventDefinitions) {\n forEach(bo.eventDefinitions, function(event) {\n if (is(event, eventType)) {\n eventDefinition = event;\n }\n });\n }\n\n return eventDefinition;\n};\n\nEventDefinitionHelper.getTimerEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:TimerEventDefinition');\n};\n\nEventDefinitionHelper.getMessageEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:MessageEventDefinition');\n};\n\nEventDefinitionHelper.getSignalEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:SignalEventDefinition');\n};\n\nEventDefinitionHelper.getErrorEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:ErrorEventDefinition');\n};\n\nEventDefinitionHelper.getEscalationEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:EscalationEventDefinition');\n};\n\nEventDefinitionHelper.getCompensateEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:CompensateEventDefinition');\n};\n\nEventDefinitionHelper.getLinkEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:LinkEventDefinition');\n};\n\nEventDefinitionHelper.getConditionalEventDefinition = function(element) {\n return this.getEventDefinition(element, 'bpmn:ConditionalEventDefinition');\n};\n","'use strict';\n\nvar ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper'),\n InputOutputHelper = require('../../../helper/InputOutputHelper');\n\nvar entryFactory = require('../../../factory/EntryFactory'),\n cmdHelper = require('../../../helper/CmdHelper');\n\nfunction getImplementationType(element) {\n return ImplementationTypeHelper.getImplementationType(element);\n}\n\nfunction getBusinessObject(element) {\n return ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n}\n\nfunction getConnector(bo) {\n return InputOutputHelper.getConnector(bo);\n}\n\nfunction isConnector(element) {\n return getImplementationType(element) === 'connector';\n}\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n group.entries.push(entryFactory.textField(translate, {\n id: 'connectorId',\n label: translate('Connector Id'),\n modelProperty: 'connectorId',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n var connector = bo && getConnector(bo);\n var value = connector && connector.get('connectorId');\n return { connectorId: value };\n },\n\n set: function(element, values, node) {\n var bo = getBusinessObject(element);\n var connector = getConnector(bo);\n return cmdHelper.updateBusinessObject(element, connector, {\n connectorId: values.connectorId || undefined\n });\n },\n\n validate: function(element, values, node) {\n return isConnector(element) && !values.connectorId ? { connectorId: translate('Must provide a value') } : {};\n },\n\n hidden: function(element, node) {\n return !isConnector(element);\n }\n\n }));\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtask.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar flatten = require('min-dash').flatten,\n filter = require('min-dash').filter,\n forEach = require('min-dash').forEach;\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n cmdHelper = require('../../../../helper/CmdHelper'),\n elementHelper = require('../../../../helper/ElementHelper');\n\nvar findExtension = require('../Helper').findExtension,\n findOutputParameter = require('../Helper').findOutputParameter;\n\nvar createOutputParameter = require('../CreateHelper').createOutputParameter;\n\nvar domClasses = require('min-dom').classes,\n domEvent = require('min-dom').event,\n domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar escapeHTML = require('../../../../Utils').escapeHTML;\n\nvar utils = require('../../../../Utils');\n\nvar HARLEQUIN_OUTPUT_PARAMETER_TYPE = 'harlequin:outputParameter';\n\nvar MAX_DESCRIPTION_LENGTH = 200;\n\nvar EMPTY_PARAMETER = {\n get: function() {},\n set: function() {}\n};\n\n/**\n * Injects element template output parameters into the given group.\n *\n * @param {Object} group\n * @param {djs.model.Base} element\n * @param {ElementTemplates} elementTemplates\n * @param {BpmnFactory} bpmnFactory\n * @param {Function} translate\n */\nmodule.exports = function(group, element, elementTemplates, bpmnFactory, translate) {\n\n var template = elementTemplates.get(element);\n\n if (!template) {\n return [];\n }\n\n var outputEntries = [];\n\n\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n // collapse all other items\n outputEntries.forEach(function(entries) {\n var collapsible = entries[0];\n\n if (collapsible.id === currentEntryId) {\n return;\n }\n\n var entryNode = domQuery('[data-entry=\"' + collapsible.id + '\"]');\n collapsible.setOpen(false, entryNode);\n });\n }\n\n function renderOutputParameter(id, templateProperty) {\n\n var parameterEntries = [];\n\n // find input parameter first\n var bo = getBusinessObject(element),\n inputOutput = findExtension(bo, 'harlequin:InputOutput');\n\n if (!inputOutput) {\n return parameterEntries;\n }\n\n var getParameter = function() {\n return findOutputParameter(inputOutput, templateProperty.binding) || EMPTY_PARAMETER;\n };\n\n // (1) add collapsible header\n var collapsible = entryFactory.collapsible({\n id: id + '-collapsible',\n title: translate(templateProperty.label),\n cssClasses: [\n 'bpp-collapsible--with-mapping',\n 'bpp-collapsible--with-template-out'\n ],\n onToggle: onToggle,\n open: false,\n get: function() {\n return {\n title: translate(templateProperty.label),\n description: getParameter().name\n };\n }\n });\n parameterEntries.push(collapsible);\n\n var isOpen = collapsible.isOpen;\n\n var assignmentIsOn = function() {\n var inputOutput = findExtension(getBusinessObject(element), 'harlequin:InputOutput'),\n parameter = findOutputParameter(inputOutput, templateProperty.binding);\n\n return !!parameter;\n };\n\n // (2) add description\n if (templateProperty.description) {\n parameterEntries.push(createDescriptionEntry(\n templateProperty.description,\n id,\n isOpen,\n translate\n ));\n }\n\n // (3) add parameter toggle\n parameterEntries.splice(templateProperty.description ? 2 : 1, 0, entryFactory.toggleSwitch(translate, {\n id: id + '-assignment-toggle',\n label: translate('Process Variable Assignment'),\n modelProperty: 'isActive',\n labelOn: translate('On'),\n labelOff: translate('Off'),\n descriptionOff: translate('The parameter won\\'t be available in the process scope.'),\n isOn: assignmentIsOn,\n get: function(element, node) {\n return { isActive: assignmentIsOn() };\n },\n set: function(element, values, node) {\n var isActive = values.isActive || false;\n\n if (isActive) {\n return createNewOutputParameter(element, templateProperty.binding, bpmnFactory);\n } else {\n return removeOutputParameter(element, templateProperty.binding);\n }\n\n },\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n // (4) add process variable name field\n parameterEntries.push(entryFactory.validationAwareTextField(translate, {\n id: id + '-variableName',\n label: translate('Assign to Process Variable'),\n modelProperty: 'variableName',\n getProperty: function(element) {\n return getParameter().name;\n },\n setProperty: function(element, values) {\n return cmdHelper.updateBusinessObject(element, getParameter(), { name: values.variableName });\n },\n validate: function(element, values) {\n var validation = {},\n nameValue = values.variableName;\n\n if (nameValue) {\n if (utils.containsSpace(nameValue)) {\n validation.variableName = translate('Process Variable Name must not contain spaces.');\n }\n } else {\n validation.variableName = translate('Process Variable Name must not be empty.');\n }\n\n return validation;\n },\n hidden: function(element, node) {\n return !isOpen() || !assignmentIsOn();\n }\n }));\n\n return parameterEntries;\n }\n\n // filter specific output parameters from template\n var outputParameters = filter(template.properties, function(p) {\n return !p.type && p.binding.type === HARLEQUIN_OUTPUT_PARAMETER_TYPE;\n });\n\n forEach(outputParameters, function(property, idx) {\n var id = 'template-outputs-' + template.id + '-' + idx;\n outputEntries.push(renderOutputParameter(id, property));\n });\n\n group.entries = group.entries.concat(flatten(outputEntries));\n};\n\n// helpers ///////////////\n\nfunction createDescriptionEntry(description, id, show, translate) {\n description = escapeHTML(description);\n\n var html = domify('

');\n\n var descriptionText = domify('' + description + '');\n\n html.appendChild(descriptionText);\n\n function toggleExpanded(expanded) {\n if (expanded) {\n domClasses(html).add('description--expanded');\n\n descriptionText.textContent = description + ' ';\n\n expand.textContent = translate('Less');\n } else {\n domClasses(html).remove('description--expanded');\n\n descriptionText.textContent = descriptionShortened + ' ... ';\n\n expand.textContent = translate('More');\n }\n }\n\n var descriptionShortened,\n expand,\n expanded = false;\n\n if (description.length > MAX_DESCRIPTION_LENGTH) {\n descriptionShortened = description.slice(0, MAX_DESCRIPTION_LENGTH);\n\n expand = domify(\n '' +\n translate('More') +\n ''\n );\n\n domEvent.bind(expand, 'click', function() {\n expanded = !expanded;\n\n toggleExpanded(expanded);\n });\n\n html.appendChild(expand);\n\n toggleExpanded(expanded);\n }\n\n return {\n id: id + '-description',\n html: html,\n show: show\n };\n}\n\nfunction removeOutputParameter(element, binding) {\n var bo = getBusinessObject(element),\n updates = [],\n extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n return updates;\n }\n\n var inputOutput = findExtension(extensionElements, 'harlequin:InputOutput');\n\n if (!inputOutput) {\n return updates;\n }\n\n var outputParameter = findOutputParameter(inputOutput, binding);\n\n if (!outputParameter) {\n return updates;\n }\n\n updates.push(cmdHelper.removeElementsFromList(element, inputOutput, 'outputParameters', null, [outputParameter]));\n\n return updates;\n}\n\nfunction createNewOutputParameter(element, binding, bpmnFactory) {\n var bo = getBusinessObject(element),\n updates = [],\n extensionElements = bo.get('extensionElements');\n\n // (1) ensure extension elements\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', null, element, bpmnFactory);\n\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, { extensionElements: extensionElements }\n ));\n }\n\n var inputOutput = findExtension(extensionElements, 'harlequin:InputOutput');\n\n // (2) ensure inputOutput element\n if (!inputOutput) {\n inputOutput = elementHelper.createElement('harlequin:InputOutput', null, bo, bpmnFactory);\n\n updates.push(cmdHelper.addElementsTolist(\n element, extensionElements, 'values', inputOutput\n ));\n }\n\n // (3) create output parameter\n var outputParameter = createOutputParameter(binding, null, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n inputOutput,\n 'outputParameters',\n null,\n [ outputParameter ],\n [ ]\n ));\n\n return updates;\n}","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtable.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar entryFactory = require('../../../factory/EntryFactory');\n\nvar participantHelper = require('../../../helper/ParticipantHelper');\n\nmodule.exports = function(group, element, translate) {\n\n var bo = getBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n if (is(element, 'bpmn:Process') || (is(element, 'bpmn:Participant') && bo.get('processRef'))) {\n\n var executableEntry = entryFactory.checkbox(translate, {\n id: 'process-is-executable',\n label: translate('Executable'),\n modelProperty: 'isExecutable'\n });\n\n // in participants we have to change the default behavior of set and get\n if (is(element, 'bpmn:Participant')) {\n executableEntry.get = function(element) {\n return participantHelper.getProcessBusinessObject(element, 'isExecutable');\n };\n\n executableEntry.set = function(element, values) {\n return participantHelper.modifyProcessBusinessObject(element, 'isExecutable', values);\n };\n }\n\n group.entries.push(executableEntry);\n }\n\n};\n","import axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\n\nconst state = {\n allReports: [],\n reportAction: '',\n rTitle: '',\n rDesc: '',\n rSql: '',\n rGroups: [],\n rData: [],\n reportId: null,\n reportSqlData: [],\n savedReport: [],\n reportLocked: false,\n reportLockedUser: '',\n lockedReports: [],\n copiedReport: null,\n deletedReport: null,\n fieldsReady: false,\n editingReport: false,\n promoteReportData: [],\n promoteReportRes: []\n};\n\nconst getters = {\n allReports: (state) => state.allReports,\n reportAction: (state) => state.reportAction,\n rTitle: (state) => state.rTitle,\n rDesc: (state) => state.rDesc,\n rSql: (state) => state.rSql,\n rGroups: (state) => state.rGroups,\n rData: (state) => state.rData,\n reportId: (state) => state.reportId,\n reportSqlData: (state) => state.reportSqlData,\n reportLocked: (state) => state.reportLocked,\n reportLockedUser: (state) => state.reportLockedUser,\n lockedReports: (state) => state.lockedReports,\n promoteReportData: (state) => state.promoteReportData,\n promoteReportRes: (state) => state.promoteReportRes\n};\n\nconst actions = {\n getAllReports({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('ALL_REPORTS', JSON.parse(result.data.variables.reports.value));\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n getReport({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'get', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' },\n 'reportAction': { 'value': payload.reportAction, 'type': 'String' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('REPORT_TITLE', result.data.variables.reportTitle.value);\n commit('REPORT_DESC', result.data.variables.reportDesc.value);\n commit('REPORT_SQL', result.data.variables.reportSql.value);\n commit('REPORT_GROUPS', JSON.parse(result.data.variables.reportGroups.value));\n commit('REPORT_DATA', JSON.parse(result.data.variables.reportData.value));\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n copyReport({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'reportAction': { 'value': 'copy', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' },\n 'createdOn': { 'value': payload.createdOn, 'type': 'String' },\n 'createdBy': { 'value': payload.createdBy, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('COPIED_REPORT', payload.reportId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteReport({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_REPORT', payload.reportId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n reportLockCheck({commit}, payload) {\n let data = {};\n if(payload.checkType == 'single') {\n data = {\n 'variables': {\n 'requestType': { 'value': 'lockCheck', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n if(payload.checkType == 'all') {\n data = {\n 'variables': {\n 'requestType': { 'value': 'lockCheck', 'type': 'String' },\n 'reportId': { 'value': 0, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n if(payload.checkType == 'unlock') {\n data = {\n 'variables': {\n 'requestType': { 'value': 'lockCheck', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(payload.checkType == 'single') {\n let retData = {\n 'reportLocked': result.data.variables.reportLocked.value,\n 'reportLockedUser': result.data.variables.reportLockedUser.value\n };\n commit('REPORT_LOCK_CHECK', retData);\n }\n if(payload.checkType == 'all') {\n let lockedReports = JSON.parse(result.data.variables.lockedReports.value);\n commit('REPORT_LOCK_CHECK_ALL', lockedReports);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n runReport({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'run', 'type': 'String' },\n 'reportSql': { 'value': payload.reportSql, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n if(result.data.variables.sqlData) {\n commit('REPORT_SQL_DATA', JSON.parse(result.data.variables.sqlData.value));\n }\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n saveReport({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'reportId': { 'value': payload.reportId, 'type': 'Integer' },\n 'reportAction': { 'value': payload.reportAction, 'type': 'String' },\n 'reportData': { 'value': payload.reportData, 'type': 'Json' },\n 'reportTitle': { 'value': payload.reportTitle, 'type': 'String' },\n 'reportDesc': { 'value': payload.reportDesc, 'type': 'String' },\n 'reportGroups': { 'value': payload.reportGroups, 'type': 'Json' },\n 'reportSql': { 'value': payload.reportSql, 'type': 'String' },\n 'createdBy': { 'value': payload.createdBy, 'type': 'String' },\n 'createdOn': { 'value': payload.createdOn, 'type': 'String' },\n 'updatedBy': { 'value': payload.updatedBy, 'type': 'String' },\n 'updatedOn': { 'value': payload.updatedOn, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables.lastId !== 'undefined') {\n commit('UPDATE_REPORT_ID', result.data.variables.lastId.value);\n }\n commit('SAVED_REPORT', result.data);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n promoteReportsCheck({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteReportData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'get', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let reportData = JSON.parse(result.data.variables.reportData.value);\n commit('PROMOTE_REPORT_DATA', reportData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n promoteReports({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteReportData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'getLocal', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let reportData = result.data.variables.reportData.value;\n \n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteReportData': { 'value': reportData, 'type': 'Json' },\n 'checkType': { 'value': 'update', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/reportController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let retData = [];\n\n if(result.status == 200) {\n retData = JSON.parse(result.data.variables.retData.value);\n }\n\n commit('PROMOTE_REPORT_RES', retData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n }\n};\n\nconst mutations = {\n ALL_REPORTS(state, payload) {\n state.allReports = payload;\n },\n REPORT_TITLE(state, payload) {\n state.rTitle = payload;\n },\n REPORT_DESC(state, payload) {\n state.rDesc = payload;\n },\n REPORT_SQL(state, payload) {\n state.rSql = payload;\n },\n REPORT_GROUPS(state, payload) {\n state.rGroups = payload;\n },\n REPORT_DATA(state, payload) {\n state.rData = payload;\n },\n UPDATE_REPORT_ACTION(state, payload) {\n state.reportAction = payload;\n },\n UPDATE_REPORT_ID(state, payload) {\n state.reportId = payload;\n },\n SAVED_REPORT(state, payload) {\n state.savedReport = payload;\n },\n REPORT_SQL_DATA(state, payload) {\n state.reportSqlData = payload;\n },\n REPORT_LOCK_CHECK(state, payload) {\n state.reportLocked = payload.reportLocked;\n state.reportLockedUser = payload.reportLockedUser;\n },\n REPORT_LOCK_CHECK_ALL(state, payload) {\n state.lockedReports = payload;\n },\n COPIED_REPORT(state, payload) {\n state.copiedReport = payload;\n },\n DELETED_REPORT(state, payload) {\n state.deletedReport = payload;\n },\n FIELDS_READY(state, payload) {\n state.fieldsReady = payload;\n },\n EDITING_REPORT(state, payload) {\n state.editingReport = payload;\n },\n PROMOTE_REPORT_DATA(state, payload) {\n state.promoteReportData = payload;\n },\n PROMOTE_REPORT_RES(state, payload) {\n state.promoteReportRes = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport auth from './modules/auth'\nimport admin from './modules/admin'\nimport process from './modules/processes'\nimport tasks from './modules/tasks'\nimport users from './modules/users'\nimport groups from './modules/groups'\nimport files from './modules/files'\nimport tables from './modules/tables'\nimport reports from './modules/reports'\nimport createPersistedState from \"vuex-persistedstate\"\n\nVue.use(Vuex)\n\nconst getDefaultState = () => {\n return {\n auth: auth.state,\n admin: admin.state,\n users: users.state,\n groups: groups.state,\n process: process.state,\n files: files.state,\n tables: tables.state,\n tasks: tasks.state,\n reports: reports.state,\n adminUsersSortField: null,\n adminUsersSortOrder: 'none',\n adminGroupsSortField: null,\n adminGroupsSortOrder: 'none',\n adminExtDbSortField: null,\n adminExtDbSortOrder: 'none',\n adminHqConnSortField: null,\n adminHqConnSortOrder: 'none',\n adminApiSortField: null,\n adminApiSortOrder: 'none',\n adminOpLogSortField: null,\n adminOpLogSortOrder: 'none',\n refreshInterval: null,\n allTasksSortField: '',\n allTasksSortOrder: '',\n databaseTablesSortField: '',\n databaseTablesSortOrder: '',\n documentsSortField: '',\n documentsSortOrder: '',\n formBuilderSortField: '',\n formBuilderSortOrder: '',\n historicCasesSortField: '',\n historicCasesSortOrder: '',\n myTasksSortField: '',\n myTasksSortOrder: '',\n designSortField: '',\n designSortOrder: '',\n deployedSortField: '',\n deployedSortOrder: '',\n reportSortField: '',\n reportSortOrder: '',\n runningCasesSortField: '',\n runningCasesSortOrder: '',\n startCaseSortField: '',\n startCaseSortOrder: '',\n teamTasksSortField: '',\n teamTasksSortOrder: '',\n docTemplateSortField: '',\n docTemplateSortOrder: '',\n emailTemplateSortField: '',\n emailTemplateSortOrder: '',\n unnasignedTasksSortField: '',\n unassignedTasksSortOrder: '',\n viewTableSortOrder: '',\n viewTableSortField: '',\n taskCompleteInt: null,\n token: '',\n currentUser: '',\n currentUserFullname: '',\n currentUserEmail: '',\n tenant: '',\n engineUrl: '',\n randomKey: '',\n xAuthToken: '',\n extAuthToken: '',\n currentRole: '',\n isAdmin: false,\n isDeveloper: false,\n isSupervisor: false,\n isManager: false,\n isLoggedIn: false,\n msalSsoEnabled: false,\n samlSsoEnabled: false,\n ldapEnabled: false,\n userGroups: []\n };\n};\n\nconst state = getDefaultState();\n\nconst mutations = {\n setAdminUsersSortField(state, data) {\n state.adminUsersSortField = data;\n },\n setAdminUsersSortOrder(state, data) {\n state.adminUsersSortOrder = data;\n },\n setAdminGroupsSortField(state, data) {\n state.adminGroupsSortField = data;\n },\n setAdminGroupsSortOrder(state, data) {\n state.adminGroupsSortOrder = data;\n },\n setAdminExtDbSortField(state, data) {\n state.adminExtDbSortField = data;\n },\n setAdminExtDbSortOrder(state, data) {\n state.adminExtDbSortOrder = data;\n },\n setAdminHqConnSortField(state, data) {\n state.adminHqConnSortField = data;\n },\n setAdminHqConnSortOrder(state, data) {\n state.adminHqConnSortOrder = data;\n },\n setAdminApiSortField(state, data) {\n state.adminApiSortField = data;\n },\n setAdminApiSortOrder(state, data) {\n state.adminApiSortOrder = data;\n },\n setAdminOpLogSortField(state, data) {\n state.adminOpLogSortField = data;\n },\n setAdminOpLogSortOrder(state, data) {\n state.adminOpLogSortOrder = data;\n },\n setRefreshInterval(state, data) {\n state.refreshInterval = data;\n },\n setAllTasksSortField(state, data) {\n state.allTasksSortField = data;\n },\n setAllTasksSortOrder(state, data) {\n state.allTasksSortOrder = data;\n },\n setDatabaseTablesSortField(state, data) {\n state.databaseTablesSortField = data;\n },\n setDatabaseTablesSortOrder(state, data) {\n state.databaseTablesSortOrder = data;\n },\n setDocumentsSortField(state, data) {\n state.documentsSortField = data;\n },\n setDocumentsSortOrder(state, data) {\n state.documentsSortOrder = data;\n },\n setFormBuilderSortField(state, data) {\n state.formBuilderSortField = data;\n },\n setFormBuilderSortOrder(state, data) {\n state.formBuilderSortOrder = data;\n },\n setHistoricCasesSortField(state, data) {\n state.historicCasesSortField = data;\n },\n setHistoricCasesSortOrder(state, data) {\n state.historicCasesSortOrder = data;\n },\n setMyTasksSortField(state, data) {\n state.myTasksSortField = data;\n },\n setMyTasksSortOrder(state, data) {\n state.myTasksSortOrder = data;\n },\n setDesignSortField(state, data) {\n state.designSortField = data;\n },\n setDesignSortOrder(state, data) {\n state.designSortOrder = data;\n },\n setDeployedSortField(state, data) {\n state.deployedSortField = data;\n },\n setDeployedSortOrder(state, data) {\n state.deployedSortOrder = data;\n },\n setReportSortField(state, data) {\n state.reportSortField = data;\n },\n setReportSortOrder(state, data) {\n state.reportSortOrder = data;\n },\n setRunningCasesSortField(state, data) {\n state.runningCasesSortField = data;\n },\n setRunningCasesSortOrder(state, data) {\n state.runningCasesSortOrder = data;\n },\n setStartCaseSortField(state, data) {\n state.startCaseSortField = data;\n },\n setStartCaseSortOrder(state, data) {\n state.startCaseSortOrder = data;\n },\n setTeamTasksSortField(state, data) {\n state.teamTasksSortField = data;\n },\n setTeamTasksSortOrder(state, data) {\n state.teamTasksSortOrder = data;\n },\n setDocTemplateSortField(state, data) {\n state.docTemplateSortField = data;\n },\n setDocTemplateSortOrder(state, data) {\n state.docTemplateSortOrder = data;\n },\n setEmailTemplateSortField(state, data) {\n state.emailTemplateSortField = data;\n },\n setEmailTemplateSortOrder(state, data) {\n state.emailTemplateSortOrder = data;\n },\n setUnnasignedTasksSortField(state, data) {\n state.unnasignedTasksSortField = data;\n },\n setUnassignedTasksSortOrder(state, data) {\n state.unassignedTasksSortOrder = data;\n },\n setViewTableSortOrder(state, data) {\n state.viewTableSortOrder = data;\n },\n setViewTableSortField(state, data) {\n state.viewTableSortField = data;\n },\n setTaskCompleteInt(state, data) {\n state.taskCompleteInt = data;\n },\n setToken(state, data) {\n state.token = data;\n },\n setCurrentUser(state, data) {\n state.currentUser = data;\n },\n setCurrentUserFullname(state, data) {\n state.currentUserFullname = data;\n },\n setCurrentUserEmail(state, data) {\n state.currentUserEmail = data;\n },\n setTenant(state, data) {\n state.tenant = data;\n },\n setEngineUrl(state, data) {\n state.engineUrl = data;\n },\n setRandomKey(state, data) {\n state.randomKey = data;\n },\n setXAuthToken(state, data) {\n state.xAuthToken = data;\n },\n setExtAuthToken(state, data) {\n state.extAuthToken = data;\n },\n setCurrentRole(state, data) {\n state.currentRole = data;\n },\n setIsAdmin(state, data) {\n state.isAdmin = data;\n },\n setIsDeveloper(state, data) {\n state.isDeveloper = data;\n },\n setIsSupervisor(state, data) {\n state.isSupervisor = data;\n },\n setIsManager(state, data) {\n state.isManager = data;\n },\n setIsLoggedIn(state, data) {\n state.isLoggedIn = data;\n },\n setMsalSsoEnabled(state, data) {\n state.msalSsoEnabled = data;\n },\n setSamlSsoEnabled(state, data) {\n state.samlSsoEnabled = data;\n },\n setLdapEnabled(state, data) {\n state.ldapEnabled = data;\n },\n setUserGroups(state, data) {\n state.userGroups = data;\n },\n reset(state) {\n const defaultState = getDefaultState();\n Object.keys(state).forEach(key => {\n state[key] = defaultState[key];\n });\n }\n};\n\nconst actions = {\n clearAll({commit}){ \n commit('reset')\n }\n};\n\nconst modules = {\n auth,\n admin,\n process,\n tasks,\n users,\n groups,\n files,\n tables,\n reports\n};\n\nconst store = new Vuex.Store({\n state,\n mutations,\n actions,\n modules,\n plugins: [\n createPersistedState({\n storage: window.sessionStorage,\n reducer: (state) => ({\n adminUsersSortField: state.adminUsersSortField,\n adminUsersSortOrder: state.adminUsersSortOrder,\n adminGroupsSortField: state.adminGroupsSortField,\n adminGroupsSortOrder: state.adminGroupsSortOrder,\n adminExtDbSortField: state.adminExtDbSortField,\n adminExtDbSortOrder: state.adminExtDbSortOrder,\n adminHqConnSortField: state.adminHqConnSortField,\n adminHqConnSortOrder: state.adminHqConnSortOrder,\n adminApiSortField: state.adminApiSortField,\n adminApiSortOrder: state.adminApiSortOrder,\n adminOpLogSortField: state.adminOpLogSortField,\n adminOpLogSortOrder: state.adminOpLogSortOrder,\n refreshInterval: state.refreshInterval,\n allTasksSortField: state.allTasksSortField,\n allTasksSortOrder: state.allTasksSortOrder,\n databaseTablesSortField: state.databaseTablesSortField,\n databaseTablesSortOrder: state.databaseTablesSortOrder,\n documentsSortField: state.documentsSortField,\n documentsSortOrder: state.documentsSortOrder,\n formBuilderSortField: state.formBuilderSortField,\n formBuilderSortOrder: state.formBuilderSortOrder,\n historicCasesSortField: state.historicCasesSortField,\n historicCasesSortOrder: state.historicCasesSortOrder,\n myTasksSortField: state.myTasksSortField,\n myTasksSortOrder: state.myTasksSortOrder,\n designSortField: state.designSortField,\n designSortOrder: state.designSortOrder,\n deployedSortField: state.deployedSortField,\n deployedSortOrder: state.deployedSortOrder,\n reportSortField: state.reportSortField,\n reportSortOrder: state.reportSortOrder,\n runningCasesSortField: state.runningCasesSortField,\n runningCasesSortOrder: state.runningCasesSortOrder,\n startCaseSortField: state.startCaseSortField,\n startCaseSortOrder: state.startCaseSortOrder,\n teamTasksSortField: state.teamTasksSortField,\n teamTasksSortOrder: state.teamTasksSortOrder,\n docTemplateSortField: state.docTemplateSortField,\n docTemplateSortOrder: state.docTemplateSortOrder,\n emailTemplateSortField: state.emailTemplateSortField,\n emailTemplateSortOrder: state.emailTemplateSortOrder,\n unnasignedTasksSortField: state.unnasignedTasksSortField,\n unassignedTasksSortOrder: state.unassignedTasksSortOrder,\n viewTableSortOrder: state.viewTableSortOrder,\n viewTableSortField: state.viewTableSortField,\n taskCompleteInt: state.taskCompleteInt,\n token: state.token,\n currentUser: state.currentUser,\n currentUserFullname: state.currentUserFullname,\n currentUserEmail: state.currentUserEmail,\n tenant: state.tenant,\n engineUrl: state.engineUrl,\n randomKey: state.randomKey,\n xAuthToken: state.xAuthToken,\n extAuthToken: state.extAuthToken,\n currentRole: state.currentRole,\n isAdmin: state.isAdmin,\n isDeveloper: state.isDeveloper,\n isSupervisor: state.isSupervisor,\n isManager: state.isManager,\n isLoggedIn: state.isLoggedIn,\n msalSsoEnabled: state.msalSsoEnabled,\n samlSsoEnabled: state.samlSsoEnabled,\n ldapEnabled: state.ldapEnabled,\n userGroups: state.userGroups\n })\n })\n ]\n});\n\nexport default store;\n","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\n\nvar find = require('lodash/find');\n\nvar TEMPLATE_ID_ATTR = 'harlequin:modelerTemplate',\n TEMPLATE_VERSION_ATTR = 'harlequin:modelerTemplateVersion';\n\n/**\n * The BPMN 2.0 extension attribute name under\n * which the element template ID is stored.\n *\n * @type {String}\n */\nmodule.exports.TEMPLATE_ID_ATTR = TEMPLATE_ID_ATTR;\n\n/**\n * The BPMN 2.0 extension attribute name under\n * which the element template version is stored.\n *\n * @type {String}\n */\nmodule.exports.TEMPLATE_VERSION_ATTR = TEMPLATE_VERSION_ATTR;\n\n\n/**\n * Get template id for a given diagram element.\n *\n * @param {djs.model.Base} element\n *\n * @return {String}\n */\nfunction getTemplateId(element) {\n\n var bo = getBusinessObject(element);\n\n if (bo) {\n return bo.get(TEMPLATE_ID_ATTR);\n }\n}\n\nmodule.exports.getTemplateId = getTemplateId;\n\n/**\n * Get template version for a given diagram element.\n *\n * @param {djs.model.Base} element\n *\n * @return {String}\n */\nfunction getTemplateVersion(element) {\n\n var bo = getBusinessObject(element);\n\n if (bo) {\n return bo.get(TEMPLATE_VERSION_ATTR);\n }\n}\n\nmodule.exports.getTemplateVersion = getTemplateVersion;\n\n\n/**\n * Find extension with given type in\n * BPMN element, diagram element or ExtensionElement.\n *\n * @param {ModdleElement|djs.model.Base} element\n * @param {String} type\n *\n * @return {ModdleElement} the extension\n */\nfunction findExtension(element, type) {\n var bo = getBusinessObject(element);\n\n var extensionElements;\n\n if (is(bo, 'bpmn:ExtensionElements')) {\n extensionElements = bo;\n } else {\n extensionElements = bo.extensionElements;\n }\n\n if (!extensionElements) {\n return null;\n }\n\n return find(extensionElements.get('values'), function(e) {\n return is(e, type);\n });\n}\n\nmodule.exports.findExtension = findExtension;\n\n\nfunction findExtensions(element, types) {\n var extensionElements = getExtensionElements(element);\n\n if (!extensionElements) {\n return [];\n }\n\n return extensionElements.get('values').filter(function(e) {\n return isAny(e, types);\n });\n}\n\nmodule.exports.findExtensions = findExtensions;\n\n\nfunction findHarlequinInOut(element, binding) {\n\n var extensionElements = getExtensionElements(element);\n\n if (!extensionElements) {\n return;\n }\n\n var matcher;\n\n if (binding.type === 'harlequin:In') {\n matcher = function(e) {\n return is(e, 'harlequin:In') && isInOut(e, binding);\n };\n } else\n if (binding.type === 'harlequin:Out') {\n matcher = function(e) {\n return is(e, 'harlequin:Out') && isInOut(e, binding);\n };\n } else\n if (binding.type === 'harlequin:In:businessKey') {\n matcher = function(e) {\n return is(e, 'harlequin:In') && 'businessKey' in e;\n };\n }\n\n return find(extensionElements.get('values'), matcher);\n}\n\nmodule.exports.findHarlequinInOut = findHarlequinInOut;\n\nfunction findHarlequinProperty(harlequinProperties, binding) {\n return find(harlequinProperties.get('values'), function(p) {\n return p.name === binding.name;\n });\n}\n\nmodule.exports.findHarlequinProperty = findHarlequinProperty;\n\n\nfunction findInputParameter(inputOutput, binding) {\n var parameters = inputOutput.get('inputParameters');\n\n return find(parameters, function(p) {\n return p.name === binding.name;\n });\n}\n\nmodule.exports.findInputParameter = findInputParameter;\n\n\nfunction findOutputParameter(inputOutput, binding) {\n var parameters = inputOutput.get('outputParameters');\n\n return find(parameters, function(p) {\n var value = p.value;\n\n if (!binding.scriptFormat) {\n return value === binding.source;\n }\n\n var definition = p.definition;\n\n if (!definition || binding.scriptFormat !== definition.scriptFormat) {\n return false;\n }\n\n return definition.value === binding.source;\n });\n}\n\nmodule.exports.findOutputParameter = findOutputParameter;\n\n\nfunction findHarlequinErrorEventDefinition(element, bindingErrorRef) {\n var errorEventDefinitions = findExtensions(element, [ 'harlequin:ErrorEventDefinition' ]),\n error;\n\n // error id has to start with \n return find(errorEventDefinitions, function(definition) {\n error = definition.errorRef;\n\n if (error) {\n return error.id.indexOf('Error_' + bindingErrorRef) == 0;\n }\n });\n}\n\nmodule.exports.findHarlequinErrorEventDefinition = findHarlequinErrorEventDefinition;\n\n\n\n// helpers /////////////////////////////////\n\nfunction getExtensionElements(element) {\n var bo = getBusinessObject(element);\n\n if (is(bo, 'bpmn:ExtensionElements')) {\n return bo;\n } else {\n return bo.extensionElements;\n }\n}\n\n\nfunction isInOut(element, binding) {\n\n if (binding.type === 'harlequin:In') {\n\n // find based on target attribute\n if (binding.target) {\n return element.target === binding.target;\n }\n }\n\n if (binding.type === 'harlequin:Out') {\n\n // find based on source / sourceExpression\n if (binding.source) {\n return element.source === binding.source;\n }\n\n if (binding.sourceExpression) {\n return element.sourceExpression === binding.sourceExpression;\n }\n }\n\n // find based variables / local combination\n if (binding.variables) {\n return element.variables === 'all' && (\n binding.variables !== 'local' || element.local\n );\n }\n}\n","'use strict';\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar extensionElementsEntry = require('./ExtensionElements'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n elementHelper = require('../../../../helper/ElementHelper'),\n ImplementationTypeHelper = require('../../../../helper/ImplementationTypeHelper');\n\n\nfunction getListeners(bo, type) {\n return bo && extensionElementsHelper.getExtensionElements(bo, type) || [];\n}\n\nvar HARLEQUIN_EXECUTION_LISTENER_ELEMENT = 'harlequin:ExecutionListener';\nvar HARLEQUIN_TASK_LISTENER_ELEMENT = 'harlequin:TaskListener';\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var LISTENER_TYPE_LABEL = {\n class: translate('Java Class'),\n expression: translate('Expression'),\n delegateExpression: translate('Delegate Expression'),\n script: translate('Script')\n };\n\n var bo;\n\n var result = {\n getSelectedListener: getSelectedListener\n };\n\n var entries = result.entries = [];\n\n var isSequenceFlow = ImplementationTypeHelper.isSequenceFlow(element);\n\n function getSelectedListener(element, node) {\n var selection = (executionListenerEntry && executionListenerEntry.getSelected(element, node)) || { idx: -1 };\n\n var listener = getListeners(bo, HARLEQUIN_EXECUTION_LISTENER_ELEMENT)[selection.idx];\n if (!listener && taskListenerEntry) {\n selection = taskListenerEntry.getSelected(element, node);\n listener = getListeners(bo, HARLEQUIN_TASK_LISTENER_ELEMENT)[selection.idx];\n }\n return listener;\n }\n\n var setOptionLabelValue = function(type) {\n return function(element, node, option, property, value, idx) {\n var listeners = getListeners(bo, type);\n var listener = listeners[idx];\n var listenerType = ImplementationTypeHelper.getImplementationType(listener);\n\n var event = (listener.get('event')) ? listener.get('event') : '';\n\n var label = (event || '*') + ' : ' + (LISTENER_TYPE_LABEL[listenerType] || '');\n\n option.text = label;\n };\n };\n\n var newElement = function(element, type, initialEvent) {\n return function(element, extensionElements, value) {\n var props = {\n event: initialEvent,\n class: ''\n };\n\n var newElem = elementHelper.createElement(type, props, extensionElements, bpmnFactory);\n\n return cmdHelper.addElementsTolist(element, extensionElements, 'values', [ newElem ]);\n };\n };\n\n var removeElement = function(element, type) {\n return function(element, extensionElements, value, idx) {\n var listeners = getListeners(bo, type);\n var listener = listeners[idx];\n if (listener) {\n return extensionElementsHelper.removeEntry(bo, element, listener);\n }\n };\n };\n\n\n // Execution Listener\n\n if (is(element, 'bpmn:FlowElement') || is(element, 'bpmn:Process') || is(element, 'bpmn:Participant')) {\n bo = getBusinessObject(element);\n if (is(element, 'bpmn:Participant')) {\n element = element.processRef;\n bo = bo.get('processRef');\n }\n\n if (bo) {\n\n var executionListenerEntry = extensionElementsEntry(element, bpmnFactory, {\n id : 'executionListeners',\n label : translate('Execution Listener'),\n modelProperty: 'name',\n idGeneration: 'false',\n reference: 'processRef',\n\n createExtensionElement: newElement(element, HARLEQUIN_EXECUTION_LISTENER_ELEMENT, (isSequenceFlow) ? 'take' : 'start'),\n removeExtensionElement: removeElement(element, HARLEQUIN_EXECUTION_LISTENER_ELEMENT),\n\n getExtensionElements: function(element) {\n return getListeners(bo, HARLEQUIN_EXECUTION_LISTENER_ELEMENT);\n },\n\n onSelectionChange: function(element, node, event, scope) {\n taskListenerEntry && taskListenerEntry.deselect(element, node);\n },\n\n setOptionLabelValue: setOptionLabelValue(HARLEQUIN_EXECUTION_LISTENER_ELEMENT)\n\n });\n entries.push(executionListenerEntry);\n\n }\n }\n\n\n // Task Listener\n\n if (is(element, 'bpmn:UserTask')) {\n bo = getBusinessObject(element);\n\n var taskListenerEntry = extensionElementsEntry(element, bpmnFactory, {\n id : 'taskListeners',\n label : translate('Task Listener'),\n modelProperty: 'name',\n idGeneration: 'false',\n\n createExtensionElement: newElement(element, HARLEQUIN_TASK_LISTENER_ELEMENT, 'create'),\n removeExtensionElement: removeElement(element, HARLEQUIN_TASK_LISTENER_ELEMENT),\n\n getExtensionElements: function(element) {\n return getListeners(bo, HARLEQUIN_TASK_LISTENER_ELEMENT);\n },\n\n onSelectionChange: function(element, node, event, scope) {\n executionListenerEntry.deselect(element, node);\n },\n\n setOptionLabelValue: setOptionLabelValue(HARLEQUIN_TASK_LISTENER_ELEMENT)\n\n });\n entries.push(taskListenerEntry);\n }\n\n return result;\n\n};\n","'use strict';\n\nvar ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper'),\n InputOutputHelper = require('../../../helper/InputOutputHelper');\n\nvar utils = require('../../../Utils'),\n escapeHTML = utils.escapeHTML,\n triggerClickEvent = utils.triggerClickEvent;\n\nvar implementationType = require('./implementation/ImplementationType'),\n delegate = require('./implementation/Delegate'),\n external = require('./implementation/External'),\n callable = require('./implementation/Callable'),\n resultVariable = require('./implementation/ResultVariable');\n\nvar entryFactory = require('../../../factory/EntryFactory');\n\nvar domQuery = require('min-dom').query,\n domClosest = require('min-dom').closest,\n domClasses = require('min-dom').classes;\n\nfunction getImplementationType(element) {\n return ImplementationTypeHelper.getImplementationType(element);\n}\n\nfunction getBusinessObject(element) {\n return ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n}\n\nfunction isDmnCapable(element) {\n return ImplementationTypeHelper.isDmnCapable(element);\n}\n\nfunction isExternalCapable(element) {\n return ImplementationTypeHelper.isExternalCapable(element);\n}\n\nfunction isServiceTaskLike(element) {\n return ImplementationTypeHelper.isServiceTaskLike(element);\n}\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n if (!isServiceTaskLike(getBusinessObject(element))) {\n return;\n }\n\n var hasDmnSupport = isDmnCapable(element);\n var hasExternalSupport = isExternalCapable(getBusinessObject(element));\n\n // implementation type ////////////////////////////////////\n\n group.entries = group.entries.concat(implementationType(element, bpmnFactory, {\n getBusinessObject: getBusinessObject,\n getImplementationType: getImplementationType,\n hasDmnSupport: hasDmnSupport,\n hasExternalSupport: hasExternalSupport,\n hasServiceTaskLikeSupport: true\n }, translate));\n\n\n // delegate (class, expression, delegateExpression) //////////\n\n group.entries = group.entries.concat(delegate(element, bpmnFactory, {\n getBusinessObject: getBusinessObject,\n getImplementationType: getImplementationType\n }, translate));\n\n\n // result variable /////////////////////////////////////////\n\n group.entries = group.entries.concat(resultVariable(element, bpmnFactory, {\n getBusinessObject: getBusinessObject,\n getImplementationType: getImplementationType,\n hideResultVariable: function(element, node) {\n return getImplementationType(element) !== 'expression';\n }\n }, translate));\n\n // external //////////////////////////////////////////////////\n\n if (hasExternalSupport) {\n group.entries = group.entries.concat(external(element, bpmnFactory, {\n getBusinessObject: getBusinessObject,\n getImplementationType: getImplementationType\n }, translate));\n }\n\n\n // dmn ////////////////////////////////////////////////////////\n\n if (hasDmnSupport) {\n group.entries = group.entries.concat(callable(element, bpmnFactory, {\n getCallableType: getImplementationType\n }, translate));\n }\n\n\n // connector ////////////////////////////////////////////////\n\n var isConnector = function(element) {\n return getImplementationType(element) === 'connector';\n };\n\n group.entries.push(entryFactory.link(translate, {\n id: 'configureConnectorLink',\n buttonLabel: translate('Configure Connector'),\n handleClick: function(element, node, event) {\n\n var connectorTabEl = getTabNode(node, 'connector');\n\n if (connectorTabEl) {\n triggerClickEvent(connectorTabEl);\n }\n\n // suppress actual link click\n return false;\n },\n showLink: function(element, node) {\n var link = domQuery('a', node);\n link.textContent = '';\n\n domClasses(link).remove('bpp-error-message');\n\n if (isConnector(element)) {\n var connectorId = InputOutputHelper.getConnector(element).get('connectorId');\n if (connectorId) {\n link.textContent = translate('Configure Connector');\n } else {\n link.innerHTML = ' ' + escapeHTML(translate('Must configure Connector'));\n domClasses(link).add('bpp-error-message');\n }\n\n return true;\n }\n\n return false;\n }\n }));\n\n};\n\n\n\n// helpers ///////////////////////////\n\nfunction getTabNode(el, id) {\n var containerEl = domClosest(el, '.bpp-properties-panel');\n\n return domQuery('a[data-tab-target=\"' + id + '\"]', containerEl);\n}","'use strict';\n\nvar forEach = require('lodash/forEach');\n\n/**\n * A handler that implements a BPMN 2.0 property update\n * for business object lists which are not represented in the\n * diagram.\n *\n * This is useful in the context of the properties panel in\n * order to update child elements of elements visible in\n * the diagram.\n *\n * Example: perform an update of a specific event definition\n * of an intermediate event.\n *\n * @class\n * @constructor\n */\nfunction UpdateBusinessObjectListHandler(elementRegistry, bpmnFactory) {\n this._elementRegistry = elementRegistry;\n this._bpmnFactory = bpmnFactory;\n}\n\nUpdateBusinessObjectListHandler.$inject = [ 'elementRegistry', 'bpmnFactory' ];\n\nmodule.exports = UpdateBusinessObjectListHandler;\n\nfunction ensureNotNull(prop, name) {\n if (!prop) {\n throw new Error(name + 'required');\n }\n return prop;\n}\n\n// api /////////////////////////////////////////////\n\n/**\n * Updates a element under a provided parent.\n */\nUpdateBusinessObjectListHandler.prototype.execute = function(context) {\n\n var currentObject = ensureNotNull(context.currentObject, 'currentObject'),\n propertyName = ensureNotNull(context.propertyName, 'propertyName'),\n updatedObjectList = context.updatedObjectList,\n objectsToRemove = context.objectsToRemove || [],\n objectsToAdd = context.objectsToAdd || [],\n objectsToPrepend = context.objectsToPrepend || [],\n changed = [ context.element], // this will not change any diagram-js elements\n referencePropertyName;\n\n if (context.referencePropertyName) {\n referencePropertyName = context.referencePropertyName;\n }\n\n var objectList = currentObject[propertyName];\n\n // adjust array reference in the parent business object\n context.previousList = currentObject[propertyName];\n\n if (updatedObjectList) {\n currentObject[propertyName] = updatedObjectList;\n } else {\n\n // start with objects to prepend\n var listCopy = objectsToPrepend.slice();\n\n // remove all objects which should be removed\n forEach(objectList, function(object) {\n if (objectsToRemove.indexOf(object) == -1) {\n listCopy.push(object);\n }\n });\n\n // add all objects which should be added\n listCopy = listCopy.concat(objectsToAdd);\n\n // set property to new list\n if (listCopy.length > 0 || !referencePropertyName) {\n\n // as long as there are elements in the list update the list\n currentObject[propertyName] = listCopy;\n } else if (referencePropertyName) {\n\n // remove the list when it is empty\n var parentObject = currentObject.$parent;\n parentObject.set(referencePropertyName, undefined);\n }\n }\n\n context.changed = changed;\n\n // indicate changed on objects affected by the update\n return changed;\n};\n\n/**\n * Reverts the update\n *\n * @method CreateBusinessObjectListHandler#revert\n *\n * @param {Object} context\n *\n * @return {djs.mode.Base} the updated element\n */\nUpdateBusinessObjectListHandler.prototype.revert = function(context) {\n\n var currentObject = context.currentObject,\n propertyName = context.propertyName,\n previousList = context.previousList,\n parentObject = currentObject.$parent;\n\n if (context.referencePropertyName) {\n parentObject.set(context.referencePropertyName, currentObject);\n }\n\n // remove new element\n currentObject.set(propertyName, previousList);\n\n return context.changed;\n};\n","'use strict';\n\nvar textField = require('./TextInputEntryFactory');\n\n/**\n * This function is a wrapper around TextInputEntryFactory.\n * It adds functionality to cache an invalid value entered in the\n * text input, instead of setting it on the business object.\n */\nvar validationAwareTextField = function(translate, options, defaultParameters) {\n\n var modelProperty = options.modelProperty;\n\n defaultParameters.get = function(element, node) {\n var value = this.__lastInvalidValue;\n\n delete this.__lastInvalidValue;\n\n var properties = {};\n\n properties[modelProperty] = value !== undefined ? value : options.getProperty(element, node);\n\n return properties;\n };\n\n defaultParameters.set = function(element, values, node) {\n var validationErrors = validate.apply(this, [ element, values, node ]),\n propertyValue = values[modelProperty];\n\n // make sure we do not update the id\n if (validationErrors && validationErrors[modelProperty]) {\n this.__lastInvalidValue = propertyValue;\n\n return options.setProperty(element, {}, node);\n } else {\n var properties = {};\n\n properties[modelProperty] = propertyValue;\n\n return options.setProperty(element, properties, node);\n }\n };\n\n var validate = defaultParameters.validate = function(element, values, node) {\n var value = values[modelProperty] || this.__lastInvalidValue;\n\n var property = {};\n property[modelProperty] = value;\n\n return options.validate(element, property, node);\n };\n\n return textField(translate, options, defaultParameters);\n};\n\nmodule.exports = validationAwareTextField;\n","var map = {\n\t\"./en.json\": \"edd4\",\n\t\"./es.json\": \"a306\",\n\t\"./fr.json\": \"f693\",\n\t\"./pt.json\": \"5d67\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"49f8\";","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var jobPriorityEntry = entryFactory.textField(translate, {\n id: 'jobPriority',\n label: translate('Job Priority'),\n modelProperty: 'jobPriority',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return {\n jobPriority: bo.get('harlequin:jobPriority')\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:jobPriority': values.jobPriority || undefined\n });\n }\n\n });\n\n return [ jobPriorityEntry ];\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./alltasks.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar assign = require('lodash/assign');\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n cmdHelper = require('../../../../helper/CmdHelper'),\n elementHelper = require('../../../../helper/ElementHelper');\n\nvar findExtension = require('../Helper').findExtension,\n findExtensions = require('../Helper').findExtensions,\n findInputParameter = require('../Helper').findInputParameter,\n findOutputParameter = require('../Helper').findOutputParameter,\n findHarlequinProperty = require('../Helper').findHarlequinProperty,\n findHarlequinInOut = require('../Helper').findHarlequinInOut,\n findHarlequinErrorEventDefinition = require('../Helper').findHarlequinErrorEventDefinition;\n\nvar createHarlequinProperty = require('../CreateHelper').createHarlequinProperty,\n createInputParameter = require('../CreateHelper').createInputParameter,\n createOutputParameter = require('../CreateHelper').createOutputParameter,\n createHarlequinIn = require('../CreateHelper').createHarlequinIn,\n createHarlequinOut = require('../CreateHelper').createHarlequinOut,\n createHarlequinInWithBusinessKey = require('../CreateHelper').createHarlequinInWithBusinessKey,\n createHarlequinFieldInjection = require('../CreateHelper').createHarlequinFieldInjection,\n createHarlequinErrorEventDefinition = require('../CreateHelper').createHarlequinErrorEventDefinition,\n createError = require('../CreateHelper').createError;\n\nvar handleLegacyScopes = require('../services/handleLegacyScopes');\n\nvar getRoot = require('../../../../Utils').getRoot;\n\nvar PROPERTY_TYPE = 'property',\n HARLEQUIN_PROPERTY_TYPE = 'harlequin:property',\n HARLEQUIN_INPUT_PARAMETER_TYPE = 'harlequin:inputParameter',\n HARLEQUIN_OUTPUT_PARAMETER_TYPE = 'harlequin:outputParameter',\n HARLEQUIN_IN_TYPE = 'harlequin:In',\n HARLEQUIN_OUT_TYPE = 'harlequin:Out',\n HARLEQUIN_IN_BUSINESS_KEY_TYPE = 'harlequin:In:businessKey',\n HARLEQUIN_EXECUTION_LISTENER_TYPE = 'harlequin:ExecutionListener',\n HARLEQUIN_FIELD = 'harlequin:field',\n HARLEQUIN_ERROR_EVENT_DEFINITION = 'harlequin:errorEventDefinition';\n\nvar BASIC_MODDLE_TYPES = [\n 'Boolean',\n 'Integer',\n 'String'\n];\n\nvar EXTENSION_BINDING_TYPES = [\n HARLEQUIN_PROPERTY_TYPE,\n HARLEQUIN_INPUT_PARAMETER_TYPE,\n HARLEQUIN_OUTPUT_PARAMETER_TYPE,\n HARLEQUIN_IN_TYPE,\n HARLEQUIN_OUT_TYPE,\n HARLEQUIN_IN_BUSINESS_KEY_TYPE,\n HARLEQUIN_FIELD,\n HARLEQUIN_ERROR_EVENT_DEFINITION\n];\n\nvar IO_BINDING_TYPES = [\n HARLEQUIN_INPUT_PARAMETER_TYPE,\n HARLEQUIN_OUTPUT_PARAMETER_TYPE\n];\n\nvar IN_OUT_BINDING_TYPES = [\n HARLEQUIN_IN_TYPE,\n HARLEQUIN_OUT_TYPE,\n HARLEQUIN_IN_BUSINESS_KEY_TYPE\n];\n\n/**\n * Injects custom properties into the given group.\n *\n * @param {djs.model.Base} element\n * @param {ElementTemplates} elementTemplates\n * @param {BpmnFactory} bpmnFactory\n * @param {Function} translate\n */\nmodule.exports = function(element, elementTemplates, bpmnFactory, translate) {\n\n var template = elementTemplates.get(element);\n\n if (!template) {\n return [];\n }\n\n var renderCustomField = function(id, p, idx) {\n var propertyType = p.type;\n\n var entryOptions = {\n id: id,\n description: p.description,\n label: p.label ? translate(p.label) : p.label,\n modelProperty: id,\n get: propertyGetter(id, p),\n set: propertySetter(id, p, bpmnFactory),\n validate: propertyValidator(id, p, translate)\n };\n\n var entry;\n\n if (!propertyType) {\n propertyType = getDefaultType(p);\n }\n\n if (propertyType === 'Boolean') {\n entry = entryFactory.checkbox(translate, entryOptions);\n }\n\n if (propertyType === 'String') {\n entry = entryFactory.textField(translate, entryOptions);\n }\n\n if (propertyType === 'Text') {\n entry = entryFactory.textBox(translate, entryOptions);\n }\n\n if (propertyType === 'Dropdown') {\n entryOptions.selectOptions = p.choices;\n\n entry = entryFactory.selectBox(translate, entryOptions);\n }\n\n return entry;\n };\n\n var groups = [];\n var id, entry;\n\n var customFieldsGroup = {\n id: 'customField',\n label: translate('Custom Fields'),\n entries: []\n };\n template.properties.forEach(function(p, idx) {\n\n id = 'custom-' + template.id + '-' + idx;\n\n entry = renderCustomField(id, p, idx);\n if (entry) {\n customFieldsGroup.entries.push(entry);\n }\n });\n if (customFieldsGroup.entries.length > 0) {\n groups.push(customFieldsGroup);\n }\n\n if (template.scopes) {\n\n handleLegacyScopes(template.scopes).forEach(function(scope) {\n\n var scopeType = scope.type;\n\n var idScopeName = scopeType.replace(/:/g, '_');\n\n var customScopeFieldsGroup = {\n id: 'customField-' + idScopeName,\n label: translate('Custom Fields for scope: ') + scopeType,\n entries: []\n };\n\n scope.properties.forEach(function(p, idx) {\n\n var propertyId = 'custom-' + template.id + '-' + idScopeName + '-' + idx;\n\n var scopedProperty = propertyWithScope(p, scope);\n\n entry = renderCustomField(propertyId, scopedProperty, idx);\n if (entry) {\n customScopeFieldsGroup.entries.push(entry);\n }\n });\n\n if (customScopeFieldsGroup.entries.length > 0) {\n groups.push(customScopeFieldsGroup);\n }\n });\n }\n\n return groups;\n};\n\n\n// getters, setters and validators ///////////////\n\n\n/**\n * Return a getter that retrieves the given property.\n *\n * @param {String} name\n * @param {PropertyDescriptor} property\n *\n * @return {Function}\n */\nfunction propertyGetter(name, property) {\n\n /* getter */\n return function get(element) {\n var value = getPropertyValue(element, property);\n\n return objectWithKey(name, value);\n };\n}\n\n/**\n * Return a setter that updates the given property.\n *\n * @param {String} name\n * @param {PropertyDescriptor} property\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {Function}\n */\nfunction propertySetter(name, property, bpmnFactory) {\n\n /* setter */\n return function set(element, values) {\n\n var value = values[name];\n\n return setPropertyValue(element, property, value, bpmnFactory);\n };\n}\n\n/**\n * Return a validator that ensures the property is ok.\n *\n * @param {String} name\n * @param {PropertyDescriptor} property\n * @param {Function} translate\n *\n * @return {Function}\n */\nfunction propertyValidator(name, property, translate) {\n\n /* validator */\n return function validate(element, values) {\n var value = values[name];\n\n var error = validateValue(value, property, translate);\n\n if (error) {\n return objectWithKey(name, error);\n }\n };\n}\n\n\n// get, set and validate helpers ///////////////////\n\n/**\n * Return the value of the specified property descriptor,\n * on the passed diagram element.\n *\n * @param {djs.model.Base} element\n * @param {PropertyDescriptor} property\n *\n * @return {Any}\n */\nfunction getPropertyValue(element, property) {\n\n var bo = getBusinessObject(element);\n\n var binding = property.binding,\n scope = property.scope;\n\n var bindingType = binding.type,\n bindingName = binding.name;\n\n var propertyValue = property.value || '';\n\n if (scope) {\n bo = findScopeElement(bo, scope);\n if (!bo) {\n return propertyValue;\n }\n }\n\n // property\n if (bindingType === 'property') {\n\n var value = bo.get(bindingName);\n\n if (bindingName === 'conditionExpression') {\n if (value) {\n return value.body;\n } else {\n\n // return defined default\n return propertyValue;\n }\n } else {\n\n // return value; default to defined default\n return typeof value !== 'undefined' ? value : propertyValue;\n }\n }\n\n var harlequinProperties,\n harlequinProperty;\n\n if (bindingType === HARLEQUIN_PROPERTY_TYPE) {\n if (scope) {\n harlequinProperties = bo.get('properties');\n } else {\n harlequinProperties = findExtension(bo, 'harlequin:Properties');\n }\n\n if (harlequinProperties) {\n harlequinProperty = findHarlequinProperty(harlequinProperties, binding);\n\n if (harlequinProperty) {\n return harlequinProperty.value;\n }\n }\n\n return propertyValue;\n }\n\n var inputOutput,\n ioParameter;\n\n if (IO_BINDING_TYPES.indexOf(bindingType) !== -1) {\n\n if (scope) {\n inputOutput = bo.get('inputOutput');\n } else {\n inputOutput = findExtension(bo, 'harlequin:InputOutput');\n }\n\n if (!inputOutput) {\n\n // ioParameter cannot exist yet, return property value\n return propertyValue;\n }\n }\n\n // Harlequin input parameter\n if (bindingType === HARLEQUIN_INPUT_PARAMETER_TYPE) {\n ioParameter = findInputParameter(inputOutput, binding);\n\n if (ioParameter) {\n if (binding.scriptFormat) {\n if (ioParameter.definition) {\n return ioParameter.definition.value;\n }\n } else {\n return ioParameter.value || '';\n }\n }\n\n return propertyValue;\n }\n\n // Harlequin output parameter\n if (binding.type === HARLEQUIN_OUTPUT_PARAMETER_TYPE) {\n ioParameter = findOutputParameter(inputOutput, binding);\n\n if (ioParameter) {\n return ioParameter.name;\n }\n\n return propertyValue;\n }\n\n\n var ioElement;\n\n if (IN_OUT_BINDING_TYPES.indexOf(bindingType) != -1) {\n ioElement = findHarlequinInOut(bo, binding);\n\n if (ioElement) {\n if (bindingType === HARLEQUIN_IN_BUSINESS_KEY_TYPE) {\n return ioElement.businessKey;\n } else\n if (bindingType === HARLEQUIN_OUT_TYPE) {\n return ioElement.target;\n } else\n if (bindingType === HARLEQUIN_IN_TYPE) {\n return ioElement[binding.expression ? 'sourceExpression' : 'source'];\n }\n }\n\n return propertyValue;\n }\n\n if (bindingType === HARLEQUIN_EXECUTION_LISTENER_TYPE) {\n var executionListener;\n if (scope) {\n executionListener = bo.get('executionListener');\n } else {\n executionListener = findExtension(bo, 'harlequin:ExecutionListener');\n }\n\n return executionListener.script.value;\n }\n\n var fieldInjection;\n if (HARLEQUIN_FIELD === bindingType) {\n var fieldInjections = findExtensions(bo, [ 'harlequin:Field' ]);\n fieldInjections.forEach(function(item) {\n if (item.name === binding.name) {\n fieldInjection = item;\n }\n });\n if (fieldInjection) {\n return fieldInjection.string || fieldInjection.expression;\n } else {\n return '';\n }\n }\n\n var errorEventDefinition;\n if (HARLEQUIN_ERROR_EVENT_DEFINITION === bindingType) {\n errorEventDefinition = findHarlequinErrorEventDefinition(bo, binding.errorRef);\n\n if (errorEventDefinition) {\n return errorEventDefinition.expression;\n } else {\n return '';\n }\n }\n\n throw unknownPropertyBinding(property);\n}\n\nmodule.exports.getPropertyValue = getPropertyValue;\n\n\n/**\n * Return an update operation that changes the diagram\n * element's custom property to the given value.\n *\n * The response of this method will be processed via\n * {@link PropertiesPanel#applyChanges}.\n *\n * @param {djs.model.Base} element\n * @param {PropertyDescriptor} property\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {Object|Array} results to be processed\n */\nfunction setPropertyValue(element, property, value, bpmnFactory) {\n var bo = getBusinessObject(element);\n\n var binding = property.binding,\n scope = property.scope;\n\n var bindingType = binding.type,\n bindingName = binding.name;\n\n var rootElement = getRoot(bo);\n\n var propertyValue;\n\n var updates = [];\n\n var extensionElements;\n\n if (EXTENSION_BINDING_TYPES.indexOf(bindingType) !== -1) {\n extensionElements = bo.get('extensionElements');\n\n // create extension elements, if they do not exist (yet)\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', null, element, bpmnFactory);\n\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, objectWithKey('extensionElements', extensionElements)\n ));\n }\n }\n\n if (scope) {\n bo = findScopeElement(bo, scope);\n if (!bo) {\n\n // bpmn:Error\n if (scope.name === 'bpmn:Error') {\n bo = createError(scope.id, rootElement, bpmnFactory);\n\n updates.push(cmdHelper.addElementsTolist(\n bo, rootElement, 'rootElements', [ bo ]\n ));\n } else {\n bo = elementHelper.createElement(scope.name, null, element, bpmnFactory);\n\n updates.push(cmdHelper.addElementsTolist(\n bo, extensionElements, 'values', [ bo ]\n ));\n }\n }\n }\n\n // property\n if (bindingType === 'property') {\n\n if (bindingName === 'conditionExpression') {\n\n propertyValue = elementHelper.createElement('bpmn:FormalExpression', {\n body: value,\n language: binding.scriptFormat\n }, bo, bpmnFactory);\n } else {\n\n var moddlePropertyDescriptor = bo.$descriptor.propertiesByName[bindingName];\n\n var moddleType = moddlePropertyDescriptor.type;\n\n // make sure we only update String, Integer, Real and\n // Boolean properties (do not accidentally override complex objects...)\n if (BASIC_MODDLE_TYPES.indexOf(moddleType) === -1) {\n throw new Error('cannot set moddle type <' + moddleType + '>');\n }\n\n if (moddleType === 'Boolean') {\n propertyValue = !!value;\n } else\n if (moddleType === 'Integer') {\n propertyValue = parseInt(value, 10);\n\n if (isNaN(propertyValue)) {\n\n // do not write NaN value\n propertyValue = undefined;\n }\n } else {\n propertyValue = value;\n }\n }\n\n if (propertyValue !== undefined) {\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, objectWithKey(bindingName, propertyValue)\n ));\n }\n }\n\n // harlequin:property\n var harlequinProperties,\n existingHarlequinProperty,\n newHarlequinProperty;\n\n if (bindingType === HARLEQUIN_PROPERTY_TYPE) {\n\n if (scope) {\n harlequinProperties = bo.get('properties');\n } else {\n harlequinProperties = findExtension(extensionElements, 'harlequin:Properties');\n }\n\n if (!harlequinProperties) {\n harlequinProperties = elementHelper.createElement('harlequin:Properties', null, bo, bpmnFactory);\n\n if (scope) {\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, { properties: harlequinProperties }\n ));\n }\n else {\n updates.push(cmdHelper.addElementsTolist(\n element, extensionElements, 'values', [ harlequinProperties ]\n ));\n }\n }\n\n existingHarlequinProperty = findHarlequinProperty(harlequinProperties, binding);\n\n newHarlequinProperty = createHarlequinProperty(binding, value, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n harlequinProperties,\n 'values',\n null,\n [ newHarlequinProperty ],\n existingHarlequinProperty ? [ existingHarlequinProperty ] : []\n ));\n }\n\n // harlequin:inputParameter\n // harlequin:outputParameter\n var inputOutput,\n existingIoParameter,\n newIoParameter;\n\n if (IO_BINDING_TYPES.indexOf(bindingType) !== -1) {\n\n if (scope) {\n inputOutput = bo.get('inputOutput');\n } else {\n inputOutput = findExtension(extensionElements, 'harlequin:InputOutput');\n }\n\n // create inputOutput element, if it do not exist (yet)\n if (!inputOutput) {\n inputOutput = elementHelper.createElement('harlequin:InputOutput', null, bo, bpmnFactory);\n\n if (scope) {\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, { inputOutput: inputOutput }\n ));\n }\n else {\n updates.push(cmdHelper.addElementsTolist(\n element, extensionElements, 'values', inputOutput\n ));\n }\n }\n }\n\n if (bindingType === HARLEQUIN_INPUT_PARAMETER_TYPE) {\n\n existingIoParameter = findInputParameter(inputOutput, binding);\n\n newIoParameter = createInputParameter(binding, value, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n inputOutput,\n 'inputParameters',\n null,\n [ newIoParameter ],\n existingIoParameter ? [ existingIoParameter ] : []\n ));\n }\n\n if (bindingType === HARLEQUIN_OUTPUT_PARAMETER_TYPE) {\n\n existingIoParameter = findOutputParameter(inputOutput, binding);\n\n newIoParameter = createOutputParameter(binding, value, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n inputOutput,\n 'outputParameters',\n null,\n [ newIoParameter ],\n existingIoParameter ? [ existingIoParameter ] : []\n ));\n }\n\n\n // harlequin:In\n // harlequin:Out\n // harlequin:In:businessKey\n var existingInOut,\n newInOut;\n\n if (IN_OUT_BINDING_TYPES.indexOf(bindingType) !== -1) {\n\n existingInOut = findHarlequinInOut(bo, binding);\n\n if (bindingType === HARLEQUIN_IN_TYPE) {\n newInOut = createHarlequinIn(binding, value, bpmnFactory);\n } else\n if (bindingType === HARLEQUIN_OUT_TYPE) {\n newInOut = createHarlequinOut(binding, value, bpmnFactory);\n } else {\n newInOut = createHarlequinInWithBusinessKey(binding, value, bpmnFactory);\n }\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n null,\n [ newInOut ],\n existingInOut ? [ existingInOut ] : []\n ));\n }\n\n if (bindingType === HARLEQUIN_FIELD) {\n var existingFieldInjections = findExtensions(bo, [ 'harlequin:Field' ]);\n var newFieldInjections = [];\n\n if (existingFieldInjections.length > 0) {\n existingFieldInjections.forEach(function(item) {\n if (item.name === binding.name) {\n newFieldInjections.push(createHarlequinFieldInjection(binding, value, bpmnFactory));\n } else {\n newFieldInjections.push(item);\n }\n });\n } else {\n newFieldInjections.push(createHarlequinFieldInjection(binding, value, bpmnFactory));\n }\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n null,\n newFieldInjections,\n existingFieldInjections ? existingFieldInjections : []\n ));\n }\n\n // harlequin:errorEventDefinition\n if (bindingType === HARLEQUIN_ERROR_EVENT_DEFINITION) {\n var existingErrorEventDefinition = findHarlequinErrorEventDefinition(bo, binding.errorRef);\n\n if (existingErrorEventDefinition) {\n updates.push(cmdHelper.updateBusinessObject(\n element, existingErrorEventDefinition, { expression: value }\n ));\n } else {\n\n var newError = createError(binding.errorRef, rootElement, bpmnFactory),\n newEventDefinition =\n createHarlequinErrorEventDefinition(binding, value, newError, extensionElements, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n rootElement,\n 'rootElements',\n null,\n [ newError ],\n []\n ));\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n null,\n [ newEventDefinition ],\n []\n ));\n }\n\n }\n\n if (updates.length) {\n return updates;\n }\n\n // quick warning for better debugging\n console.warn('no update', element, property, value);\n}\n\nmodule.exports.setPropertyValue = setPropertyValue;\n\n/**\n * Validate value of a given property.\n *\n * @param {String} value\n * @param {PropertyDescriptor} property\n * @param {Function} translate\n *\n * @return {Object} with validation errors\n */\nfunction validateValue(value, property, translate) {\n\n var constraints = property.constraints || {};\n\n if (constraints.notEmpty && isEmpty(value)) {\n return translate('Must not be empty');\n }\n\n if (constraints.maxLength && value.length > constraints.maxLength) {\n return translate('Must have max length {length}', { length: constraints.maxLength });\n }\n\n if (constraints.minLength && value.length < constraints.minLength) {\n return translate('Must have min length {length}', { length: constraints.minLength });\n }\n\n var pattern = constraints.pattern,\n message;\n\n if (pattern) {\n\n if (typeof pattern !== 'string') {\n message = pattern.message;\n pattern = pattern.value;\n }\n\n if (!matchesPattern(value, pattern)) {\n return message || translate('Must match pattern {pattern}', { pattern: pattern });\n }\n }\n}\n\n\n// misc helpers ///////////////////////////////\n\nfunction propertyWithScope(property, scope) {\n var scopeName = scope.type,\n scopeId = scope.id;\n\n if (!scopeName) {\n return property;\n }\n\n return assign({}, property, {\n scope: {\n name: scopeName,\n id: scopeId\n }\n });\n}\n\n/**\n * Return an object with a single key -> value association.\n *\n * @param {String} key\n * @param {Any} value\n *\n * @return {Object}\n */\nfunction objectWithKey(key, value) {\n var obj = {};\n\n obj[key] = value;\n\n return obj;\n}\n\n/**\n * Does the given string match the specified pattern?\n *\n * @param {String} str\n * @param {String} pattern\n *\n * @return {Boolean}\n */\nfunction matchesPattern(str, pattern) {\n var regexp = new RegExp(pattern);\n\n return regexp.test(str);\n}\n\nfunction isEmpty(str) {\n return !str || /^\\s*$/.test(str);\n}\n\n/**\n * Create a new {@link Error} indicating an unknown\n * property binding.\n *\n * @param {PropertyDescriptor} property\n *\n * @return {Error}\n */\nfunction unknownPropertyBinding(property) {\n var binding = property.binding;\n\n return new Error('unknown binding: <' + binding.type + '>');\n}\n\nfunction getDefaultType(property) {\n var binding = property.binding,\n bindingType = binding.type;\n\n if (bindingType === PROPERTY_TYPE ||\n bindingType === HARLEQUIN_PROPERTY_TYPE ||\n bindingType === HARLEQUIN_IN_TYPE ||\n bindingType === HARLEQUIN_IN_BUSINESS_KEY_TYPE ||\n bindingType === HARLEQUIN_OUT_TYPE ||\n bindingType === HARLEQUIN_FIELD) {\n return 'String';\n }\n\n if (bindingType === HARLEQUIN_EXECUTION_LISTENER_TYPE) {\n return 'Hidden';\n }\n}\n\nfunction findScopeElement(businessObject, scope) {\n\n var scopeName = scope.name,\n scopeId = scope.id;\n\n if (scopeName === 'bpmn:Error') {\n\n // retrieve error over referenced error event definition\n var errorEventDefinition = findHarlequinErrorEventDefinition(businessObject, scopeId);\n\n if (errorEventDefinition) {\n return errorEventDefinition.errorRef;\n }\n }\n\n return findExtension(businessObject, scopeName);\n}","'use strict';\n\nvar domify = require('min-dom').domify;\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\nvar bind = require('lodash/bind');\n\n/**\n * An entry that renders a clickable link.\n *\n * A passed {@link options#handleClick} handler is responsible\n * to process the click.\n *\n * The link may be conditionally shown or hidden. This can be\n * controlled via the {@link options.showLink}.\n *\n * @param {Object} options\n * @param {String} options.id\n * @param {String} [options.buttonLabel]\n * @param {Function} options.handleClick\n * @param {Function} [options.showLink] returning false to hide link\n * @param {String} [options.description]\n *\n * @example\n *\n * var linkEntry = link({\n * id: 'foo',\n * description: 'Some Description',\n * handleClick: function(element, node, event) { ... },\n * showLink: function(element, node) { ... }\n * });\n *\n * @return {Entry} the newly created entry\n */\nfunction link(translate, options) {\n\n var id = options.id,\n buttonLabel = options.buttonLabel || id,\n showLink = options.showLink,\n handleClick = options.handleClick,\n description = options.description,\n label = options.label;\n\n if (showLink && typeof showLink !== 'function') {\n throw new Error('options.showLink must be a function');\n }\n\n if (typeof handleClick !== 'function') {\n throw new Error('options.handleClick must be a function');\n }\n\n var resource = {\n id: id,\n html: document.createDocumentFragment()\n };\n\n if (label) {\n resource.html.appendChild(domify(''));\n }\n\n resource.html.appendChild(domify(''));\n\n\n // add description below link entry field\n if (description) {\n resource.html.appendChild(entryFieldDescription(translate, description, { show: 'showLink' }));\n }\n\n resource.handleClick = bind(handleClick, resource);\n\n if (typeof showLink === 'function') {\n resource.showLink = function() {\n return showLink.apply(resource, arguments);\n };\n }\n\n return resource;\n}\n\nmodule.exports = link;\n","'use strict';\n\nvar reduce = require('lodash/transform'),\n is = require('../../../process-builder/lib/base/BaseServices').is,\n keys = require('lodash/keys'),\n forEach = require('lodash/forEach');\n\n/**\n * A handler that implements a BPMN 2.0 property update\n * for business objects which are not represented in the\n * diagram.\n *\n * This is useful in the context of the properties panel in\n * order to update child elements of elements visible in\n * the diagram.\n *\n * Example: perform an update of a specific event definition\n * of an intermediate event.\n *\n * @class\n * @constructor\n */\nfunction UpdateBusinessObjectHandler(elementRegistry) {\n this._elementRegistry = elementRegistry;\n}\n\nUpdateBusinessObjectHandler.$inject = [ 'elementRegistry' ];\n\nmodule.exports = UpdateBusinessObjectHandler;\n\n/**\n * returns the root element\n */\nfunction getRoot(businessObject) {\n var parent = businessObject;\n while (parent.$parent) {\n parent = parent.$parent;\n }\n return parent;\n}\n\nfunction getProperties(businessObject, propertyNames) {\n return reduce(propertyNames, function(result, key) {\n result[key] = businessObject.get(key);\n return result;\n }, {});\n}\n\n\nfunction setProperties(businessObject, properties) {\n forEach(properties, function(value, key) {\n businessObject.set(key, value);\n });\n}\n\n\n// api /////////////////////////////////////////////\n\n/**\n * Updates a business object with a list of new properties\n *\n * @method UpdateBusinessObjectHandler#execute\n *\n * @param {Object} context\n * @param {djs.model.Base} context.element the element which has a child business object updated\n * @param {moddle.businessObject} context.businessObject the businessObject to update\n * @param {Object} context.properties a list of properties to set on the businessObject\n *\n * @return {Array} the updated element\n */\nUpdateBusinessObjectHandler.prototype.execute = function(context) {\n\n var element = context.element,\n businessObject = context.businessObject,\n rootElements = getRoot(businessObject).rootElements,\n referenceType = context.referenceType,\n referenceProperty = context.referenceProperty,\n changed = [ element ]; // this will not change any diagram-js elements\n\n if (!element) {\n throw new Error('element required');\n }\n\n if (!businessObject) {\n throw new Error('businessObject required');\n }\n\n var properties = context.properties,\n oldProperties = context.oldProperties || getProperties(businessObject, keys(properties));\n\n // check if there the update needs an external element for reference\n if (typeof referenceType !== 'undefined' && typeof referenceProperty !== 'undefined') {\n forEach(rootElements, function(rootElement) {\n if (is(rootElement, referenceType)) {\n if (rootElement.id === properties[referenceProperty]) {\n properties[referenceProperty] = rootElement;\n }\n }\n });\n }\n\n // update properties\n setProperties(businessObject, properties);\n\n // store old values\n context.oldProperties = oldProperties;\n context.changed = changed;\n\n // indicate changed on objects affected by the update\n return changed;\n};\n\n/**\n * Reverts the update\n *\n * @method UpdateBusinessObjectHandler#revert\n *\n * @param {Object} context\n *\n * @return {djs.mode.Base} the updated element\n */\nUpdateBusinessObjectHandler.prototype.revert = function(context) {\n\n var oldProperties = context.oldProperties,\n businessObject = context.businessObject;\n\n // update properties\n setProperties(businessObject, oldProperties);\n\n return context.changed;\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./mytasks.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n escapeHTML = require('../../../Utils').escapeHTML,\n domQuery = require('min-dom').query,\n cmdHelper = require('../../../helper/CmdHelper'),\n elementHelper = require('../../../helper/ElementHelper'),\n eventDefinitionHelper = require('../../../helper/EventDefinitionHelper'),\n scriptImplementation = require('./implementation/Script');\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n var bo = getBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n var conditionalEventDefinition = eventDefinitionHelper.getConditionalEventDefinition(element);\n\n if (!(is(element, 'bpmn:SequenceFlow') && isConditionalSource(element.source))\n && !conditionalEventDefinition) {\n return;\n }\n\n var script = scriptImplementation('language', 'body', true, translate);\n group.entries.push({\n id: 'condition',\n label: translate('Condition'),\n html: '
' +\n '' +\n '
' +\n '' +\n '
' +\n '
' +\n\n // expression\n '
' +\n '' +\n '
' +\n '' +\n '' +\n '
' +\n '
' +\n script.template +\n '
' +\n '
',\n\n get: function(element, propertyName) {\n var conditionalEventDefinition = eventDefinitionHelper.getConditionalEventDefinition(element);\n\n var conditionExpression = conditionalEventDefinition\n ? conditionalEventDefinition.condition\n : bo.conditionExpression;\n\n var values = {},\n conditionType = '';\n\n if (conditionExpression) {\n var conditionLanguage = conditionExpression.language;\n if (typeof conditionLanguage !== 'undefined') {\n conditionType = 'script';\n values = script.get(element, conditionExpression);\n } else {\n conditionType = 'expression';\n values.condition = conditionExpression.get('body');\n }\n }\n\n values.conditionType = conditionType;\n\n return values;\n\n },\n\n set: function(element, values, containerElement) {\n var conditionType = values.conditionType;\n var commands = [];\n\n var conditionProps = {\n body: undefined\n };\n\n if (conditionType === 'script') {\n conditionProps = script.set(element, values, containerElement);\n } else {\n var condition = values.condition;\n\n conditionProps.body = condition;\n }\n\n var conditionOrConditionExpression;\n\n if (conditionType) {\n conditionOrConditionExpression = elementHelper.createElement(\n 'bpmn:FormalExpression',\n conditionProps,\n conditionalEventDefinition || bo,\n bpmnFactory\n );\n\n var source = element.source;\n\n // if default-flow, remove default-property from source\n if (source && source.businessObject.default === bo) {\n commands.push(cmdHelper.updateProperties(source, { 'default': undefined }));\n }\n }\n\n var update = conditionalEventDefinition\n ? { condition: conditionOrConditionExpression }\n : { conditionExpression: conditionOrConditionExpression };\n\n commands.push(cmdHelper.updateBusinessObject(element, conditionalEventDefinition || bo, update));\n\n return commands;\n },\n\n validate: function(element, values) {\n var validationResult = {};\n\n if (!values.condition && values.conditionType === 'expression') {\n validationResult.condition = translate('Must provide a value');\n }\n else if (values.conditionType === 'script') {\n validationResult = script.validate(element, values);\n }\n\n return validationResult;\n },\n\n isExpression: function(element, inputNode) {\n var conditionType = domQuery('select[name=conditionType]', inputNode);\n if (conditionType.selectedIndex >= 0) {\n return conditionType.options[conditionType.selectedIndex].value === 'expression';\n }\n },\n\n isScript: function(element, inputNode) {\n var conditionType = domQuery('select[name=conditionType]', inputNode);\n if (conditionType.selectedIndex >= 0) {\n return conditionType.options[conditionType.selectedIndex].value === 'script';\n }\n },\n\n clear: function(element, inputNode) {\n\n // clear text input\n domQuery('input[name=condition]', inputNode).value='';\n\n return true;\n },\n\n canClear: function(element, inputNode) {\n var input = domQuery('input[name=condition]', inputNode);\n\n return input.value !== '';\n },\n\n script : script,\n\n cssClasses: [ 'bpp-textfield' ]\n });\n};\n\n\n// utilities //////////////////////////\n\nvar CONDITIONAL_SOURCES = [\n 'bpmn:Activity',\n 'bpmn:ExclusiveGateway',\n 'bpmn:InclusiveGateway',\n 'bpmn:ComplexGateway'\n];\n\nfunction isConditionalSource(element) {\n return isAny(element, CONDITIONAL_SOURCES);\n}\n","'use strict';\n\nvar reduce = require('min-dash').reduce,\n keys = require('min-dash').keys,\n forEach = require('min-dash').forEach,\n is = require('../../../base/BaseServices').is,\n getBusinessObject = require('../../../base/BaseServices').getBusinessObject;\n\n\nfunction UpdateModdlePropertiesHandler(elementRegistry) {\n this._elementRegistry = elementRegistry;\n}\n\nUpdateModdlePropertiesHandler.$inject = ['elementRegistry'];\n\nmodule.exports = UpdateModdlePropertiesHandler;\n\n\nUpdateModdlePropertiesHandler.prototype.execute = function(context) {\n\n var element = context.element,\n moddleElement = context.moddleElement,\n properties = context.properties;\n\n if (!moddleElement) {\n throw new Error(' required');\n }\n\n var changed = context.changed || this.getVisualReferences(moddleElement).concat(element);\n var oldProperties = context.oldProperties || getModdleProperties(moddleElement, keys(properties));\n\n setModdleProperties(moddleElement, properties);\n\n context.oldProperties = oldProperties;\n context.changed = changed;\n\n return changed;\n};\n\nUpdateModdlePropertiesHandler.prototype.revert = function(context) {\n var oldProperties = context.oldProperties,\n moddleElement = context.moddleElement,\n changed = context.changed;\n\n setModdleProperties(moddleElement, oldProperties);\n\n return changed;\n};\n\n/**\n * Return visual references of given moddle element within the diagram.\n *\n * @param {ModdleElement} moddleElement\n *\n * @return {Array}\n */\nUpdateModdlePropertiesHandler.prototype.getVisualReferences = function(moddleElement) {\n\n var elementRegistry = this._elementRegistry;\n\n if (is(moddleElement, 'bpmn:DataObject')) {\n return getAllDataObjectReferences(moddleElement, elementRegistry);\n }\n\n return [];\n};\n\n\n// helpers /////////////////\n\nfunction getModdleProperties(moddleElement, propertyNames) {\n return reduce(propertyNames, function(result, key) {\n result[key] = moddleElement.get(key);\n return result;\n }, {});\n}\n\nfunction setModdleProperties(moddleElement, properties) {\n forEach(properties, function(value, key) {\n moddleElement.set(key, value);\n });\n}\n\nfunction getAllDataObjectReferences(dataObject, elementRegistry) {\n return elementRegistry.filter(function(element) {\n return (\n is(element, 'bpmn:DataObjectReference') &&\n getBusinessObject(element).dataObjectRef === dataObject\n );\n });\n}","import { isFunction, forEach, assign } from 'min-dash';\n\nexport var DEFAULT_LABEL_SIZE = {\n width: 90,\n height: 20\n};\n\nexport var FLOW_LABEL_INDENT = 15;\n\nexport function wrapForCompatibility(api) {\n\n return function() {\n\n if (!window.Promise) {\n throw new Error('Promises is not supported in this environment. Please polyfill Promise.');\n }\n\n var argLen = arguments.length;\n if (argLen >= 1 && isFunction(arguments[argLen - 1])) {\n\n var callback = arguments[argLen - 1];\n\n console.warn(new Error(\n 'Passing callbacks to ' + api.name + ' is deprecated.'\n ));\n\n var argsWithoutCallback = Array.prototype.slice.call(arguments, 0, -1);\n\n api.apply(this, argsWithoutCallback).then(function(result) {\n\n var firstKey = Object.keys(result)[0];\n\n return callback(null, result[firstKey]);\n\n }, function(err) {\n\n return callback(err, err.warnings);\n });\n } else {\n\n return api.apply(this, arguments);\n }\n };\n}\n\nexport function isExpanded(element) {\n\n if (is(element, 'bpmn:CallActivity')) {\n return false;\n }\n\n if (is(element, 'bpmn:SubProcess')) {\n return getBusinessObject(element).di && !!getBusinessObject(element).di.isExpanded;\n }\n\n if (is(element, 'bpmn:Participant')) {\n return !!getBusinessObject(element).processRef;\n }\n\n return true;\n}\n\nexport function isInterrupting(element) {\n return element && getBusinessObject(element).isInterrupting !== false;\n}\n\nexport function isEventSubProcess(element) {\n return element && !!getBusinessObject(element).triggeredByEvent;\n}\n\nexport function hasEventDefinition(element, eventType) {\n var bo = getBusinessObject(element),\n hasEventDefinition = false;\n\n if (bo.eventDefinitions) {\n forEach(bo.eventDefinitions, function(event) {\n if (is(event, eventType)) {\n hasEventDefinition = true;\n }\n });\n }\n\n return hasEventDefinition;\n}\n\nexport function hasErrorEventDefinition(element) {\n return hasEventDefinition(element, 'bpmn:ErrorEventDefinition');\n}\n\nexport function hasEscalationEventDefinition(element) {\n return hasEventDefinition(element, 'bpmn:EscalationEventDefinition');\n}\n\nexport function hasCompensateEventDefinition(element) {\n return hasEventDefinition(element, 'bpmn:CompensateEventDefinition');\n}\n\nexport function isLabelExternal(semantic) {\n return is(semantic, 'bpmn:Event') ||\n is(semantic, 'bpmn:Gateway') ||\n is(semantic, 'bpmn:DataStoreReference') ||\n is(semantic, 'bpmn:DataObjectReference') ||\n is(semantic, 'bpmn:DataInput') ||\n is(semantic, 'bpmn:DataOutput') ||\n is(semantic, 'bpmn:SequenceFlow') ||\n is(semantic, 'bpmn:MessageFlow') ||\n is(semantic, 'bpmn:Group');\n}\n\nexport function hasExternalLabel(element) {\n return isLabel(element.label);\n}\n\nexport function getFlowLabelPosition(waypoints) {\n const mid = waypoints.length / 2 - 1;\n const firstIndex = Math.floor(mid);\n const secondIndex = Math.ceil(mid + 0.01);\n\n const first = waypoints[firstIndex];\n const second = waypoints[secondIndex];\n\n const position = getWaypointsMid(waypoints);\n const angle = Math.atan((second.y - first.y) / (second.x - first.x));\n\n let x = position.x;\n let y = position.y;\n\n if (Math.abs(angle) < Math.PI / 2) {\n y -= FLOW_LABEL_INDENT;\n } else {\n x += FLOW_LABEL_INDENT;\n }\n\n return { x, y };\n}\n\nexport function getWaypointsMid(waypoints) {\n const mid = waypoints.length / 2 - 1;\n const firstIndex = Math.floor(mid);\n const secondIndex = Math.ceil(mid + 0.01);\n\n const first = waypoints[firstIndex];\n const second = waypoints[secondIndex];\n\n const x = first.x + (second.x - first.x) / 2;\n const y = first.y + (second.y - first.y) / 2;\n\n return { x, y };\n}\n\nexport function getExternalLabelMid(element) {\n if (element.waypoints) {\n return getFlowLabelPosition(element.waypoints);\n }\n\n const isGroup = is(element, 'bpmn:Group');\n const isDefaultLabelPosition = isGroup ? DEFAULT_LABEL_SIZE.height / 2 : element.height + DEFAULT_LABEL_SIZE.height / 2;\n\n return {\n x: element.x + element.width / 2,\n y: element.y + isDefaultLabelPosition\n };\n}\n\nexport function getExternalLabelBounds(semantic, element) {\n const di = semantic.di;\n const label = di.label;\n\n if (label && label.bounds) {\n const bounds = label.bounds;\n\n const size = {\n width: Math.max(DEFAULT_LABEL_SIZE.width, bounds.width),\n height: bounds.height\n };\n\n const mid = {\n x: bounds.x + bounds.width / 2,\n y: bounds.y + bounds.height / 2\n };\n\n return assign({\n x: mid.x - size.width / 2,\n y: mid.y - size.height / 2\n }, size);\n }\n\n const mid = getExternalLabelMid(element);\n const size = DEFAULT_LABEL_SIZE;\n\n return assign({\n x: mid.x - size.width / 2,\n y: mid.y - size.height / 2\n }, size);\n}\n\nexport function isLabel(element) {\n return element && !!element.labelTarget;\n}\n\nexport function is(element, type) {\n var bo = getBusinessObject(element);\n\n return bo && (typeof bo.$instanceOf === 'function') && bo.$instanceOf(type);\n}\n\nexport function getBusinessObject(element) {\n return (element && element.businessObject) || element;\n}","'use strict';\n\nvar domify = require('min-dom').domify,\n domClasses = require('min-dom').classes,\n domEvent = require('min-dom').event;\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar MAX_DESCRIPTION_LENGTH = 200;\n\n/**\n * Create a linkified and HTML escaped entry field description.\n *\n * As a special feature, this description may contain both markdown,\n * plain links and
\n *\n * @param {string} description\n * @param {object} [options]\n * @param {string} [options.show] - name of callback to determine whether description is shown\n */\nmodule.exports = function entryFieldDescription(translate, description, options) {\n var show = options && options.show;\n\n // we tokenize the description to extract text, HTML and markdown links\n // text, links and new lines are handled seperately\n\n var escaped = [];\n\n // match markdown [{TEXT}]({URL}) and HTML links
{TEXT}\n var pattern = /(?:\\[([^\\]]+)\\]\\((https?:\\/\\/[^)]+)\\))|(?:(.+?(?=<\\/))<\\/a>)/gi;\n\n var index = 0;\n var match;\n var link, text;\n\n while ((match = pattern.exec(description))) {\n\n // escape + insert text before match\n if (match.index > index) {\n escaped.push(escapeText(description.substring(index, match.index)));\n }\n\n link = match[2] && encodeURI(match[2]) || match[3];\n text = match[1] || match[4];\n\n // insert safe link\n escaped.push('' + escapeText(text) + '');\n\n index = match.index + match[0].length;\n }\n\n // escape and insert text after last match\n if (index < description.length) {\n escaped.push(escapeText(description.substring(index)));\n }\n\n description = escaped.join('');\n\n var html = domify(\n '
' : '>') +\n '
'\n );\n\n var descriptionText = domify('' + description + '');\n\n html.appendChild(descriptionText);\n\n function toggleExpanded(expanded) {\n if (expanded) {\n domClasses(html).add('description--expanded');\n\n descriptionText.textContent = description + ' ';\n\n expand.textContent = translate('Less');\n } else {\n domClasses(html).remove('description--expanded');\n\n descriptionText.textContent = descriptionShortened + ' ... ';\n\n expand.textContent = translate('More');\n }\n }\n\n var descriptionShortened,\n expand,\n expanded = false;\n\n if (description.length > MAX_DESCRIPTION_LENGTH) {\n descriptionShortened = description.slice(0, MAX_DESCRIPTION_LENGTH);\n\n expand = domify(\n '' +\n translate('More') +\n ''\n );\n\n domEvent.bind(expand, 'click', function() {\n expanded = !expanded;\n\n toggleExpanded(expanded);\n });\n\n html.appendChild(expand);\n\n toggleExpanded(expanded);\n }\n\n return html;\n};\n\nfunction escapeText(text) {\n var match, index = 0, escaped = [];\n\n // match new line

etc.\n var pattern = //gi;\n\n while ((match = pattern.exec(text))) {\n\n if (match.index > index) {\n escaped.push(escapeHTML(text.substring(index, match.index)));\n }\n\n escaped.push('
');\n\n index = match.index + match[0].length;\n }\n\n if (index < text.length) {\n escaped.push(escapeHTML(text.substring(index)));\n }\n\n return escaped.join('');\n}","'use strict';\n\nvar entryFactory = require('../../../factory/EntryFactory'),\n cmdHelper = require('../../../helper/CmdHelper'),\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nmodule.exports = function(group, element, translate) {\n\n var bo = getBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n if (is(element, 'bpmn:Process') || is(element, 'bpmn:Participant') && bo.get('processRef')) {\n var versionTagEntry = entryFactory.textField(translate, {\n id: 'versionTag',\n label: translate('Version Tag'),\n modelProperty: 'versionTag'\n });\n\n // in participants we have to change the default behavior of set and get\n if (is(element, 'bpmn:Participant')) {\n versionTagEntry.get = function(element) {\n var processBo = bo.get('processRef');\n\n return {\n versionTag: processBo.get('harlequin:versionTag')\n };\n };\n\n versionTagEntry.set = function(element, values) {\n var processBo = bo.get('processRef');\n\n return cmdHelper.updateBusinessObject(element, processBo, {\n 'harlequin:versionTag': values.versionTag || undefined\n });\n };\n }\n\n group.entries.push(versionTagEntry);\n\n }\n};\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar jobPriority = require('./implementation/JobPriority'),\n jobRetryTimeCycle = require('./implementation/JobRetryTimeCycle');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n var businessObject = getBusinessObject(element);\n\n if (is(element, 'harlequin:JobPriorized') ||\n is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\n\n group.entries = group.entries.concat(jobPriority(element, bpmnFactory, {\n getBusinessObject: function(element) {\n var bo = getBusinessObject(element);\n\n if (!is(bo, 'bpmn:Participant')) {\n return bo;\n }\n\n return bo.get('processRef');\n }\n }, translate));\n }\n\n if (is(element, 'harlequin:AsyncCapable')) {\n group.entries = group.entries.concat(jobRetryTimeCycle(element, bpmnFactory, {\n getBusinessObject: getBusinessObject\n }, translate));\n }\n\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\n// input entities\nvar textInputField = require('./TextInputEntryFactory'),\n checkboxField = require('./CheckboxEntryFactory'),\n selectBoxField = require('./SelectEntryFactory'),\n comboBoxField = require('./ComboEntryFactory'),\n textBoxField = require('./TextBoxEntryFactory'),\n validationAwareTextInputField = require('./ValidationAwareTextInput'),\n tableField = require('./TableEntryFactory'),\n labelEntry = require('./LabelFactory'),\n link = require('./LinkEntryFactory'),\n autoSuggestTextBoxField = require('./AutoSuggestTextBoxFactory'),\n collapsible = require('./CollapsibleEntryFactory'),\n toggleSwitch = require('./ToggleSwitchEntryFactory');\n\nvar cmdHelper = require('../helper/CmdHelper');\n\n// helpers ////////////////////////////////////////\n\nfunction ensureNotNull(prop) {\n if (!prop) {\n throw new Error(prop + ' must be set.');\n }\n\n return prop;\n}\n\n/**\n * sets the default parameters which are needed to create an entry\n *\n * @param options\n * @returns {{id: *, description: (*|string), get: (*|Function), set: (*|Function),\n * validate: (*|Function), html: string}}\n */\nvar setDefaultParameters = function(options) {\n\n // default method to fetch the current value of the input field\n var defaultGet = function(element) {\n var bo = getBusinessObject(element),\n res = {},\n prop = ensureNotNull(options.modelProperty);\n res[prop] = bo.get(prop);\n\n return res;\n };\n\n // default method to set a new value to the input field\n var defaultSet = function(element, values) {\n var res = {},\n prop = ensureNotNull(options.modelProperty);\n if (values[prop] !== '') {\n res[prop] = values[prop];\n } else {\n res[prop] = undefined;\n }\n\n return cmdHelper.updateProperties(element, res);\n };\n\n // default validation method\n var defaultValidate = function() {\n return {};\n };\n\n return {\n id : options.id,\n description : (options.description || ''),\n get : (options.get || defaultGet),\n set : (options.set || defaultSet),\n validate : (options.validate || defaultValidate),\n html: ''\n };\n};\n\nfunction EntryFactory() {\n\n}\n\n/**\n * Generates an text input entry object for a property panel.\n * options are:\n * - id: id of the entry - String\n *\n * - description: description of the property - String\n *\n * - label: label for the input field - String\n *\n * - set: setter method - Function\n *\n * - get: getter method - Function\n *\n * - validate: validation mehtod - Function\n *\n * - modelProperty: name of the model property - String\n *\n * - buttonAction: Object which contains the following properties: - Object\n * ---- name: name of the [data-action] callback - String\n * ---- method: callback function for [data-action] - Function\n *\n * - buttonShow: Object which contains the following properties: - Object\n * ---- name: name of the [data-show] callback - String\n * ---- method: callback function for [data-show] - Function\n *\n * @param options\n * @returns the propertyPanel entry resource object\n */\nEntryFactory.textField = function(translate, options) {\n return textInputField(translate, options, setDefaultParameters(options));\n};\n\nEntryFactory.validationAwareTextField = function(translate, options) {\n return validationAwareTextInputField(translate, options, setDefaultParameters(options));\n};\n\n/**\n * Generates a checkbox input entry object for a property panel.\n * options are:\n * - id: id of the entry - String\n *\n * - description: description of the property - String\n *\n * - label: label for the input field - String\n *\n * - set: setter method - Function\n *\n * - get: getter method - Function\n *\n * - validate: validation method - Function\n *\n * - modelProperty: name of the model property - String\n *\n * @param options\n * @returns the propertyPanel entry resource object\n */\nEntryFactory.checkbox = function(translate, options) {\n return checkboxField(translate, options, setDefaultParameters(options));\n};\n\nEntryFactory.textBox = function(translate, options) {\n return textBoxField(translate, options, setDefaultParameters(options));\n};\n\nEntryFactory.selectBox = function(translate, options) {\n return selectBoxField(translate, options, setDefaultParameters(options));\n};\n\nEntryFactory.comboBox = function(translate, options) {\n return comboBoxField(translate, options);\n};\n\nEntryFactory.table = function(translate, options) {\n return tableField(translate, options);\n};\n\nEntryFactory.label = function(options) {\n return labelEntry(options);\n};\n\nEntryFactory.link = function(translate, options) {\n return link(translate, options);\n};\n\nEntryFactory.autoSuggest = function(translate, options) {\n return autoSuggestTextBoxField(translate, options, setDefaultParameters(options));\n};\n\nEntryFactory.collapsible = function(options) {\n return collapsible(options);\n};\n\nEntryFactory.toggleSwitch = function(translate, options) {\n return toggleSwitch(translate, options, setDefaultParameters(options));\n};\n\nmodule.exports = EntryFactory;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('navbar'),_c('v-main',[_c('v-container',{staticClass:\"scroll-y\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('router-view')],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLoggedIn)?_c('v-navigation-drawer',{staticClass:\"custom-scroll\",attrs:{\"mini-variant\":_vm.mini,\"permanent\":\"\",\"color\":\"#1b1b1b\",\"dark\":\"\",\"app\":\"\"},model:{value:(_vm.drawer),callback:function ($$v) {_vm.drawer=$$v},expression:\"drawer\"}},[_c('v-list-item',{class:_vm.mini ? 'px-2 pt-2' : 'px-2'},[_c('v-img',{staticClass:\"mx-auto\",attrs:{\"src\":_vm.hqLogo,\"alt\":\"Welcome to Harlequin\"}})],1),_c('v-list',{attrs:{\"shaped\":\"\"}},[_vm._l((_vm.items),function(item){return [(item.roles && item.roles.includes(_vm.currentRole) && item.icon != '')?_c('v-list-item',{key:item.text,attrs:{\"id\":item.id,\"active-class\":\"orange--text\",\"route\":\"\",\"to\":item.route,\"disabled\":_vm.editingForm || _vm.editingProcess || _vm.editingReport},on:{\"click\":function($event){return _vm.clearData(item.id)}}},[_c('v-list-item-action',[(item.content > 0)?_c('v-badge',{attrs:{\"overlap\":\"\",\"color\":\"#f87723\",\"content\":item.content,\"value\":item.content}},[_c('v-icon',[_vm._v(_vm._s(item.icon))])],1):_vm._e(),(item.content <= 0)?_c('v-icon',[_vm._v(_vm._s(item.icon))]):_vm._e()],1),_c('v-list-item-title',[(item.icon == '')?_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e(),(item.icon != '')?_c('span',[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e()])],1):_vm._e(),(item.roles && item.roles.includes(_vm.currentRole) && item.icon == '')?_c('v-list-item',{key:item.text,attrs:{\"disabled\":_vm.editingForm || _vm.editingProcess || _vm.editingReport}},[_c('v-list-item-action',[(item.content <= 0)?_c('v-icon',[_vm._v(_vm._s(item.icon))]):_vm._e()],1),_c('v-list-item-title',[(item.icon == '')?_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e(),(item.icon != '')?_c('span',[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e()])],1):_vm._e(),(!item.roles && item.icon != '')?_c('v-list-item',{key:item.text,attrs:{\"id\":item.id,\"active-class\":\"orange--text\",\"route\":\"\",\"to\":item.route,\"disabled\":_vm.editingForm || _vm.editingProcess || _vm.editingReport},on:{\"click\":function($event){return _vm.clearData(item.id)}}},[_c('v-list-item-action',[(item.content > 0)?_c('v-badge',{attrs:{\"overlap\":\"\",\"color\":\"#f87723\",\"content\":item.content,\"value\":item.content}},[_c('v-icon',[_vm._v(_vm._s(item.icon))])],1):_vm._e(),(item.content <= 0)?_c('v-icon',[_vm._v(_vm._s(item.icon))]):_vm._e()],1),_c('v-list-item-title',[(item.icon == '')?_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e(),(item.icon != '')?_c('span',[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e()])],1):_vm._e(),(!item.roles && item.icon == '')?_c('v-list-item',{key:item.text,attrs:{\"disabled\":_vm.editingForm || _vm.editingProcess || _vm.editingReport}},[_c('v-list-item-action',[(item.content <= 0)?_c('v-icon',[_vm._v(_vm._s(item.icon))]):_vm._e()],1),_c('v-list-item-title',[(item.icon == '')?_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e(),(item.icon != '')?_c('span',[_vm._v(_vm._s(_vm.$t(item.text)))]):_vm._e()])],1):_vm._e()]})],2),(!_vm.mini)?_c('p',{staticClass:\"rsl-copyright text-center\"},[_vm._v(\"VERSION: 2.0.0\")]):_vm._e(),(!_vm.mini)?_c('p',{staticClass:\"rsl-copyright text-center\"},[_vm._v(\"© Copyright 2020-\"+_vm._s(_vm.currentYear)+\" Rabbit Software Limited. All Rights Reserved.\")]):_vm._e()],1):_vm._e(),(_vm.isLoggedIn)?_c('v-app-bar',{attrs:{\"app\":\"\",\"color\":\"#f87723\",\"dark\":\"\"}},[_c('v-app-bar-nav-icon',{on:{\"click\":function($event){$event.stopPropagation();return _vm.setWidth.apply(null, arguments)}}}),_c('v-toolbar-title',{staticClass:\"m1-0 p1-4\",staticStyle:{\"width\":\"800px\"}},[_c('span',{staticClass:\"hidden-sm-and-down\"},[_vm._v(_vm._s(_vm.$t(_vm.$route.meta.title))+\" \"),(_vm.$route.name == 'ViewTask' && _vm.taskName != '')?_c('span',[_vm._v(\"> \"+_vm._s(_vm.taskName)+\" (Case #\"+_vm._s(_vm.caseId)+\")\")]):_vm._e()])]),_c('v-spacer'),_c('div',[_vm._v(_vm._s(_vm.$t('GENERAL.LOGGED_IN'))+\" \"+_vm._s(_vm.loggedInUser.authenticatedUser))]),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.openSettings}},[_c('v-icon',[_vm._v(\"mdi-cog-outline\")])],1),_c('v-btn',{attrs:{\"icon\":\"\",\"disabled\":_vm.editingForm || _vm.editingProcess || _vm.editingReport},on:{\"click\":_vm.logout}},[_c('v-icon',[_vm._v(\"mdi-logout\")])],1)],1):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-top-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.settingsDialog),callback:function ($$v) {_vm.settingsDialog=$$v},expression:\"settingsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('SETTINGS.USER_SETTINGS')))]),_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD'))+\" \")]),_c('v-card-text',[_c('div',[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD_TEXT')))]),_c('v-btn',{staticClass:\"mt-2\",attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.changePw()}}},[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD')))])],1),_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('SETTINGS.LANGUAGE_HEADER'))+\" \")]),_c('v-card-text',[_c('div',[_vm._v(_vm._s(_vm.$t('SETTINGS.LANGUAGE_TEXT'))+\":\")]),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.supportedLanguages,\"item-text\":\"name\",\"item-value\":\"code\",\"label\":\"Selected Language\"},model:{value:(_vm.selectedLanguage),callback:function ($$v) {_vm.selectedLanguage=$$v},expression:\"selectedLanguage\"}})],1)],1),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.changeLanguage()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.settingsDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.changePwDialog),callback:function ($$v) {_vm.changePwDialog=$$v},expression:\"changePwDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD_TEXT2')))]),_c('div',{staticClass:\"pt-5 red--text pb-4\"},[_vm._v(_vm._s(_vm.passwordPolicy))]),_c('v-form',{ref:\"changePwForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.password],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"onpaste\":\"return false\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.CONFIRM_PASS'),\"append-icon\":_vm.showPass2 ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass2 ? 'text' : 'password',\"rules\":_vm.password1 != '' ? [_vm.rules.required, _vm.rules.password, _vm.rules.passMatch] : [],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass2 = !_vm.showPass2}},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelChangePw()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmChangePw({password1: _vm.password1, password2: _vm.password2})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./navbar.vue?vue&type=template&id=78a49cf0&\"\nimport script from \"./navbar.vue?vue&type=script&lang=js&\"\nexport * from \"./navbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./navbar.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VAppBarNavIcon } from 'vuetify/lib/components/VAppBar';\nimport { VBadge } from 'vuetify/lib/components/VBadge';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemAction } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VNavigationDrawer } from 'vuetify/lib/components/VNavigationDrawer';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAppBar,VAppBarNavIcon,VBadge,VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDialog,VForm,VIcon,VImg,VList,VListItem,VListItemAction,VListItemTitle,VNavigationDrawer,VRow,VSelect,VSnackbar,VSpacer,VTextField,VToolbar,VToolbarTitle})\n","\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=9fb102f6&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VMain } from 'vuetify/lib/components/VMain';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VApp,VContainer,VMain,VRow})\n","import '@fortawesome/fontawesome-free/css/all.css';\nimport 'material-design-icons-iconfont/dist/material-design-icons.css';\nimport Vue from 'vue';\nimport Vuetify from 'vuetify/lib/framework';\nimport colors from 'vuetify/lib/util/colors';\nimport { VCard, VCardTitle, VCardSubtitle, VRow, VCol, VTextField, VTextarea, VAutocomplete, VTooltip, VCheckbox, VCombobox, VSelect, VSwitch, VBtn, VBtnToggle, VFileInput, VSlider, VRadio, VRadioGroup, VDatePicker, VTimePicker, VMenu, VSpacer, VSubheader, VIcon, VImg } from 'vuetify/lib';\nimport { Ripple, Intersect, Touch, Resize, ClickOutside } from 'vuetify/lib/directives';\n\nVue.use(Vuetify, {\n components: { VCard, VCardTitle, VCardSubtitle, VRow, VTooltip, VCol, VTextField, VAutocomplete, VTextarea, VCheckbox, VCombobox, VSelect, VSwitch, VBtn, VBtnToggle, VFileInput, VSlider, VRadio, VRadioGroup, VDatePicker, VTimePicker, VMenu, VSpacer, VSubheader, VIcon, VImg },\n directives: { Ripple, Intersect, Touch, Resize, ClickOutside }\n});\n\nexport default new Vuetify({\n icons: {\n iconfont: 'md' || 'fa'\n },\n theme: {\n themes: {\n light: {\n primary: colors.orange.darken2,\n secondary: colors.blue.darken2,\n },\n },\n }\n});\n","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\n\nVue.use(VueI18n)\n\nfunction loadLocaleMessages () {\n const locales = require.context('../locales', true, /[A-Za-z0-9-_,\\s]+\\.json$/i)\n const messages = {}\n locales.keys().forEach(key => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key)\n }\n })\n return messages\n}\n\nexport default new VueI18n({\n locale: process.env.VUE_APP_I18N_LOCALE || 'en',\n fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'en',\n globalInjection: true,\n messages: loadLocaleMessages()\n})\n","import Vue from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\nimport vuetify from './plugins/vuetify'\nimport './assets/bpmn/css/builder.css'\nimport './assets/bpmn/css/panel.css'\nimport i18n from './plugins/i18n'\n\nVue.config.productionTip = false\n\nnew Vue({\n router,\n store,\n vuetify,\n i18n,\n render: h => h(App)\n}).$mount('#app')\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar getOption = require('./Helper').getOption,\n getOptions = require('./Helper').getOptions,\n getTemplateId = require('../Helper').getTemplateId,\n ELEMENT_TEMPLATE_OPTION_EMPTY = require('../Helper').ELEMENT_TEMPLATE_OPTION_EMPTY;\n\nvar isNull = require('lodash/isNull'),\n isUndefined = require('lodash/isUndefined'),\n pick = require('lodash/pick');\n\nmodule.exports = function(group, element, elementTemplates, translate) {\n if (!isUndefined(getTemplateId(element)) && !isNull(getTemplateId(element))) {\n return;\n }\n\n var options = getOptions(element, elementTemplates, translate);\n\n // Return if empty option is only option\n if (options.length === 1) {\n return;\n }\n\n var selectOptions = options.map(function(option) {\n return pick(option, [ 'name', 'value' ]);\n });\n\n // select element template (via dropdown)\n group.entries.push(entryFactory.selectBox(translate, {\n id: 'elementTemplate-chooser',\n label: translate('Element Template'),\n modelProperty: 'elementTemplateOption',\n selectOptions: selectOptions,\n get: function(element) {\n return {\n elementTemplateOption: ELEMENT_TEMPLATE_OPTION_EMPTY\n };\n },\n set: function(element, properties) {\n var optionId = properties['elementTemplateOption'];\n\n var option = getOption(optionId, options);\n\n var id = option.id,\n version = option.version;\n\n var newTemplate = elementTemplates.get(id, version);\n\n return applyTemplate(element, newTemplate, elementTemplates);\n }\n }));\n\n};\n\n\n// helpers //////////\n\nfunction applyTemplate(element, newTemplate, elementTemplates) {\n var oldTemplate = elementTemplates.get(element);\n\n if (oldTemplate === newTemplate) {\n return;\n }\n\n return {\n cmd: 'propertiesPanel.harlequin.changeTemplate',\n context: {\n element: element,\n oldTemplate: oldTemplate,\n newTemplate: newTemplate\n }\n };\n}","'use strict';\n\nvar elementHelper = require('../helper/ElementHelper');\n\n/**\n * A handler capable of creating a new element under a provided parent\n * and updating / creating a reference to it in one atomic action.\n *\n * @class\n * @constructor\n */\nfunction CreateAndReferenceElementHandler(elementRegistry, bpmnFactory) {\n this._elementRegistry = elementRegistry;\n this._bpmnFactory = bpmnFactory;\n}\n\nCreateAndReferenceElementHandler.$inject = [ 'elementRegistry', 'bpmnFactory' ];\n\nmodule.exports = CreateAndReferenceElementHandler;\n\n\n// api ////////////////////\n\n/**\n * Creates a new element under a provided parent and updates / creates a reference to it in\n * one atomic action.\n *\n * @method CreateAndReferenceElementHandler#execute\n *\n * @param {Object} context\n * @param {djs.model.Base} context.element which is the context for the reference\n * @param {moddle.referencingObject} context.referencingObject the object which creates the reference\n * @param {String} context.referenceProperty the property of the referencingObject which makes the reference\n * @param {moddle.newObject} context.newObject the new object to add\n * @param {moddle.newObjectContainer} context.newObjectContainer the container for the new object\n *\n * @returns {Array} the updated element\n */\nCreateAndReferenceElementHandler.prototype.execute = function(context) {\n\n var referencingObject = ensureNotNull(context.referencingObject, 'referencingObject'),\n referenceProperty = ensureNotNull(context.referenceProperty, 'referenceProperty'),\n newObject = ensureNotNull(context.newObject, 'newObject'),\n newObjectContainer = ensureNotNull(context.newObjectContainer, 'newObjectContainer'),\n newObjectParent = ensureNotNull(context.newObjectParent, 'newObjectParent'),\n changed = [ context.element ]; // this will not change any diagram-js elements\n\n // create new object\n var referencedObject = elementHelper\n .createElement(newObject.type, newObject.properties, newObjectParent, this._bpmnFactory);\n context.referencedObject = referencedObject;\n\n // add to containing list\n newObjectContainer.push(referencedObject);\n\n // adjust reference attribute\n context.previousReference = referencingObject[referenceProperty];\n referencingObject[referenceProperty] = referencedObject;\n\n context.changed = changed;\n\n // indicate changed on objects affected by the update\n return changed;\n};\n\n/**\n * Reverts the update\n *\n * @method CreateAndReferenceElementHandler#revert\n *\n * @param {Object} context\n *\n * @returns {djs.mode.Base} the updated element\n */\nCreateAndReferenceElementHandler.prototype.revert = function(context) {\n\n var referencingObject = context.referencingObject,\n referenceProperty = context.referenceProperty,\n previousReference = context.previousReference,\n referencedObject = context.referencedObject,\n newObjectContainer = context.newObjectContainer;\n\n // reset reference\n referencingObject.set(referenceProperty, previousReference);\n\n // remove new element\n newObjectContainer.splice(newObjectContainer.indexOf(referencedObject), 1);\n\n return context.changed;\n};\n\n\n\n// helpers //////////////\n\nfunction ensureNotNull(prop, name) {\n if (!prop) {\n throw new Error(name + ' required');\n }\n return prop;\n}\n","'use strict';\n\nvar findExtension = require('../Helper').findExtension,\n findExtensions = require('../Helper').findExtensions,\n findHarlequinErrorEventDefinition = require('../Helper').findHarlequinErrorEventDefinition;\n\nvar handleLegacyScopes = require('../services/handleLegacyScopes');\n\nvar createHarlequinExecutionListenerScript = require('../CreateHelper').createHarlequinExecutionListenerScript,\n createHarlequinFieldInjection = require('../CreateHelper').createHarlequinFieldInjection,\n createHarlequinIn = require('../CreateHelper').createHarlequinIn,\n createHarlequinInWithBusinessKey = require('../CreateHelper').createHarlequinInWithBusinessKey,\n createHarlequinOut = require('../CreateHelper').createHarlequinOut,\n createHarlequinProperty = require('../CreateHelper').createHarlequinProperty,\n createInputParameter = require('../CreateHelper').createInputParameter,\n createOutputParameter = require('../CreateHelper').createOutputParameter,\n createHarlequinErrorEventDefinition = require('../CreateHelper').createHarlequinErrorEventDefinition,\n createError = require('../CreateHelper').createError;\n\nvar EventDefinitionHelper = require('../../../../helper/EventDefinitionHelper');\n\nvar getRoot = require('../../../../Utils').getRoot;\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\n\nvar find = require('lodash/find'),\n forEach = require('lodash/forEach'),\n isString = require('lodash/isString'),\n keys = require('lodash/keys'),\n remove = require('lodash/remove');\n\nvar HARLEQUIN_SERVICE_TASK_LIKE = [\n 'harlequin:class',\n 'harlequin:delegateExpression',\n 'harlequin:expression'\n];\n\n/**\n * Applies an element template to an element. Sets `harlequin:modelerTemplate` and\n * `harlequin:modelerTemplateVersion`.\n */\nfunction ChangeElementTemplateHandler(bpmnFactory, commandStack, modeling) {\n this._bpmnFactory = bpmnFactory;\n this._commandStack = commandStack;\n this._modeling = modeling;\n}\n\nChangeElementTemplateHandler.$inject = [\n 'bpmnFactory',\n 'commandStack',\n 'modeling'\n];\n\nmodule.exports = ChangeElementTemplateHandler;\n\n/**\n * Change an element's template and update its properties as specified in `newTemplate`. Specify\n * `oldTemplate` to update from one template to another. If `newTemplate` isn't specified the\n * `harlequin:modelerTemplate` and `harlequin:modelerTemplateVersion` properties will be removed from\n * the element.\n *\n * @param {Object} context\n * @param {Object} context.element\n * @param {Object} [context.oldTemplate]\n * @param {Object} [context.newTemplate]\n */\nChangeElementTemplateHandler.prototype.preExecute = function(context) {\n var element = context.element,\n newTemplate = context.newTemplate,\n oldTemplate = context.oldTemplate;\n\n var self = this;\n\n // Update harlequin:modelerTemplate attribute\n this._updateHarlequinModelerTemplate(element, newTemplate);\n\n if (newTemplate) {\n\n // Update properties\n this._updateProperties(element, oldTemplate, newTemplate);\n\n // Update harlequin:ExecutionListener properties\n this._updateHarlequinExecutionListenerProperties(element, newTemplate);\n\n // Update harlequin:Field properties\n this._updateHarlequinFieldProperties(element, oldTemplate, newTemplate);\n\n // Update harlequin:In and harlequin:Out properties\n this._updateHarlequinInOutProperties(element, oldTemplate, newTemplate);\n\n // Update harlequin:InputParameter and harlequin:OutputParameter properties\n this._updateHarlequinInputOutputParameterProperties(element, oldTemplate, newTemplate);\n\n // Update harlequin:Property properties\n this._updateHarlequinPropertyProperties(element, oldTemplate, newTemplate);\n\n // Update harlequin:ErrorEventDefinition properties\n this._updateHarlequinErrorEventDefinitionProperties(element, oldTemplate, newTemplate);\n\n // Update properties for each scope\n forEach(handleLegacyScopes(newTemplate.scopes), function(newScopeTemplate) {\n self._updateScopeProperties(element, oldTemplate, newScopeTemplate, newTemplate);\n });\n\n }\n};\n\nChangeElementTemplateHandler.prototype._getOrCreateExtensionElements = function(element) {\n var bpmnFactory = this._bpmnFactory,\n modeling = this._modeling;\n\n var businessObject = getBusinessObject(element);\n\n var extensionElements = businessObject.get('extensionElements');\n\n if (!extensionElements) {\n extensionElements = bpmnFactory.create('bpmn:ExtensionElements', {\n values: []\n });\n\n extensionElements.$parent = businessObject;\n\n modeling.updateProperties(element, {\n extensionElements: extensionElements\n });\n }\n\n return extensionElements;\n};\n\n/**\n * Update `harlequin:ErrorEventDefinition` properties of specified business object. Event\n * definitions can only exist in `bpmn:ExtensionElements`.\n *\n * Ensures an bpmn:Error exists for the event definition.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newTemplate\n */\nChangeElementTemplateHandler.prototype._updateHarlequinErrorEventDefinitionProperties = function(element, oldTemplate, newTemplate) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:errorEventDefinition';\n });\n\n // (1) Do not override if no updates\n if (!newProperties.length) {\n return;\n }\n\n var businessObject = this._getOrCreateExtensionElements(element);\n\n var oldErrorEventDefinitions = findExtensions(element, [ 'harlequin:ErrorEventDefinition' ]);\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n oldEventDefinition = oldProperty && findOldBusinessObject(businessObject, oldProperty),\n newBinding = newProperty.binding;\n\n // (2) Update old event definitions\n if (oldProperty && oldEventDefinition) {\n\n if (!propertyChanged(oldEventDefinition, oldProperty)) {\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: oldEventDefinition,\n properties: {\n expression: newProperty.value\n }\n });\n }\n\n remove(oldErrorEventDefinitions, oldEventDefinition);\n }\n\n // (3) Create new event definition + error\n else {\n var rootElement = getRoot(getBusinessObject(element)),\n newError = createError(newBinding.errorRef, rootElement, bpmnFactory),\n newEventDefinition =\n createHarlequinErrorEventDefinition(newBinding, newProperty.value, newError, businessObject, bpmnFactory);\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: rootElement,\n propertyName: 'rootElements',\n objectsToAdd: [ newError ],\n objectsToRemove: []\n });\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [ newEventDefinition ],\n objectsToRemove: []\n });\n }\n\n });\n\n // (4) Remove old event definitions\n if (oldErrorEventDefinitions.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [],\n objectsToRemove: oldErrorEventDefinitions\n });\n }\n};\n\n/**\n * Update `harlequin:ExecutionListener` properties of specified business object. Execution listeners\n * will always be overridden. Execution listeners can only exist in `bpmn:ExtensionElements`.\n *\n * @param {djs.model.Base} element\n * @param {Object} newTemplate\n */\nChangeElementTemplateHandler.prototype._updateHarlequinExecutionListenerProperties = function(element, newTemplate) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:ExecutionListener';\n });\n\n // (1) Do not override old execution listeners if no new execution listeners specified\n if (!newProperties.length) {\n return;\n }\n\n var businessObject = this._getOrCreateExtensionElements(element);\n\n // (2) Remove old execution listeners\n var oldExecutionListeners = findExtensions(element, [ 'harlequin:ExecutionListener' ]);\n\n // (3) Add new execution listeners\n var newExecutionListeners = newProperties.map(function(newProperty) {\n var newBinding = newProperty.binding,\n propertyValue = newProperty.value;\n\n return createHarlequinExecutionListenerScript(newBinding, propertyValue, bpmnFactory);\n });\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: newExecutionListeners,\n objectsToRemove: oldExecutionListeners\n });\n};\n\n/**\n * Update `harlequin:Field` properties of specified business object.\n * If business object is `harlequin:ExecutionListener` or `harlequin:TaskListener` `fields` property\n * will be updated. Otherwise `extensionElements.values` property will be updated.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newTemplate\n * @param {ModdleElement} businessObject\n */\nChangeElementTemplateHandler.prototype._updateHarlequinFieldProperties = function(element, oldTemplate, newTemplate, businessObject) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:field';\n });\n\n // (1) Do not override old fields if no new fields specified\n if (!newProperties.length) {\n return;\n }\n\n if (!businessObject) {\n businessObject = this._getOrCreateExtensionElements(element);\n }\n\n var propertyName = isAny(businessObject, [ 'harlequin:ExecutionListener', 'harlequin:TaskListener' ])\n ? 'fields'\n : 'values';\n\n var oldFields = findExtensions(element, [ 'harlequin:Field' ]);\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n oldField = oldProperty && findOldBusinessObject(businessObject, oldProperty),\n newBinding = newProperty.binding;\n\n // (2) Update old fields\n if (oldProperty && oldField) {\n\n if (!propertyChanged(oldField, oldProperty)) {\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: oldField,\n properties: {\n string: newProperty.value\n }\n });\n }\n\n remove(oldFields, oldField);\n }\n\n // (3) Add new fields\n else {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: propertyName,\n objectsToAdd: [ createHarlequinFieldInjection(newBinding, newProperty.value, bpmnFactory) ],\n objectsToRemove: []\n });\n }\n });\n\n // (4) Remove old fields\n if (oldFields.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: propertyName,\n objectsToAdd: [],\n objectsToRemove: oldFields\n });\n }\n};\n\n/**\n * Update `harlequin:In` and `harlequin:Out` properties of specified business object. Only\n * `bpmn:CallActivity` and events with `bpmn:SignalEventDefinition` can have ins. Only\n * `harlequin:CallActivity` can have outs.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newTemplate\n */\nChangeElementTemplateHandler.prototype._updateHarlequinInOutProperties = function(element, oldTemplate, newTemplate) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:In'\n || newBindingType === 'harlequin:In:businessKey'\n || newBindingType === 'harlequin:Out';\n });\n\n // (1) Do not override old fields if no new fields specified\n if (!newProperties.length) {\n return;\n }\n\n // Get extension elements of either signal event definition or call activity\n var businessObject = this._getOrCreateExtensionElements(\n EventDefinitionHelper.getSignalEventDefinition(element) || element);\n\n var oldInsAndOuts = findExtensions(businessObject, [ 'harlequin:In', 'harlequin:Out' ]);\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n oldBinding = oldProperty && oldProperty.binding,\n oldInOurOut = oldProperty && findOldBusinessObject(businessObject, oldProperty),\n newPropertyValue = newProperty.value,\n newBinding = newProperty.binding,\n newBindingType = newBinding.type,\n newInOrOut,\n properties = {};\n\n // (2) Update old ins and outs\n if (oldProperty && oldInOurOut) {\n\n if (!propertyChanged(oldInOurOut, oldProperty)) {\n if (newBindingType === 'harlequin:In') {\n if (newBinding.expression) {\n properties[ 'harlequin:sourceExpression' ] = newPropertyValue;\n } else {\n properties[ 'harlequin:source' ] = newPropertyValue;\n }\n } else if (newBindingType === 'harlequin:In:businessKey') {\n properties[ 'harlequin:businessKey' ] = newPropertyValue;\n } else if (newBindingType === 'harlequin:Out') {\n properties[ 'harlequin:target' ] = newPropertyValue;\n }\n }\n\n // Update `harlequin:local` property if it changed\n if ((oldBinding.local && !newBinding.local) || !oldBinding.local && newBinding.local) {\n properties.local = newBinding.local;\n }\n\n if (keys(properties)) {\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: oldInOurOut,\n properties: properties\n });\n }\n\n remove(oldInsAndOuts, oldInOurOut);\n }\n\n // (3) Add new ins and outs\n else {\n if (newBindingType === 'harlequin:In') {\n newInOrOut = createHarlequinIn(newBinding, newPropertyValue, bpmnFactory);\n } else if (newBindingType === 'harlequin:Out') {\n newInOrOut = createHarlequinOut(newBinding, newPropertyValue, bpmnFactory);\n } else if (newBindingType === 'harlequin:In:businessKey') {\n newInOrOut = createHarlequinInWithBusinessKey(newBinding, newPropertyValue, bpmnFactory);\n }\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [ newInOrOut ],\n objectsToRemove: []\n });\n }\n });\n\n // (4) Remove old ins and outs\n if (oldInsAndOuts.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [],\n objectsToRemove: oldInsAndOuts\n });\n }\n};\n\n/**\n * Update `harlequin:InputParameter` and `harlequin:OutputParameter` properties of specified business\n * object. Both can only exist in `harlequin:InputOutput` which can exist in `bpmn:ExtensionElements`\n * or `harlequin:Connector`.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newTemplate\n */\nChangeElementTemplateHandler.prototype._updateHarlequinInputOutputParameterProperties = function(element, oldTemplate, newTemplate, businessObject) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:inputParameter' || newBindingType === 'harlequin:outputParameter';\n });\n\n // (1) Do not override old inputs and outputs if no new inputs and outputs specified\n if (!newProperties.length) {\n return;\n }\n\n if (!businessObject) {\n businessObject = this._getOrCreateExtensionElements(element);\n }\n\n var inputOutput;\n\n if (is(businessObject, 'harlequin:Connector')) {\n inputOutput = businessObject.get('harlequin:inputOutput');\n\n if (!inputOutput) {\n inputOutput = bpmnFactory.create('harlequin:InputOutput');\n\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: businessObject,\n properties: {\n inputOutput: inputOutput\n }\n });\n }\n } else {\n inputOutput = findExtension(businessObject, 'harlequin:InputOutput');\n\n if (!inputOutput) {\n inputOutput = bpmnFactory.create('harlequin:InputOutput');\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [ inputOutput ],\n objectsToRemove: []\n });\n }\n }\n\n var oldInputs = inputOutput.get('harlequin:inputParameters')\n ? inputOutput.get('harlequin:inputParameters').slice()\n : [];\n\n var oldOutputs = inputOutput.get('harlequin:outputParameters')\n ? inputOutput.get('harlequin:outputParameters').slice()\n : [];\n\n var propertyName;\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n oldInputOrOutput = oldProperty && findOldBusinessObject(businessObject, oldProperty),\n newPropertyValue = newProperty.value,\n newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n var newInputOrOutput,\n properties;\n\n // (2) Update old inputs and outputs\n if (oldProperty && oldInputOrOutput) {\n\n if (!propertyChanged(oldInputOrOutput, oldProperty)) {\n if (is(oldInputOrOutput, 'harlequin:InputParameter')) {\n properties = {\n value: newPropertyValue\n };\n } else {\n properties = {\n name: newPropertyValue\n };\n }\n\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: oldInputOrOutput,\n properties: properties\n });\n }\n\n if (is(oldInputOrOutput, 'harlequin:InputParameter')) {\n remove(oldInputs, oldInputOrOutput);\n } else {\n remove(oldOutputs, oldInputOrOutput);\n }\n }\n\n // (3) Add new inputs and outputs\n else {\n if (newBindingType === 'harlequin:inputParameter') {\n propertyName = 'inputParameters';\n\n newInputOrOutput = createInputParameter(newBinding, newPropertyValue, bpmnFactory);\n } else {\n propertyName = 'outputParameters';\n\n newInputOrOutput = createOutputParameter(newBinding, newPropertyValue, bpmnFactory);\n }\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: inputOutput,\n propertyName: propertyName,\n objectsToAdd: [ newInputOrOutput ],\n objectsToRemove: []\n });\n }\n });\n\n // (4) Remove old inputs and outputs\n if (oldInputs.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: inputOutput,\n propertyName: 'inputParameters',\n objectsToAdd: [],\n objectsToRemove: oldInputs\n });\n }\n\n if (oldOutputs.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: inputOutput,\n propertyName: 'outputParameters',\n objectsToAdd: [],\n objectsToRemove: oldOutputs\n });\n }\n};\n\nChangeElementTemplateHandler.prototype._updateHarlequinModelerTemplate = function(element, newTemplate) {\n var modeling = this._modeling;\n\n modeling.updateProperties(element, {\n 'harlequin:modelerTemplate': newTemplate && newTemplate.id,\n 'harlequin:modelerTemplateVersion': newTemplate && newTemplate.version\n });\n};\n\n/**\n * Update `harlequin:Property` properties of specified business object. `harlequin:Property` can only\n * exist in `harlequin:Properties`.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newTemplate\n * @param {ModdleElement} businessObject\n */\nChangeElementTemplateHandler.prototype._updateHarlequinPropertyProperties = function(element, oldTemplate, newTemplate, businessObject) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'harlequin:property';\n });\n\n // (1) Do not override old properties if no new properties specified\n if (!newProperties.length) {\n return;\n }\n\n if (businessObject) {\n businessObject = this._getOrCreateExtensionElements(businessObject);\n } else {\n businessObject = this._getOrCreateExtensionElements(element);\n }\n\n var harlequinProperties = findExtension(businessObject, 'harlequin:Properties');\n\n if (!harlequinProperties) {\n harlequinProperties = bpmnFactory.create('harlequin:Properties');\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: businessObject,\n propertyName: 'values',\n objectsToAdd: [ harlequinProperties ],\n objectsToRemove: []\n });\n }\n\n var oldHarlequinProperties = harlequinProperties.get('harlequin:values')\n ? harlequinProperties.get('harlequin:values').slice()\n : [];\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n oldHarlequinProperty = oldProperty && findOldBusinessObject(businessObject, oldProperty),\n newPropertyValue = newProperty.value,\n newBinding = newProperty.binding;\n\n // (2) Update old properties\n if (oldProperty && oldHarlequinProperty) {\n\n if (!propertyChanged(oldHarlequinProperty, oldProperty)) {\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: oldHarlequinProperty,\n properties: {\n value: newPropertyValue\n }\n });\n }\n\n remove(oldHarlequinProperties, oldHarlequinProperty);\n }\n\n // (3) Add new properties\n else {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: harlequinProperties,\n propertyName: 'values',\n objectsToAdd: [ createHarlequinProperty(newBinding, newPropertyValue, bpmnFactory) ],\n objectsToRemove: []\n });\n }\n });\n\n // (4) Remove old properties\n if (oldHarlequinProperties.length) {\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: harlequinProperties,\n propertyName: 'values',\n objectsToAdd: [],\n objectsToRemove: oldHarlequinProperties\n });\n }\n};\n\n/**\n * Update `bpmn:conditionExpression` property of specified element. Since condition expression is\n * is not primitive it needs special handling.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldProperty\n * @param {Object} newProperty\n */\nChangeElementTemplateHandler.prototype._updateConditionExpression = function(element, oldProperty, newProperty) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack,\n modeling = this._modeling;\n\n var newBinding = newProperty.binding,\n newPropertyValue = newProperty.value;\n\n if (!oldProperty) {\n modeling.updateProperties(element, {\n conditionExpression: bpmnFactory.create('bpmn:FormalExpression', {\n body: newPropertyValue,\n language: newBinding.scriptFormat\n })\n });\n\n return;\n }\n\n var oldBinding = oldProperty.binding,\n oldPropertyValue = oldProperty.value;\n\n var businessObject = getBusinessObject(element),\n conditionExpression = businessObject.get('bpmn:conditionExpression');\n\n var properties = {};\n\n if (conditionExpression.get('body') === oldPropertyValue) {\n properties.body = newPropertyValue;\n }\n\n if (conditionExpression.get('language') === oldBinding.scriptFormat) {\n properties.language = newBinding.scriptFormat;\n }\n\n if (!keys(properties).length) {\n return;\n }\n\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: conditionExpression,\n properties: properties\n });\n};\n\nChangeElementTemplateHandler.prototype._updateProperties = function(element, oldTemplate, newTemplate, businessObject) {\n var self = this;\n\n var commandStack = this._commandStack;\n\n var newProperties = newTemplate.properties.filter(function(newProperty) {\n var newBinding = newProperty.binding,\n newBindingType = newBinding.type;\n\n return newBindingType === 'property';\n });\n\n if (!newProperties.length) {\n return;\n }\n\n if (!businessObject) {\n businessObject = getBusinessObject(element);\n }\n\n newProperties.forEach(function(newProperty) {\n var oldProperty = findOldProperty(oldTemplate, newProperty),\n newBinding = newProperty.binding,\n newBindingName = newBinding.name,\n newPropertyValue = newProperty.value,\n changedElement,\n properties;\n\n if (newBindingName === 'conditionExpression') {\n self._updateConditionExpression(element, oldProperty, newProperty);\n } else {\n\n if (is(businessObject, 'bpmn:Error')) {\n changedElement = businessObject;\n } else {\n changedElement = element;\n }\n\n if (oldProperty && propertyChanged(changedElement, oldProperty)) {\n return;\n }\n\n properties = {};\n\n properties[ newBindingName ] = newPropertyValue;\n\n // Only one of `harlequin:class`, `harlequin:delegateExpression` and `harlequin:expression` can be\n // set\n if (HARLEQUIN_SERVICE_TASK_LIKE.indexOf(newBindingName) !== -1) {\n HARLEQUIN_SERVICE_TASK_LIKE.forEach(function(harlequinServiceTaskLikeProperty) {\n if (harlequinServiceTaskLikeProperty !== newBindingName) {\n properties[ harlequinServiceTaskLikeProperty ] = undefined;\n }\n });\n }\n\n commandStack.execute('properties-panel.update-businessobject', {\n element: element,\n businessObject: businessObject,\n properties: properties\n });\n }\n });\n};\n\n/**\n * Update properties for a specified scope.\n *\n * @param {djs.model.Base} element\n * @param {Object} oldTemplate\n * @param {Object} newScopeTemplate\n * @param {Object} newTemplate\n */\nChangeElementTemplateHandler.prototype._updateScopeProperties = function(element, oldTemplate, newScopeTemplate, newTemplate) {\n var bpmnFactory = this._bpmnFactory,\n commandStack = this._commandStack;\n\n var scopeName = newScopeTemplate.type;\n\n var scopeElement;\n\n scopeElement = findOldScopeElement(element, newScopeTemplate, newTemplate);\n\n if (!scopeElement) {\n\n scopeElement = bpmnFactory.create(scopeName);\n }\n\n var oldScopeTemplate = findOldScopeTemplate(newScopeTemplate, oldTemplate);\n\n // Update properties\n this._updateProperties(element, oldScopeTemplate, newScopeTemplate, scopeElement);\n\n // Update harlequin:ExecutionListener properties\n this._updateHarlequinExecutionListenerProperties(element, newScopeTemplate);\n\n // Update harlequin:In and harlequin:Out properties\n this._updateHarlequinInOutProperties(element, oldScopeTemplate, newScopeTemplate);\n\n // Update harlequin:InputParameter and harlequin:OutputParameter properties\n this._updateHarlequinInputOutputParameterProperties(element, oldScopeTemplate, newScopeTemplate, scopeElement);\n\n // Update harlequin:Field properties\n this._updateHarlequinFieldProperties(element, oldScopeTemplate, newScopeTemplate, scopeElement);\n\n // Update harlequin:Property properties\n this._updateHarlequinPropertyProperties(element, oldScopeTemplate, newScopeTemplate, scopeElement);\n\n // Assume: root elements were already been created in root by referenced event\n // definition binding\n if (isRootElementScope(scopeName)) {\n return;\n }\n\n var extensionElements = this._getOrCreateExtensionElements(element);\n\n commandStack.execute('properties-panel.update-businessobject-list', {\n element: element,\n currentObject: extensionElements,\n propertyName: 'values',\n objectsToAdd: [ scopeElement ],\n objectsToRemove: []\n });\n};\n\n// helpers //////////\n\n/**\n * Find old business object matching specified old property.\n *\n * @param {djs.model.Base|ModdleElement} element\n * @param {Object} oldProperty\n *\n * @returns {ModdleElement}\n */\nfunction findOldBusinessObject(element, oldProperty) {\n var businessObject = getBusinessObject(element),\n propertyName;\n\n var oldBinding = oldProperty.binding,\n oldBindingType = oldBinding.type;\n\n if (oldBindingType === 'harlequin:field') {\n\n if (isAny(businessObject, [ 'harlequin:ExecutionListener', 'harlequin:TaskListener' ])) {\n propertyName = 'harlequin:fields';\n } else {\n propertyName = 'bpmn:values';\n }\n\n if (!businessObject || !businessObject.get(propertyName) || !businessObject.get(propertyName).length) {\n return;\n }\n\n return find(businessObject.get(propertyName), function(oldBusinessObject) {\n return oldBusinessObject.get('harlequin:name') === oldBinding.name;\n });\n }\n\n if (oldBindingType === 'harlequin:In') {\n return find(businessObject.get('values'), function(oldBusinessObject) {\n return oldBusinessObject.get('target') === oldBinding.target;\n });\n }\n\n if (oldBindingType === 'harlequin:In:businessKey') {\n return find(businessObject.get('values'), function(oldBusinessObject) {\n return isString(oldBusinessObject.get('businessKey'));\n });\n }\n\n if (oldBindingType === 'harlequin:Out') {\n return find(businessObject.get('values'), function(oldBusinessObject) {\n return oldBusinessObject.get('source') === oldBinding.source ||\n oldBusinessObject.get('sourceExpression') || oldBinding.sourceExpression;\n });\n }\n\n if (oldBindingType === 'harlequin:inputParameter' || oldBindingType === 'harlequin:outputParameter') {\n\n if (is(businessObject, 'harlequin:Connector')) {\n businessObject = businessObject.get('harlequin:inputOutput');\n\n if (!businessObject) {\n return;\n }\n } else {\n businessObject = findExtension(businessObject, 'harlequin:InputOutput');\n\n if (!businessObject) {\n return;\n }\n }\n\n if (oldBindingType === 'harlequin:inputParameter') {\n return find(businessObject.get('harlequin:inputParameters'), function(oldBusinessObject) {\n return oldBusinessObject.get('harlequin:name') === oldBinding.name;\n });\n } else {\n return find(businessObject.get('harlequin:outputParameters'), function(oldBusinessObject) {\n var definition;\n\n if (oldBinding.scriptFormat) {\n definition = oldBusinessObject.get('harlequin:definition');\n\n return definition && definition.get('harlequin:value') === oldBinding.source;\n } else {\n return oldBusinessObject.get('harlequin:value') === oldBinding.source;\n }\n });\n }\n\n }\n\n if (oldBindingType === 'harlequin:property') {\n if (!businessObject || !businessObject.get('values') || !businessObject.get('values').length) {\n return;\n }\n\n businessObject = findExtension(businessObject, 'harlequin:Properties');\n\n if (!businessObject) {\n return;\n }\n\n return find(businessObject.get('values'), function(oldBusinessObject) {\n return oldBusinessObject.get('harlequin:name') === oldBinding.name;\n });\n }\n\n if (oldBindingType === 'harlequin:errorEventDefinition') {\n return findHarlequinErrorEventDefinition(element, oldBinding.errorRef);\n }\n}\n\n/**\n * Find old property matching specified new property.\n *\n * @param {Object} oldTemplate\n * @param {Object} newProperty\n *\n * @returns {Object}\n */\nfunction findOldProperty(oldTemplate, newProperty) {\n if (!oldTemplate) {\n return;\n }\n\n var oldProperties = oldTemplate.properties,\n newBinding = newProperty.binding,\n newBindingName = newBinding.name,\n newBindingType = newBinding.type;\n\n if (newBindingType === 'property') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingName = oldBinding.name,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'property' && oldBindingName === newBindingName;\n });\n }\n\n if (newBindingType === 'harlequin:field') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingName = oldBinding.name,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'harlequin:field' && oldBindingName === newBindingName;\n });\n }\n\n if (newBindingType === 'harlequin:In') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingType = oldBinding.type;\n\n if (oldBindingType !== 'harlequin:In') {\n return;\n }\n\n // Always override if change from source to source expression or vice versa\n if ((oldBinding.expression && !newBinding.expression) ||\n !oldBinding.expression && newBinding.expression) {\n return;\n }\n\n return oldBinding.target === newBinding.target;\n });\n }\n\n if (newBindingType === 'harlequin:In:businessKey') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'harlequin:In:businessKey';\n });\n }\n\n if (newBindingType === 'harlequin:Out') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'harlequin:Out' && (\n oldBinding.source === newBinding.source ||\n oldBinding.sourceExpression === newBinding.sourceExpression\n );\n });\n }\n\n if (newBindingType === 'harlequin:inputParameter') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingName = oldBinding.name,\n oldBindingType = oldBinding.type;\n\n if (oldBindingType !== 'harlequin:inputParameter') {\n return;\n }\n\n return oldBindingName === newBindingName\n && oldBinding.scriptFormat === newBinding.scriptFormat;\n });\n }\n\n if (newBindingType === 'harlequin:outputParameter') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingType = oldBinding.type;\n\n if (oldBindingType !== 'harlequin:outputParameter') {\n return;\n }\n\n return oldBinding.source === newBinding.source\n && oldBinding.scriptFormat === newBinding.scriptFormat;\n });\n }\n\n if (newBindingType === 'harlequin:property') {\n return find(oldProperties, function(oldProperty) {\n var oldBinding = oldProperty.binding,\n oldBindingName = oldBinding.name,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'harlequin:property' && oldBindingName === newBindingName;\n });\n }\n\n if (newBindingType === 'harlequin:errorEventDefinition') {\n return find(oldProperties, function(oldProperty) {\n var newBindingRef = newBinding.errorRef,\n oldBinding = oldProperty.binding,\n oldBindingRef = oldBinding.errorRef,\n oldBindingType = oldBinding.type;\n\n return oldBindingType === 'harlequin:errorEventDefinition'\n && oldBindingRef === newBindingRef;\n });\n }\n}\n\nfunction findOldScopeElement(element, scopeTemplate, template) {\n var scopeName = scopeTemplate.type,\n id = scopeTemplate.id;\n\n if (scopeName === 'harlequin:Connector') {\n return findExtension(element, 'harlequin:Connector');\n }\n\n if (scopeName === 'bpmn:Error') {\n\n // (1) find by error event definition binding\n var errorEventDefinitionBinding = findErrorEventDefinitionBinding(template, id);\n\n if (!errorEventDefinitionBinding) {\n return;\n }\n\n // (2) find error event definition\n var errorEventDefinition = findOldBusinessObject(element, errorEventDefinitionBinding);\n\n if (!errorEventDefinition) {\n return;\n }\n\n // (3) retrieve referenced error\n return errorEventDefinition.errorRef;\n }\n}\n\nfunction isRootElementScope(scopeName) {\n return [ 'bpmn:Error' ].includes(scopeName);\n}\n\nfunction findOldScopeTemplate(scopeTemplate, oldTemplate) {\n var scopeName = scopeTemplate.type,\n scopeId = scopeTemplate.id,\n scopes = oldTemplate && handleLegacyScopes(oldTemplate.scopes);\n\n return scopes && find(scopes, function(scope) {\n\n if (isRootElementScope(scopeName)) {\n return scope.id === scopeId;\n }\n\n return scope.type === scopeName;\n });\n}\n\nfunction findErrorEventDefinitionBinding(template, templateErrorId) {\n return find(template.properties, function(property) {\n return property.binding.errorRef === templateErrorId;\n });\n}\n\n/**\n * Check whether property was changed after being set by template.\n *\n * @param {djs.model.Base|ModdleElement} element\n * @param {Object} oldProperty\n *\n * @returns {boolean}\n */\nfunction propertyChanged(element, oldProperty) {\n var businessObject = getBusinessObject(element);\n\n var oldBinding = oldProperty.binding,\n oldBindingName = oldBinding.name,\n oldBindingType = oldBinding.type,\n oldPropertyValue = oldProperty.value,\n conditionExpression,\n definition;\n\n if (oldBindingType === 'property') {\n if (oldBindingName === 'conditionExpression') {\n conditionExpression = businessObject.get('bpmn:conditionExpression');\n\n return conditionExpression.get('bpmn:body') !== oldPropertyValue;\n }\n\n return businessObject.get(oldBindingName) !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:field') {\n return businessObject.get('harlequin:string') !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:In') {\n if (oldBinding.expression) {\n return businessObject.get('sourceExpression') !== oldPropertyValue;\n } else {\n return businessObject.get('harlequin:source') !== oldPropertyValue;\n }\n }\n\n if (oldBindingType === 'harlequin:In:businessKey') {\n return businessObject.get('harlequin:businessKey') !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:Out') {\n return businessObject.get('harlequin:target') !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:inputParameter') {\n if (oldBinding.scriptFormat) {\n definition = businessObject.get('harlequin:definition');\n\n return definition && definition.get('harlequin:value') !== oldPropertyValue;\n } else {\n return businessObject.get('harlequin:value') !== oldPropertyValue;\n }\n }\n\n if (oldBindingType === 'harlequin:outputParameter') {\n return businessObject.get('harlequin:name') !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:property') {\n return businessObject.get('harlequin:value') !== oldPropertyValue;\n }\n\n if (oldBindingType === 'harlequin:errorEventDefinition') {\n return businessObject.get('expression') !== oldPropertyValue;\n }\n}","'use strict';\n\nvar eventDefinitionReference = require('./EventDefinitionReference'),\n elementReferenceProperty = require('./ElementReferenceProperty');\n\n\nmodule.exports = function(group, element, bpmnFactory, signalEventDefinition, translate) {\n\n group.entries = group.entries.concat(eventDefinitionReference(element, signalEventDefinition, bpmnFactory, {\n label: translate('Global Signal referenced'),\n elementName: 'signal',\n elementType: 'bpmn:Signal',\n referenceProperty: 'signalRef',\n newElementIdPrefix: 'Signal_'\n }));\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, signalEventDefinition, bpmnFactory, translate, {\n id: 'signal-element-name',\n label: translate('Global Signal Name'),\n referenceProperty: 'signalRef',\n modelProperty: 'name',\n shouldValidate: true\n })\n );\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./processdesigner.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar cmdHelper = require('../../../../helper/CmdHelper'),\n entryFactory = require('../../../../factory/EntryFactory'),\n elementHelper = require('../../../../helper/ElementHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper');\n\n\nvar resultVariable = require('./ResultVariable');\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is;\n\nvar forEach = require('lodash/forEach');\n\nvar attributeInfo = {\n bpmn: {\n element: 'calledElement',\n binding: 'harlequin:calledElementBinding',\n version: 'harlequin:calledElementVersion',\n versionTag: 'harlequin:calledElementVersionTag',\n tenantId: 'harlequin:calledElementTenantId'\n },\n\n cmmn: {\n element: 'harlequin:caseRef',\n binding: 'harlequin:caseBinding',\n version: 'harlequin:caseVersion',\n tenantId: 'harlequin:caseTenantId'\n },\n\n dmn: {\n element: 'harlequin:decisionRef',\n binding: 'harlequin:decisionRefBinding',\n version: 'harlequin:decisionRefVersion',\n versionTag: 'harlequin:decisionRefVersionTag',\n tenantId: 'harlequin:decisionRefTenantId'\n }\n};\n\nvar mapDecisionResultOptions = [\n {\n name: 'singleEntry (TypedValue)',\n value: 'singleEntry'\n },\n {\n name:'singleResult (Map)',\n value:'singleResult'\n },\n {\n name:'collectEntries (List)',\n value:'collectEntries'\n },\n {\n name:'resultList (List>)',\n value:'resultList'\n }\n];\n\nvar delegateVariableMappingOptions = [\n {\n name: 'variableMappingClass',\n value: 'variableMappingClass'\n },\n {\n name: 'variableMappingDelegateExpression',\n value: 'variableMappingDelegateExpression'\n }\n];\n\nfunction getHarlequinInWithBusinessKey(element) {\n var harlequinIn = [],\n bo = getBusinessObject(element);\n\n var harlequinInParams = extensionElementsHelper.getExtensionElements(bo, 'harlequin:In');\n\n forEach(harlequinInParams, function(param) {\n if (param.businessKey !== undefined) {\n harlequinIn.push(param);\n }\n });\n\n return harlequinIn;\n}\n\nfunction setBusinessKey(element, text, bpmnFactory) {\n var commands = [];\n\n var harlequinInWithBusinessKey = getHarlequinInWithBusinessKey(element);\n\n if (harlequinInWithBusinessKey.length) {\n commands.push(cmdHelper.updateBusinessObject(element, harlequinInWithBusinessKey[0], {\n businessKey: text\n }));\n } else {\n var bo = getBusinessObject(element),\n extensionElements = bo.extensionElements;\n\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateProperties(element, { extensionElements: extensionElements }));\n }\n\n var harlequinIn = elementHelper.createElement(\n 'harlequin:In',\n { 'businessKey': text },\n extensionElements,\n bpmnFactory\n );\n\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [ harlequinIn ],[]\n ));\n }\n\n return commands;\n}\n\nfunction deleteBusinessKey(element) {\n var harlequinInExtensions = getHarlequinInWithBusinessKey(element);\n var commands = [];\n forEach(harlequinInExtensions, function(elem) {\n commands.push(extensionElementsHelper.removeEntry(getBusinessObject(element), element, elem));\n });\n return commands;\n}\n\nfunction isSupportedCallableType(type) {\n return [ 'bpmn', 'cmmn', 'dmn' ].indexOf(type) !== -1;\n}\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var bindingOptions = [\n {\n name: translate('latest'),\n value: 'latest'\n },\n {\n name: translate('deployment'),\n value: 'deployment'\n },\n {\n name: translate('version'),\n value: 'version'\n },\n {\n name: translate('versionTag'),\n value: 'versionTag'\n }\n ];\n\n var getCallableType = options.getCallableType;\n\n var entries = [];\n\n function getAttribute(element, prop) {\n var type = getCallableType(element);\n return (attributeInfo[type] || {})[prop];\n }\n\n function getCallActivityBindingValue(element) {\n var type = getCallableType(element);\n var bo = getBusinessObject(element);\n var attr = (attributeInfo[type] || {}).binding;\n return bo.get(attr);\n }\n\n function getDelegateVariableMappingType(element) {\n var bo = getBusinessObject(element);\n\n var boVariableMappingClass = bo.get('harlequin:variableMappingClass'),\n boVariableMappingDelegateExpression = bo.get('harlequin:variableMappingDelegateExpression');\n\n var delegateVariableMappingType = '';\n if (typeof boVariableMappingClass !== 'undefined') {\n delegateVariableMappingType = 'variableMappingClass';\n } else\n\n if (typeof boVariableMappingDelegateExpression !== 'undefined') {\n delegateVariableMappingType = 'variableMappingDelegateExpression';\n }\n\n return delegateVariableMappingType;\n }\n\n\n entries.push(entryFactory.textField(translate, {\n id: 'callable-element-ref',\n dataValueLabel: 'callableElementLabel',\n modelProperty: 'callableElementRef',\n\n get: function(element, node) {\n var callableElementRef;\n\n var attr = getAttribute(element, 'element');\n if (attr) {\n var bo = getBusinessObject(element);\n callableElementRef = bo.get(attr);\n }\n\n var label = '';\n var type = getCallableType(element);\n if (type === 'bpmn') {\n label = translate('Called Element');\n }\n else if (type === 'cmmn') {\n label = translate('Case Ref');\n }\n else if (type === 'dmn') {\n label = translate('Decision Ref');\n }\n\n return {\n callableElementRef: callableElementRef,\n callableElementLabel: label\n };\n },\n\n set: function(element, values, node) {\n var newCallableElementRef = values.callableElementRef;\n var attr = getAttribute(element, 'element');\n\n var props = {};\n props[attr] = newCallableElementRef || '';\n\n return cmdHelper.updateProperties(element, props);\n },\n\n validate: function(element, values, node) {\n var elementRef = values.callableElementRef;\n var type = getCallableType(element);\n return isSupportedCallableType(type) && !elementRef ? { callableElementRef: translate('Must provide a value') } : {};\n },\n\n hidden: function(element, node) {\n return !isSupportedCallableType(getCallableType(element));\n }\n\n }));\n\n entries.push(entryFactory.selectBox(translate, {\n id: 'callable-binding',\n label: translate('Binding'),\n selectOptions: function(element) {\n var type = getCallableType(element);\n var options;\n\n if (type === 'cmmn') {\n options = bindingOptions.filter(function(bindingOption) {\n return bindingOption.value !== 'versionTag';\n });\n } else {\n options = bindingOptions;\n }\n return options;\n },\n modelProperty: 'callableBinding',\n\n get: function(element, node) {\n var callableBinding;\n\n var attr = getAttribute(element, 'binding');\n if (attr) {\n var bo = getBusinessObject(element);\n callableBinding = bo.get(attr) || 'latest';\n }\n\n return {\n callableBinding: callableBinding\n };\n },\n\n set: function(element, values, node) {\n var binding = values.callableBinding;\n var attr = getAttribute(element, 'binding'),\n attrVer = getAttribute(element, 'version'),\n attrVerTag = getAttribute(element, 'versionTag');\n\n var props = {};\n props[attr] = binding;\n\n // set version and versionTag values always to undefined to delete the existing value\n props[attrVer] = undefined;\n props[attrVerTag] = undefined;\n\n return cmdHelper.updateProperties(element, props);\n },\n\n hidden: function(element, node) {\n return !isSupportedCallableType(getCallableType(element));\n }\n\n }));\n\n entries.push(entryFactory.textField(translate, {\n id: 'callable-version',\n label: translate('Version'),\n modelProperty: 'callableVersion',\n\n get: function(element, node) {\n var callableVersion;\n\n var attr = getAttribute(element, 'version');\n if (attr) {\n var bo = getBusinessObject(element);\n callableVersion = bo.get(attr);\n }\n\n return {\n callableVersion: callableVersion\n };\n },\n\n set: function(element, values, node) {\n var version = values.callableVersion;\n var attr = getAttribute(element, 'version');\n\n var props = {};\n props[attr] = version || undefined;\n\n return cmdHelper.updateProperties(element, props);\n },\n\n validate: function(element, values, node) {\n var version = values.callableVersion;\n\n var type = getCallableType(element);\n return (\n isSupportedCallableType(type) &&\n getCallActivityBindingValue(element) === 'version' && (\n !version ? { callableVersion: translate('Must provide a value') } : {}\n )\n );\n },\n\n hidden: function(element, node) {\n var type = getCallableType(element);\n return !isSupportedCallableType(type) || getCallActivityBindingValue(element) !== 'version';\n }\n\n }));\n\n entries.push(entryFactory.textField(translate, {\n id: 'callable-version-tag',\n label: translate('Version Tag'),\n modelProperty: 'versionTag',\n\n get: function(element, node) {\n var versionTag;\n\n var attr = getAttribute(element, 'versionTag');\n\n if (attr) {\n var bo = getBusinessObject(element);\n\n versionTag = bo.get(attr);\n }\n\n return {\n versionTag: versionTag\n };\n },\n\n set: function(element, values, node) {\n var versionTag = values.versionTag;\n\n var attr = getAttribute(element, 'versionTag');\n\n var props = {};\n\n props[attr] = versionTag || undefined;\n\n return cmdHelper.updateProperties(element, props);\n },\n\n validate: function(element, values, node) {\n var versionTag = values.versionTag;\n\n var type = getCallableType(element);\n\n return (\n isSupportedCallableType(type) &&\n getCallActivityBindingValue(element) === 'versionTag' && (\n !versionTag ? { versionTag: translate('Must provide a value') } : {}\n )\n );\n },\n\n hidden: function(element, node) {\n var type = getCallableType(element);\n\n return !isSupportedCallableType(type) || getCallActivityBindingValue(element) !== 'versionTag';\n }\n\n }));\n\n entries.push(entryFactory.textField(translate, {\n id: 'tenant-id',\n label: translate('Tenant Id'),\n modelProperty: 'tenantId',\n\n get: function(element, node) {\n var tenantId;\n\n var attr = getAttribute(element, 'tenantId');\n if (attr) {\n var bo = getBusinessObject(element);\n tenantId = bo.get(attr);\n }\n\n return {\n tenantId: tenantId\n };\n },\n\n set: function(element, values, node) {\n var tenantId = values.tenantId;\n var attr = getAttribute(element, 'tenantId');\n\n var props = {};\n props[attr] = tenantId || undefined;\n\n return cmdHelper.updateProperties(element, props);\n },\n\n hidden: function(element, node) {\n var type = getCallableType(element);\n return !isSupportedCallableType(type);\n }\n\n }));\n\n if (is(getBusinessObject(element), 'bpmn:CallActivity')) {\n entries.push(entryFactory.checkbox(translate, {\n id: 'callable-business-key',\n label: translate('Business Key'),\n modelProperty: 'callableBusinessKey',\n\n get: function(element, node) {\n var harlequinIn = getHarlequinInWithBusinessKey(element);\n\n return {\n callableBusinessKey: !!(harlequinIn && harlequinIn.length > 0)\n };\n },\n\n set: function(element, values, node) {\n if (values.callableBusinessKey) {\n return setBusinessKey(element, '#{execution.processBusinessKey}', bpmnFactory);\n } else {\n return deleteBusinessKey(element);\n }\n }\n }));\n }\n\n entries.push(entryFactory.textField(translate, {\n id: 'business-key-expression',\n label: translate('Business Key Expression'),\n modelProperty: 'businessKey',\n\n get: function(element, node) {\n var harlequinInWithBusinessKey = getHarlequinInWithBusinessKey(element);\n\n return {\n businessKey: (\n harlequinInWithBusinessKey.length ?\n harlequinInWithBusinessKey[0].get('harlequin:businessKey') :\n undefined\n )\n };\n },\n\n set: function(element, values, node) {\n var businessKey = values.businessKey;\n\n return setBusinessKey(element, businessKey, bpmnFactory);\n },\n\n validate: function(element, values, node) {\n var businessKey = values.businessKey;\n\n return businessKey === '' ? { businessKey: translate('Must provide a value') } : {};\n },\n\n hidden: function(element, node) {\n return !getHarlequinInWithBusinessKey(element).length;\n }\n\n }));\n\n entries = entries.concat(resultVariable(element, bpmnFactory, {\n id: 'dmn-resultVariable',\n getBusinessObject: getBusinessObject,\n getImplementationType: getCallableType,\n hideResultVariable: function(element, node) {\n return getCallableType(element) !== 'dmn';\n }\n }, translate));\n\n entries.push(entryFactory.selectBox(translate, {\n id: 'dmn-map-decision-result',\n label: translate('Map Decision Result'),\n selectOptions: mapDecisionResultOptions,\n modelProperty: 'mapDecisionResult',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return {\n mapDecisionResult: bo.get('harlequin:mapDecisionResult') || 'resultList'\n };\n },\n\n set: function(element, values, node) {\n return cmdHelper.updateProperties(element, {\n 'harlequin:mapDecisionResult': values.mapDecisionResult || 'resultList'\n });\n },\n\n hidden: function(element, node) {\n var bo = getBusinessObject(element);\n var resultVariable = bo.get('harlequin:resultVariable');\n return !(getCallableType(element) === 'dmn' && typeof resultVariable !== 'undefined');\n }\n\n }));\n\n\n entries.push(entryFactory.selectBox(translate, {\n id: 'delegateVariableMappingType',\n label: translate('Delegate Variable Mapping'),\n selectOptions: delegateVariableMappingOptions,\n emptyParameter: true,\n modelProperty: 'delegateVariableMappingType',\n\n get: function(element, node) {\n return {\n delegateVariableMappingType : getDelegateVariableMappingType(element)\n };\n },\n\n set: function(element, values, node) {\n var delegateVariableMappingType = values.delegateVariableMappingType;\n\n var props = {\n 'harlequin:variableMappingClass' : undefined,\n 'harlequin:variableMappingDelegateExpression' : undefined\n };\n\n if (delegateVariableMappingType === 'variableMappingClass') {\n props['harlequin:variableMappingClass'] = '';\n }\n else if (delegateVariableMappingType === 'variableMappingDelegateExpression') {\n props['harlequin:variableMappingDelegateExpression'] = '';\n }\n\n return cmdHelper.updateProperties(element, props);\n },\n\n hidden: function(element, node) {\n return (getCallableType(element) !== 'bpmn');\n }\n\n }));\n\n entries.push(entryFactory.textField(translate, {\n id: 'delegateVariableMapping',\n dataValueLabel: 'delegateVariableMappingLabel',\n modelProperty: 'delegateVariableMapping',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n\n var label = '';\n var delegateVariableMapping = undefined;\n var type = getDelegateVariableMappingType(element);\n\n if (type === 'variableMappingClass') {\n label = translate('Class');\n delegateVariableMapping = bo.get('harlequin:variableMappingClass');\n }\n else if (type === 'variableMappingDelegateExpression') {\n label = translate('Delegate Expression');\n delegateVariableMapping = bo.get('harlequin:variableMappingDelegateExpression');\n }\n\n return {\n delegateVariableMapping: delegateVariableMapping,\n delegateVariableMappingLabel: label\n };\n },\n\n set: function(element, values, node) {\n var delegateVariableMapping = values.delegateVariableMapping;\n\n var attr = 'harlequin:' + getDelegateVariableMappingType(element);\n\n var props = {};\n props[attr] = delegateVariableMapping || undefined;\n\n return cmdHelper.updateProperties(element, props);\n },\n\n validate: function(element, values, node) {\n var delegateVariableMapping = values.delegateVariableMapping;\n return (\n getCallableType(element) === 'bpmn' && (\n !delegateVariableMapping ? { delegateVariableMapping: translate('Must provide a value') } : {}\n )\n );\n },\n\n hidden: function(element, node) {\n return !(getCallableType(element) === 'bpmn' && getDelegateVariableMappingType(element) !== '');\n }\n\n }));\n\n return entries;\n};\n","'use strict';\n\nvar inputParameters = require('./implementation/InputParameters');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var inputParametersEntry = inputParameters(element, bpmnFactory, {\n idPrefix: 'connector-',\n insideConnector: true\n }, translate);\n\n group.entries = group.entries.concat(inputParametersEntry.entries);\n};\n","'use strict';\n\nvar properties = require('./implementation/Properties'),\n elementHelper = require('../../../helper/ElementHelper'),\n cmdHelper = require('../../../helper/CmdHelper');\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var propertiesEntry = properties(element, bpmnFactory, {\n id: 'properties',\n modelProperties: [ 'name', 'value' ],\n labels: [ translate('Name'), translate('Value') ],\n\n getParent: function(element, node, bo) {\n return bo.extensionElements;\n },\n\n createParent: function(element, bo) {\n var parent = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n var cmd = cmdHelper.updateBusinessObject(element, bo, { extensionElements: parent });\n return {\n cmd: cmd,\n parent: parent\n };\n }\n }, translate);\n\n if (propertiesEntry) {\n group.entries.push(propertiesEntry);\n }\n\n};\n","'use strict';\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nvar domQuery = require('min-dom').query,\n domify = require('min-dom').domify,\n domAttr = require('min-dom').attr;\n\nvar forEach = require('lodash/forEach'),\n find = require('lodash/find');\n\nvar elementHelper = require('../../../../helper/ElementHelper');\nvar utils = require('../../../../Utils'),\n escapeHTML = utils.escapeHTML;\n\nvar selector = 'select[name=selectedElement]';\n\n/**\n * Get select box containing all elements.\n *\n * @param {DOMElement} node\n *\n * @return {DOMElement} the select box\n */\nfunction getSelectBox(node) {\n return domQuery(selector, node);\n}\n\n/**\n * Find element by given id.\n *\n * @param {ModdleElement} eventDefinition\n *\n * @return {ModdleElement} an element\n */\nfunction findElementById(eventDefinition, type, id) {\n var elements = utils.findRootElementsByType(eventDefinition, type);\n return find(elements, function(element) {\n return element.id === id;\n });\n}\n\n/**\n * Create an entry to modify the reference to an element from an\n * event definition.\n *\n * @param {djs.model.Base} element\n * @param {ModdleElement} definition\n * @param {BpmnFactory} bpmnFactory\n * @param {Object} options\n * @param {string} options.label the label of the entry\n * @param {string} options.description the description of the entry\n * @param {string} options.elementName the name of the element\n * @param {string} options.elementType the type of the element\n * @param {string} options.referenceProperty the name of referencing property\n * @param {string} options.newElementIdPrefix the prefix of a new created element\n *\n * @return {Array} return an array containing the entries\n */\nmodule.exports = function(element, definition, bpmnFactory, options) {\n\n var elementName = options.elementName || '',\n elementType = options.elementType,\n referenceProperty = options.referenceProperty;\n\n var newElementIdPrefix = options.newElementIdPrefix || 'elem_';\n\n var label = options.label || '',\n description = options.description || '';\n\n var entries = [];\n\n var canBeHidden = !!options.hidden && typeof options.hidden === 'function';\n\n entries.push({\n\n id: options.id || 'event-definitions-' + elementName,\n description: description,\n isShown: function() {\n if (canBeHidden) {\n return !options.hidden.apply(definition, arguments);\n }\n return !options.hidden;\n },\n html: '
' +\n '' +\n '
' +\n '' +\n '' +\n '
' +\n '
',\n\n get: function(element, entryNode) {\n utils.updateOptionsDropDown(selector, definition, elementType, entryNode);\n var reference = definition.get(referenceProperty);\n return {\n selectedElement: (reference && reference.id) || ''\n };\n },\n\n set: function(element, values) {\n var selection = values.selectedElement;\n\n var props = {};\n\n if (!selection || typeof selection === 'undefined') {\n\n // remove reference to element\n props[referenceProperty] = undefined;\n return cmdHelper.updateBusinessObject(element, definition, props);\n }\n\n var commands = [];\n\n var selectedElement = findElementById(definition, elementType, selection);\n if (!selectedElement) {\n var root = utils.getRoot(definition);\n\n // create a new element\n selectedElement = elementHelper.createElement(elementType, { name: selection }, root, bpmnFactory);\n commands.push(cmdHelper.addAndRemoveElementsFromList(element, root, 'rootElements', null, [ selectedElement ]));\n }\n\n // update reference to element\n props[referenceProperty] = selectedElement;\n commands.push(cmdHelper.updateBusinessObject(element, definition, props));\n\n return commands;\n },\n\n addElement: function(element, inputNode) {\n\n // note: this generated id will be used as name\n // of the element and not as id\n var id = utils.nextId(newElementIdPrefix);\n\n var optionTemplate = domify('');\n\n // add new option\n var selectBox = getSelectBox(inputNode);\n selectBox.insertBefore(optionTemplate, selectBox.firstChild);\n\n // select new element in the select box\n forEach(selectBox, function(option) {\n if (option.value === id) {\n domAttr(option, 'selected', 'selected');\n } else {\n domAttr(option, 'selected', null);\n }\n });\n\n return true;\n }\n\n });\n\n return entries;\n\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n entryFactory = require('../../../factory/EntryFactory'),\n cmdHelper = require('../../../helper/CmdHelper'),\n scriptImplementation = require('./implementation/Script');\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n var bo;\n\n if (is(element, 'bpmn:ScriptTask')) {\n bo = getBusinessObject(element);\n }\n\n if (!bo) {\n return;\n }\n\n var script = scriptImplementation('scriptFormat', 'script', false, translate);\n group.entries.push({\n id: 'script-implementation',\n label: translate('Script'),\n html: script.template,\n\n get: function(element) {\n return script.get(element, bo);\n },\n\n set: function(element, values, containerElement) {\n var properties = script.set(element, values, containerElement);\n\n return cmdHelper.updateProperties(element, properties);\n },\n\n validate: function(element, values) {\n return script.validate(element, values);\n },\n\n script : script,\n\n cssClasses: ['bpp-textfield']\n\n });\n\n group.entries.push(entryFactory.textField(translate, {\n id : 'scriptResultVariable',\n label : translate('Result Variable'),\n modelProperty : 'scriptResultVariable',\n\n get: function(element, propertyName) {\n var boResultVariable = bo.get('harlequin:resultVariable');\n\n return { scriptResultVariable : boResultVariable };\n },\n\n set: function(element, values, containerElement) {\n return cmdHelper.updateProperties(element, {\n 'harlequin:resultVariable': values.scriptResultVariable.length\n ? values.scriptResultVariable\n : undefined\n });\n }\n\n }));\n\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../process-builder/lib/base/BaseServices').getBusinessObject,\n getExtensionElements = require('./ExtensionElementsHelper').getExtensionElements;\n\nvar FormHelper = {};\n\nmodule.exports = FormHelper;\n\n/**\n * Return form data from business object or undefined if none exist\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement|undefined} formData\n */\nFormHelper.getFormData = function(element) {\n var bo = getBusinessObject(element);\n\n var formData = getExtensionElements(bo, 'harlequin:FormData');\n\n return formData[0];\n};\n\n\n/**\n * Return all form fields existing in the business object, and\n * an empty array if none exist.\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of form field objects\n */\nFormHelper.getFormFields = function(element) {\n var formData = this.getFormData(element);\n\n if (typeof formData === 'undefined') {\n return [];\n }\n\n return formData.fields || [];\n};\n\n\n/**\n * Get a form field from the business object at given index\n *\n * @param {djs.model.Base} element\n * @param {number} idx\n *\n * @return {ModdleElement} the form field\n */\nFormHelper.getFormField = function(element, idx) {\n\n var formFields = this.getFormFields(element);\n\n return formFields[idx];\n};\n\n\n/**\n * Get all constraints for a specific form field from the business object\n *\n * @param {ModdleElement} formField\n *\n * @return {Array} a list of constraint objects\n */\nFormHelper.getConstraints = function(formField) {\n if (formField && formField.validation && formField.validation.constraints) {\n return formField.validation.constraints;\n }\n return [];\n};\n\n\n/**\n * Get all harlequin:value objects for a specific form field from the business object\n *\n * @param {ModdleElement} formField\n *\n * @return {Array} a list of harlequin:value objects\n */\nFormHelper.getEnumValues = function(formField) {\n if (formField && formField.values) {\n return formField.values;\n }\n return [];\n};\n\n","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n escapeHTML = require('../../../../Utils').escapeHTML;\n\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar domClasses = require('min-dom').classes;\n\n/**\n * Get a property value of the loop characteristics.\n *\n * @param {djs.model.Base} element\n * @param {string} propertyName\n *\n * @return {any} the property value\n */\nfunction getProperty(element, propertyName) {\n var loopCharacteristics = getLoopCharacteristics(element);\n return loopCharacteristics && loopCharacteristics.get(propertyName);\n}\n\n/**\n * Get the body of a given expression.\n *\n * @param {ModdleElement} expression\n *\n * @return {string} the body (value) of the expression\n */\nfunction getBody(expression) {\n return expression && expression.get('body');\n}\n\n\n/**\n * Get the loop characteristics of an element.\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement} the loop characteristics\n */\nfunction getLoopCharacteristics(element) {\n var bo = getBusinessObject(element);\n return bo.loopCharacteristics;\n}\n\n/**\n * Get the loop cardinality of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement} an expression representing the loop cardinality\n */\nfunction getLoopCardinality(element) {\n return getProperty(element, 'loopCardinality');\n}\n\n/**\n * Get the loop cardinality value of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {string} the loop cardinality value\n */\nfunction getLoopCardinalityValue(element) {\n var loopCardinality = getLoopCardinality(element);\n return getBody(loopCardinality);\n}\n\n/**\n * Get the completion condition of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement} an expression representing the completion condition\n */\nfunction getCompletionCondition(element) {\n return getProperty(element, 'completionCondition');\n}\n\n/**\n * Get the completion condition value of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {string} the completion condition value\n */\nfunction getCompletionConditionValue(element) {\n var completionCondition = getCompletionCondition(element);\n return getBody(completionCondition);\n}\n\n/**\n * Get the 'harlequin:collection' attribute value of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {string} the 'harlequin:collection' value\n */\nfunction getCollection(element) {\n return getProperty(element, 'harlequin:collection');\n}\n\n/**\n * Get the 'harlequin:elementVariable' attribute value of the loop characteristics.\n *\n * @param {djs.model.Base} element\n *\n * @return {string} the 'harlequin:elementVariable' value\n */\nfunction getElementVariable(element) {\n return getProperty(element, 'harlequin:elementVariable');\n}\n\n\n/**\n * Creates 'bpmn:FormalExpression' element.\n *\n * @param {ModdleElement} parent\n * @param {string} body\n * @param {BpmnFactory} bpmnFactory\n *\n * @result {ModdleElement} a formal expression\n */\nfunction createFormalExpression(parent, body, bpmnFactory) {\n return elementHelper.createElement('bpmn:FormalExpression', { body: body }, parent, bpmnFactory);\n}\n\n/**\n * Updates a specific formal expression of the loop characteristics.\n *\n * @param {djs.model.Base} element\n * @param {string} propertyName\n * @param {string} newValue\n * @param {BpmnFactory} bpmnFactory\n */\nfunction updateFormalExpression(element, propertyName, newValue, bpmnFactory) {\n var loopCharacteristics = getLoopCharacteristics(element);\n\n var expressionProps = {};\n\n if (!newValue) {\n\n // remove formal expression\n expressionProps[propertyName] = undefined;\n return cmdHelper.updateBusinessObject(element, loopCharacteristics, expressionProps);\n }\n\n var existingExpression = loopCharacteristics.get(propertyName);\n\n if (!existingExpression) {\n\n // add formal expression\n expressionProps[propertyName] = createFormalExpression(loopCharacteristics, newValue, bpmnFactory);\n return cmdHelper.updateBusinessObject(element, loopCharacteristics, expressionProps);\n }\n\n // edit existing formal expression\n return cmdHelper.updateBusinessObject(element, existingExpression, {\n body: newValue\n });\n}\n\n\nmodule.exports = function(element, bpmnFactory, translate) {\n\n var entries = [];\n\n // error message /////////////////////////////////////////////////////////////////\n\n entries.push({\n id: 'multiInstance-errorMessage',\n html: '
' +\n ' ' +\n escapeHTML(translate('Must provide either loop cardinality or collection')) +\n '
',\n\n isValid: function(element, node, notification, scope) {\n var loopCharacteristics = getLoopCharacteristics(element);\n\n var isValid = true;\n if (loopCharacteristics) {\n var loopCardinality = getLoopCardinalityValue(element);\n var collection = getCollection(element);\n\n isValid = !loopCardinality && !collection;\n }\n\n domClasses(node).toggle('bpp-hidden', !isValid);\n domClasses(notification).toggle('bpp-error-message', isValid);\n\n return isValid;\n }\n });\n\n // loop cardinality //////////////////////////////////////////////////////////////\n\n entries.push(entryFactory.textField(translate, {\n id: 'multiInstance-loopCardinality',\n label: translate('Loop Cardinality'),\n modelProperty: 'loopCardinality',\n\n get: function(element, node) {\n return {\n loopCardinality: getLoopCardinalityValue(element)\n };\n },\n\n set: function(element, values) {\n return updateFormalExpression(element, 'loopCardinality', values.loopCardinality, bpmnFactory);\n }\n }));\n\n\n // collection //////////////////////////////////////////////////////////////////\n\n entries.push(entryFactory.textField(translate, {\n id: 'multiInstance-collection',\n label: translate('Collection'),\n modelProperty: 'collection',\n\n get: function(element, node) {\n return {\n collection: getCollection(element)\n };\n },\n\n set: function(element, values) {\n var loopCharacteristics = getLoopCharacteristics(element);\n return cmdHelper.updateBusinessObject(element, loopCharacteristics, {\n 'harlequin:collection': values.collection || undefined\n });\n },\n\n validate: function(element, values, node) {\n var collection = getCollection(element);\n var elementVariable = getElementVariable(element);\n\n if (!collection && elementVariable) {\n return { collection : 'Must provide a value' };\n }\n }\n }));\n\n\n // element variable ////////////////////////////////////////////////////////////\n\n entries.push(entryFactory.textField(translate, {\n id: 'multiInstance-elementVariable',\n label: translate('Element Variable'),\n modelProperty: 'elementVariable',\n\n get: function(element, node) {\n return {\n elementVariable: getElementVariable(element)\n };\n },\n\n set: function(element, values) {\n var loopCharacteristics = getLoopCharacteristics(element);\n return cmdHelper.updateBusinessObject(element, loopCharacteristics, {\n 'harlequin:elementVariable': values.elementVariable || undefined\n });\n }\n }));\n\n\n // Completion Condition //////////////////////////////////////////////////////\n\n entries.push(entryFactory.textField(translate, {\n id: 'multiInstance-completionCondition',\n label: translate('Completion Condition'),\n modelProperty: 'completionCondition',\n\n get: function(element) {\n return {\n completionCondition: getCompletionConditionValue(element)\n };\n },\n\n set: function(element, values) {\n return updateFormalExpression(element, 'completionCondition', values.completionCondition, bpmnFactory);\n }\n }));\n\n return entries;\n\n};\n","'use strict';\n\nvar outputParameters = require('./implementation/OutputParameters');\n\nmodule.exports = function(group, element, bpmnFactory, elementTemplates, translate) {\n\n var template = elementTemplates.get(element);\n\n if (template) {\n return;\n }\n\n var outputParametersEntry = outputParameters(element, bpmnFactory, {}, translate);\n\n group.entries = group.entries.concat(outputParametersEntry.entries);\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildform.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n elementReferenceProperty = require('../../../bpmn/parts/implementation/ElementReferenceProperty'),\n utils = require('../../../../Utils');\n\nmodule.exports = function(\n group, element, bpmnFactory, errorEventDefinition,\n showErrorCodeVariable, showErrorMessageVariable, translate\n) {\n\n\n var getValue = function(modelProperty) {\n return function(element) {\n var modelPropertyValue = errorEventDefinition.get('harlequin:' + modelProperty);\n\n return modelPropertyValue;\n };\n };\n\n var setValue = function(modelProperty) {\n return function(element, values) {\n if (values[modelProperty] === '')\n values[modelProperty] = undefined;\n\n return cmdHelper.updateBusinessObject(element, errorEventDefinition, values);\n };\n };\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, errorEventDefinition, bpmnFactory, translate, {\n id: 'error-element-message',\n label: translate('Message'),\n referenceProperty: 'errorRef',\n modelProperty: 'errorMessage'\n })\n );\n\n if (showErrorCodeVariable) {\n group.entries.push(entryFactory.validationAwareTextField(translate, {\n id: 'errorCodeVariable',\n label: translate('Code Variable'),\n modelProperty : 'errorCodeVariable',\n description: translate('Define the name of the variable that will contain the error code'),\n\n getProperty: getValue('errorCodeVariable'),\n setProperty: setValue('errorCodeVariable'),\n\n validate: function(element, values) {\n var validation = {},\n targetValue = values.errorCodeVariable;\n\n if (utils.containsSpace(targetValue)) {\n validation.errorCodeVariable = translate('Error code variable must not contain spaces.');\n }\n\n return validation;\n }\n }));\n }\n\n if (showErrorMessageVariable) {\n group.entries.push(entryFactory.validationAwareTextField(translate, {\n id: 'errorMessageVariable',\n label: translate('Message Variable'),\n modelProperty: 'errorMessageVariable',\n\n getProperty: getValue('errorMessageVariable'),\n setProperty: setValue('errorMessageVariable'),\n description: translate('Define the name of the variable that will contain the error message'),\n\n validate: function(element, values) {\n var validation = {},\n targetValue = values.errorMessageVariable;\n\n if (utils.containsSpace(targetValue)) {\n validation.errorMessageVariable = translate('Error message variable must not contain spaces.');\n }\n\n return validation;\n }\n }));\n }\n\n};\n","'use strict';\n\nvar inherits = require('inherits');\n\nvar getTemplateId = require('./Helper').getTemplateId;\n\nvar isBoolean = require('lodash/isBoolean');\n\nvar find = require('min-dash').find,\n isNumber = require('min-dash').isNumber;\n\nvar handleLegacyScopes = require('./services/handleLegacyScopes');\n\nvar PropertiesActivator = require('../../../PropertiesActivator');\n\nvar HIGHER_PRIORITY = 1100;\n\n/**\n * Decides what entries are visible and editable. When an element template is applied only entries\n * in the element template tab are visible. Override this behavior through a properties activator\n * with higher priority or by specifying `entriesVisible`.\n *\n * @param {EventBus} eventBus\n * @param {ElementTemplates} elementTemplates\n */\nfunction CustomElementsPropertiesActivator(eventBus, elementTemplates) {\n PropertiesActivator.call(this, eventBus, HIGHER_PRIORITY);\n\n this.isEntryVisible = function(element, entry, group, tab) {\n var template = elementTemplates.get(element),\n templateId = getTemplateId(element);\n\n if (templateId && !isEntryVisible(entry, tab, template)) {\n return false;\n }\n };\n\n this.isPropertyEditable = function(propertyName, element, entry, group, tab) {\n var template = elementTemplates.get(element);\n\n if (template && !isEntryEditable(entry, template)) {\n return false;\n }\n };\n}\n\nCustomElementsPropertiesActivator.$inject = [ 'eventBus', 'elementTemplates' ];\n\ninherits(CustomElementsPropertiesActivator, PropertiesActivator);\n\nmodule.exports = CustomElementsPropertiesActivator;\n\n\n\n// helpers //////////\n\n\nvar CUSTOM_PROPERTIES_PATTERN = /^custom-/;\n\nvar DEFAULT_ENTRIES_VISIBLE = {\n _all: false\n};\n\nfunction isCustomEntry(entry) {\n return CUSTOM_PROPERTIES_PATTERN.test(entry.id);\n}\n\nfunction isEntryVisible(entry, tab, template) {\n var entryId = entry.id;\n\n if (tab.id === 'element-template') {\n return true;\n }\n\n var entriesVisible = template && template.entriesVisible || DEFAULT_ENTRIES_VISIBLE;\n\n if (isBoolean(entriesVisible)) {\n return entriesVisible;\n }\n\n var defaultVisible = entriesVisible._all || false,\n entryVisible = entriesVisible[ entryId ];\n\n if (defaultVisible) {\n return entryVisible !== false;\n } else {\n return entryVisible === true;\n }\n}\n\nfunction isEntryEditable(entry, template) {\n\n var property;\n\n if (isCustomEntry(entry)) {\n property = getProperty(template, entry);\n\n return property && property.editable !== false;\n }\n\n return true;\n}\n\nfunction getProperty(template, entry) {\n\n var idxAsNumber,\n scope,\n scopeName;\n\n var throwError = function() {\n throw new Error('cannot extract property index for entry <' + entry.id + '>');\n };\n\n // (0) retrieve raw property idx from entry\n var idxOrScope = entry.id.replace('custom-' + template.id + '-', '');\n\n // (1) handle custom props entries\n // e.g. custom-com.example.template-{idx}\n if (!idxOrScope.includes('-')) {\n idxAsNumber = parseInt(idxOrScope, 10);\n\n if (!isNumber(idxAsNumber)) {\n throwError();\n }\n\n return template.properties[idxAsNumber];\n }\n\n // (2) handle scope entries\n // e.g. custom-com.example.template-harlequin_Connector-{idx}\n var entryParts = idxOrScope.split('-');\n\n if (entryParts.length == 2) {\n scopeName = entryParts[0].replace(/_/g, ':');\n\n idxAsNumber = parseInt(entryParts[1], 10);\n\n if (scopeName && isNumber(idxAsNumber)) {\n scope = findScopeForName(handleLegacyScopes(template.scopes), scopeName);\n\n return scope.properties[idxAsNumber];\n }\n\n }\n\n throwError();\n}\n\nfunction findScopeForName(scopes, scopeName) {\n return find(scopes, function(scope) {\n return scope.type === scopeName;\n });\n}\n","'use strict';\n\n/**\n * The label factory provides a label entry. For the label text\n * it expects either a string provided by the options.labelText\n * parameter or it could be generated programmatically using a\n * function passed as the options.get parameter.\n *\n * @param {Object} options\n * @param {string} options.id\n * @param {string} [options.labelText]\n * @param {Function} [options.get]\n * @param {Function} [options.showLabel]\n * @param {Boolean} [options.divider] adds a divider at the top of the label if true; default: false\n */\nvar label = function(options) {\n return {\n id: options.id,\n html: '',\n get: function(element, node) {\n if (typeof options.get === 'function') {\n return options.get(element, node);\n }\n return { label: options.labelText };\n },\n showLabel: function(element, node) {\n if (typeof options.showLabel === 'function') {\n return options.showLabel(element, node);\n }\n return true;\n }\n };\n};\n\nmodule.exports = label;\n","'use strict';\r\n\r\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\r\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\r\n\r\nvar tasklist = require('./implementation/Tasklist');\r\n\r\nmodule.exports = function(group, element, bpmnFactory, translate) {\r\n var businessObject = getBusinessObject(element);\r\n\r\n if (is(element, 'harlequin:Process') ||\r\n is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\r\n\r\n group.entries = group.entries.concat(tasklist(element, bpmnFactory, {\r\n getBusinessObject: function(element) {\r\n var bo = getBusinessObject(element);\r\n\r\n if (!is(bo, 'bpmn:Participant')) {\r\n return bo;\r\n }\r\n\r\n return bo.get('processRef');\r\n }\r\n }, translate));\r\n\r\n }\r\n};\r\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n entryFactory = require('../../../factory/EntryFactory'),\n participantHelper = require('../../../helper/ParticipantHelper'),\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n nameEntryFactory = require('./implementation/Name'),\n utils = require('../../../Utils');\n\nmodule.exports = function(group, element, translate, options) {\n var businessObject = getBusinessObject(element);\n\n var processIdDescription = options && options.processIdDescription;\n\n if (is(element, 'bpmn:Process') || (is(element, 'bpmn:Participant') && businessObject.get('processRef'))) {\n\n /**\n * processId\n */\n if (is(element, 'bpmn:Participant')) {\n var idEntry = entryFactory.validationAwareTextField(translate, {\n id: 'process-id',\n label: translate('Process Id'),\n description: processIdDescription && translate(processIdDescription),\n modelProperty: 'processId'\n });\n\n // in participants we have to change the default behavior of set and get\n idEntry.get = function(element) {\n var properties = participantHelper.getProcessBusinessObject(element, 'id');\n return { processId: properties.id };\n };\n\n idEntry.set = function(element, values) {\n return participantHelper.modifyProcessBusinessObject(element, 'id', { id: values.processId });\n };\n\n idEntry.validate = function(element, values) {\n var idValue = values.processId;\n\n var bo = getBusinessObject(element);\n\n var processIdError = utils.isIdValid(bo.processRef, idValue, translate);\n\n return processIdError ? { processId: processIdError } : {};\n };\n\n group.entries.push(idEntry);\n\n\n /**\n * process name\n */\n var processNameEntry = nameEntryFactory(element, {\n id: 'process-name',\n label: translate('Process Name')\n })[0];\n\n // in participants we have to change the default behavior of set and get\n processNameEntry.get = function(element) {\n return participantHelper.getProcessBusinessObject(element, 'name');\n };\n\n processNameEntry.set = function(element, values) {\n return participantHelper.modifyProcessBusinessObject(element, 'name', values);\n };\n\n group.entries.push(processNameEntry);\n }\n }\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n asyncContinuation = require('./implementation/AsyncContinuation');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n if (is(element, 'harlequin:AsyncCapable')) {\n\n group.entries = group.entries.concat(asyncContinuation(element, bpmnFactory, {\n getBusinessObject: getBusinessObject\n }, translate));\n\n }\n};","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar minDash = require('min-dash');\n\nvar escapedChars = {\n 'b': '\\b',\n 'f': '\\f',\n 'n': '\\n',\n 'r': '\\r',\n 't': '\\t',\n '\"': '\"',\n '/': '/',\n '\\\\': '\\\\'\n};\n\nvar A_CODE = 'a'.charCodeAt();\n\n\nvar parse = function (source, _, options) {\n var pointers = {};\n var line = 0;\n var column = 0;\n var pos = 0;\n var bigint = options && options.bigint && typeof BigInt != 'undefined';\n return {\n data: _parse('', true),\n pointers: pointers\n };\n\n function _parse(ptr, topLevel) {\n whitespace();\n var data;\n map(ptr, 'value');\n var char = getChar();\n switch (char) {\n case 't': read('rue'); data = true; break;\n case 'f': read('alse'); data = false; break;\n case 'n': read('ull'); data = null; break;\n case '\"': data = parseString(); break;\n case '[': data = parseArray(ptr); break;\n case '{': data = parseObject(ptr); break;\n default:\n backChar();\n if ('-0123456789'.indexOf(char) >= 0)\n data = parseNumber();\n else\n unexpectedToken();\n }\n map(ptr, 'valueEnd');\n whitespace();\n if (topLevel && pos < source.length) unexpectedToken();\n return data;\n }\n\n function whitespace() {\n loop:\n while (pos < source.length) {\n switch (source[pos]) {\n case ' ': column++; break;\n case '\\t': column += 4; break;\n case '\\r': column = 0; break;\n case '\\n': column = 0; line++; break;\n default: break loop;\n }\n pos++;\n }\n }\n\n function parseString() {\n var str = '';\n var char;\n while (true) {\n char = getChar();\n if (char == '\"') {\n break;\n } else if (char == '\\\\') {\n char = getChar();\n if (char in escapedChars)\n str += escapedChars[char];\n else if (char == 'u')\n str += getCharCode();\n else\n wasUnexpectedToken();\n } else {\n str += char;\n }\n }\n return str;\n }\n\n function parseNumber() {\n var numStr = '';\n var integer = true;\n if (source[pos] == '-') numStr += getChar();\n\n numStr += source[pos] == '0'\n ? getChar()\n : getDigits();\n\n if (source[pos] == '.') {\n numStr += getChar() + getDigits();\n integer = false;\n }\n\n if (source[pos] == 'e' || source[pos] == 'E') {\n numStr += getChar();\n if (source[pos] == '+' || source[pos] == '-') numStr += getChar();\n numStr += getDigits();\n integer = false;\n }\n\n var result = +numStr;\n return bigint && integer && (result > Number.MAX_SAFE_INTEGER || result < Number.MIN_SAFE_INTEGER)\n ? BigInt(numStr)\n : result;\n }\n\n function parseArray(ptr) {\n whitespace();\n var arr = [];\n var i = 0;\n if (getChar() == ']') return arr;\n backChar();\n\n while (true) {\n var itemPtr = ptr + '/' + i;\n arr.push(_parse(itemPtr));\n whitespace();\n var char = getChar();\n if (char == ']') break;\n if (char != ',') wasUnexpectedToken();\n whitespace();\n i++;\n }\n return arr;\n }\n\n function parseObject(ptr) {\n whitespace();\n var obj = {};\n if (getChar() == '}') return obj;\n backChar();\n\n while (true) {\n var loc = getLoc();\n if (getChar() != '\"') wasUnexpectedToken();\n var key = parseString();\n var propPtr = ptr + '/' + escapeJsonPointer(key);\n mapLoc(propPtr, 'key', loc);\n map(propPtr, 'keyEnd');\n whitespace();\n if (getChar() != ':') wasUnexpectedToken();\n whitespace();\n obj[key] = _parse(propPtr);\n whitespace();\n var char = getChar();\n if (char == '}') break;\n if (char != ',') wasUnexpectedToken();\n whitespace();\n }\n return obj;\n }\n\n function read(str) {\n for (var i=0; i= 'a' && char <= 'f')\n code += char.charCodeAt() - A_CODE + 10;\n else if (char >= '0' && char <= '9')\n code += +char;\n else\n wasUnexpectedToken();\n }\n return String.fromCharCode(code);\n }\n\n function getDigits() {\n var digits = '';\n while (source[pos] >= '0' && source[pos] <= '9')\n digits += getChar();\n\n if (digits.length) return digits;\n checkUnexpectedEnd();\n unexpectedToken();\n }\n\n function map(ptr, prop) {\n mapLoc(ptr, prop, getLoc());\n }\n\n function mapLoc(ptr, prop, loc) {\n pointers[ptr] = pointers[ptr] || {};\n pointers[ptr][prop] = loc;\n }\n\n function getLoc() {\n return {\n line: line,\n column: column,\n pos: pos\n };\n }\n\n function unexpectedToken() {\n throw new SyntaxError('Unexpected token ' + source[pos] + ' in JSON at position ' + pos);\n }\n\n function wasUnexpectedToken() {\n backChar();\n unexpectedToken();\n }\n\n function checkUnexpectedEnd() {\n if (pos >= source.length)\n throw new SyntaxError('Unexpected end of JSON input');\n }\n};\n\n\nvar stringify = function (data, _, options) {\n if (!validType(data)) return;\n var wsLine = 0;\n var wsPos, wsColumn;\n var whitespace = typeof options == 'object'\n ? options.space\n : options;\n switch (typeof whitespace) {\n case 'number':\n var len = whitespace > 10\n ? 10\n : whitespace < 0\n ? 0\n : Math.floor(whitespace);\n whitespace = len && repeat(len, ' ');\n wsPos = len;\n wsColumn = len;\n break;\n case 'string':\n whitespace = whitespace.slice(0, 10);\n wsPos = 0;\n wsColumn = 0;\n for (var j=0; j= 0;\n}\n\n\nvar ESC_QUOTE = /\"|\\\\/g;\nvar ESC_B = /[\\b]/g;\nvar ESC_F = /\\f/g;\nvar ESC_N = /\\n/g;\nvar ESC_R = /\\r/g;\nvar ESC_T = /\\t/g;\nfunction quoted(str) {\n str = str.replace(ESC_QUOTE, '\\\\$&')\n .replace(ESC_F, '\\\\f')\n .replace(ESC_B, '\\\\b')\n .replace(ESC_N, '\\\\n')\n .replace(ESC_R, '\\\\r')\n .replace(ESC_T, '\\\\t');\n return '\"' + str + '\"';\n}\n\n\nvar ESC_0 = /~/g;\nvar ESC_1 = /\\//g;\nfunction escapeJsonPointer(str) {\n return str.replace(ESC_0, '~0')\n .replace(ESC_1, '~1');\n}\n\nvar jsonSourceMap = {\n\tparse: parse,\n\tstringify: stringify\n};\n\nvar version = \"0.3.1\";\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nvar fastDeepEqual = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n\n// do NOT remove this file - it would break pre-compiled schemas\n// https://github.com/ajv-validator/ajv/issues/889\nvar equal = fastDeepEqual;\n\nvar standaloneValidator = validate14;var _default = validate14;const schema17 = {\"type\":\"object\",\"required\":[\"name\",\"id\",\"appliesTo\",\"properties\"],\"properties\":{\"name\":{\"$id\":\"#/name\",\"type\":\"string\",\"title\":\"element template name\",\"description\":\"The name of the element template\"},\"id\":{\"$id\":\"#/id\",\"type\":\"string\",\"title\":\"element template id\",\"description\":\"The identifier of the element template\"},\"description\":{\"$id\":\"#/description\",\"type\":\"string\",\"title\":\"element template description\",\"description\":\"The description of the element template\"},\"version\":{\"$id\":\"#/version\",\"type\":\"number\",\"title\":\"element template version\",\"description\":\"The version of the element template\"},\"isDefault\":{\"$id\":\"#/isDefault\",\"type\":\"boolean\",\"title\":\"element template is default\",\"description\":\"Indicates whether the element template is a default template\"},\"appliesTo\":{\"$id\":\"#/appliesTo\",\"type\":\"array\",\"title\":\"element template applies to\",\"description\":\"The definition for which element types the element template can be applied\",\"default\":[],\"items\":{\"$id\":\"#/appliesTo/items\",\"type\":\"string\",\"pattern\":\"^(.*?:)\",\"errorMessage\":{\"pattern\":\"invalid item for \\\"appliesTo\\\", should contain namespaced property, example: \\\"bpmn:Task\\\"\"}}},\"properties\":{\"$ref\":\"#/definitions/properties\",\"$id\":\"#/properties\"},\"metadata\":{\"$id\":\"#/metadata\",\"type\":\"object\",\"title\":\"element template metadata\",\"description\":\"Some metadata for further configuration\"},\"scopes\":{\"oneOf\":[{\"$ref\":\"#/definitions/scopes_old\"},{\"$ref\":\"#/definitions/scopes\"}]},\"entriesVisible\":{\"$id\":\"#/entriesVisible\",\"deprecated\":true,\"type\":[\"object\",\"boolean\"],\"title\":\"element template entries visible\",\"description\":\"@Deprecated - Select which entries are visible in the properties panel\"}},\"errorMessage\":{\"required\":{\"name\":\"missing template name\",\"id\":\"missing template id\",\"appliesTo\":\"missing appliesTo=[]\",\"properties\":\"missing properties=[]\"}}};const schema18 = {\"type\":\"array\",\"title\":\"element template properties\",\"description\":\"The properties of the element template\",\"default\":[],\"items\":{\"$id\":\"#/properties/property\",\"type\":\"object\",\"title\":\"element template property\",\"description\":\"A property defined for the element template\",\"default\":{},\"required\":[\"binding\"],\"errorMessage\":{\"required\":{\"binding\":\"missing binding for property \\\"${0#}\\\"\"}},\"allOf\":[{\"if\":{\"properties\":{\"type\":{\"const\":\"Dropdown\"}},\"required\":[\"type\"]},\"then\":{\"required\":[\"choices\"],\"errorMessage\":\"must provide choices=[] with \\\"Dropdown\\\" type\"}},{\"if\":{\"properties\":{\"binding\":{\"properties\":{\"type\":{\"const\":\"property\"}},\"required\":[\"type\"]}},\"required\":[\"binding\"]},\"then\":{\"properties\":{\"type\":{\"enum\":[\"String\",\"Text\",\"Hidden\",\"Dropdown\",\"Boolean\"],\"errorMessage\":\"invalid property type ${0} for binding type \\\"property\\\"; must be any of { String, Text, Hidden, Dropdown, Boolean }\"}}}},{\"if\":{\"properties\":{\"binding\":{\"properties\":{\"type\":{\"const\":\"harlequin:executionListener\"}},\"required\":[\"type\"]}},\"required\":[\"binding\"]},\"then\":{\"properties\":{\"type\":{\"enum\":[\"Hidden\"],\"errorMessage\":\"invalid property type ${1/type} for binding type \\\"harlequin:executionListener\\\"; must be \\\"Hidden\\\"\"}}}},{\"if\":{\"properties\":{\"binding\":{\"properties\":{\"type\":{\"enum\":[\"harlequin:property\",\"harlequin:outputParameter\",\"harlequin:in\",\"harlequin:in:businessKey\",\"harlequin:out\",\"harlequin:errorEventDefinition\"]}},\"required\":[\"type\"]}},\"required\":[\"binding\"]},\"then\":{\"properties\":{\"type\":{\"enum\":[\"String\",\"Hidden\",\"Dropdown\"],\"errorMessage\":\"invalid property type ${0} for binding type ${1/binding/type}; must be any of { String, Hidden, Dropdown }\"}}}},{\"if\":{\"properties\":{\"binding\":{\"properties\":{\"type\":{\"enum\":[\"harlequin:inputParameter\",\"harlequin:field\"]}},\"required\":[\"type\"]}},\"required\":[\"binding\"]},\"then\":{\"properties\":{\"type\":{\"enum\":[\"String\",\"Text\",\"Hidden\",\"Dropdown\"],\"errorMessage\":\"invalid property type ${0} for binding type ${1/binding/type}; must be any of { String, Text, Hidden, Dropdown }\"}}}}],\"properties\":{\"value\":{\"$id\":\"#/properties/property/value\",\"type\":[\"string\",\"boolean\"],\"title\":\"property value\",\"description\":\"The value of the control field for the property\"},\"description\":{\"$id\":\"#/properties/property/description\",\"type\":\"string\",\"title\":\"property description\",\"description\":\"The description of the control field\"},\"label\":{\"$id\":\"#/properties/property/label\",\"type\":\"string\",\"title\":\"property label\",\"description\":\"The label of the control field for the property\"},\"type\":{\"$id\":\"#/properties/property/type\",\"type\":\"string\",\"title\":\"property type\",\"description\":\"The type of the control field\"},\"editable\":{\"$id\":\"#/properties/property/editable\",\"type\":\"boolean\",\"title\":\"property editable\",\"description\":\"Indicates whether the property is editable or not\"},\"choices\":{\"$id\":\"#/properties/property/choices\",\"type\":\"array\",\"title\":\"property choices\",\"description\":\"The choices for dropdown properties\",\"items\":{\"$id\":\"#/properties/property/choices/item\",\"type\":\"object\",\"properties\":{\"name\":{\"$id\":\"#/properties/property/choices/item/name\",\"type\":\"string\",\"title\":\"choice name\",\"description\":\"The name of the choice\"},\"value\":{\"$id\":\"#/properties/property/choices/item/value\",\"type\":\"string\",\"title\":\"choice value\",\"description\":\"The value of the choice\"}},\"required\":[\"value\",\"name\"],\"errorMessage\":\"{ name, value } must be specified for \\\"Dropdown\\\" choices\"}},\"binding\":{\"$id\":\"#/properties/property/binding\",\"type\":\"object\",\"title\":\"property binding\",\"description\":\"A binding to a BPMN 2.0 property\",\"required\":[\"type\"],\"allOf\":[{\"if\":{\"properties\":{\"type\":{\"enum\":[\"property\",\"harlequin:property\",\"harlequin:inputParameter\",\"harlequin:field\"]}},\"required\":[\"type\"]},\"then\":{\"required\":[\"name\"],\"errorMessage\":\"property.binding ${0/type} requires name\"}},{\"if\":{\"properties\":{\"type\":{\"const\":\"harlequin:outputParameter\"}},\"required\":[\"type\"]},\"then\":{\"required\":[\"source\"],\"errorMessage\":\"property.binding ${0/type} requires source\"}},{\"if\":{\"properties\":{\"type\":{\"const\":\"harlequin:in\"}},\"required\":[\"type\"]},\"then\":{\"oneOf\":[{\"required\":[\"variables\"]},{\"required\":[\"target\"]}],\"errorMessage\":\"property.binding ${0/type} requires variables or target\"}},{\"if\":{\"properties\":{\"type\":{\"const\":\"harlequin:out\"}},\"required\":[\"type\"]},\"then\":{\"oneOf\":[{\"required\":[\"variables\"]},{\"required\":[\"source\"]},{\"required\":[\"sourceExpression\"]}],\"errorMessage\":\"property.binding ${0/type} requires variables, sourceExpression or source\"}},{\"if\":{\"properties\":{\"type\":{\"const\":\"harlequin:errorEventDefinition\"}},\"required\":[\"type\"]},\"then\":{\"oneOf\":[{\"required\":[\"errorRef\"]}],\"errorMessage\":\"property.binding ${0/type} requires errorRef\"}}],\"properties\":{\"type\":{\"$id\":\"#/properties/property/binding/type\",\"type\":\"string\",\"title\":\"property binding type\",\"enum\":[\"property\",\"harlequin:property\",\"harlequin:inputParameter\",\"harlequin:outputParameter\",\"harlequin:in\",\"harlequin:out\",\"harlequin:in:businessKey\",\"harlequin:executionListener\",\"harlequin:field\",\"harlequin:errorEventDefinition\"],\"errorMessage\":\"invalid property.binding type ${0}; must be any of { property, harlequin:property, harlequin:inputParameter, harlequin:outputParameter, harlequin:in, harlequin:out, harlequin:in:businessKey, harlequin:executionListener, harlequin:field, harlequin:errorEventDefinition }\",\"description\":\"The type of the property binding\"},\"name\":{\"$id\":\"#/properties/property/binding/name\",\"type\":\"string\",\"title\":\"property binding name\",\"description\":\"The name of binding xml property\"},\"event\":{\"$id\":\"#/properties/property/binding/event\",\"type\":\"string\",\"title\":\"property binding event\",\"description\":\"The event type of an execution listener binding\"},\"scriptFormat\":{\"$id\":\"#/properties/property/binding/scriptFormat\",\"type\":\"string\",\"title\":\"property binding script format\",\"description\":\"The format of a script property binding (harlequin:outputParameter, harlequin:inputParameter)\"},\"source\":{\"$id\":\"#/properties/property/binding/source\",\"type\":\"string\",\"title\":\"property binding source\",\"description\":\"The source value of a property binding (harlequin:outputParameter, harlequin:out)\"},\"target\":{\"$id\":\"#/properties/property/binding/target\",\"type\":\"string\",\"title\":\"property binding target\",\"description\":\"The target value to be mapped to (harlequin:in)\"},\"expression\":{\"$id\":\"#/properties/property/binding/expression\",\"type\":\"boolean\",\"title\":\"property binding expression\",\"description\":\"True indicates that the control field value is an expression (harlequin:in, harlequin:field)\"},\"variables\":{\"$id\":\"#/properties/property/binding/variables\",\"type\":\"string\",\"title\":\"property binding variables\",\"enum\":[\"all\",\"local\"],\"description\":\"Either all or local indicating the variable mapping (harlequin:in)\"},\"sourceExpression\":{\"$id\":\"#/properties/property/binding/sourceExpression\",\"type\":\"string\",\"title\":\"property binding source expression\",\"description\":\"The string containing the expression for the source attribute (harlequin:out)\"}}},\"constraints\":{\"$id\":\"#/properties/property/constraints\",\"type\":\"object\",\"title\":\"property constraints\",\"description\":\"The validation constraints\",\"properties\":{\"notEmpty\":{\"$id\":\"#/properties/property/constraints/notEmpty\",\"type\":\"boolean\",\"title\":\"property constraints not empty\",\"description\":\"The control field must not be empty\"},\"minLength\":{\"$id\":\"#/properties/property/constraints/minLength\",\"type\":\"number\",\"title\":\"property constraints min length\",\"description\":\"The minimal length for the control field value\"},\"maxLength\":{\"$id\":\"#/properties/property/constraints/maxLength\",\"type\":\"number\",\"title\":\"property constraints max length\",\"description\":\"The maximal length for the control field value\"},\"pattern\":{\"$id\":\"#/properties/property/constraints/pattern\",\"title\":\"property constraints pattern\",\"description\":\"A regular expression pattern for the constraints\",\"oneOf\":[{\"type\":\"object\",\"properties\":{\"value\":{\"$id\":\"#/properties/property/constraints/pattern/value\",\"type\":\"string\",\"title\":\"property constraints pattern value\",\"description\":\"The regular expression of the pattern constraint\"},\"message\":{\"$id\":\"#/properties/property/constraints/pattern/message\",\"type\":\"string\",\"title\":\"property constraints pattern message\",\"description\":\"The validation message of the pattern constraint\"}}},{\"type\":\"string\"}]}}}}}};const pattern0 = new RegExp(\"^(.*?:)\", \"u\");const obj0 = {\"required\":\"missingProperty\",\"dependencies\":\"property\",\"dependentRequired\":\"property\"};function validate16(data, {dataPath=\"\", parentData, parentDataProperty, rootData=data}={}){let vErrors = null;let errors = 0;if(data && typeof data == \"object\" && !Array.isArray(data)){for(const key0 in data){if(!(key0 === \"harlequin:Connector\")){const err0 = {keyword:\"not\",dataPath:dataPath+\"/\" + key0.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"),schemaPath:\"#/additionalProperties/not\",params:{},message:\"should NOT be valid\"};if(vErrors === null){vErrors = [err0];}else {vErrors.push(err0);}errors++;if(errors > 0){const emErrs0 = [];for(const err1 of vErrors){if(((((err1.keyword !== \"errorMessage\") && (!err1.emUsed)) && ((err1.dataPath === dataPath+\"/\" + key0.replace(/~/g, \"~0\").replace(/\\//g, \"~1\")) || ((err1.dataPath.indexOf(dataPath+\"/\" + key0.replace(/~/g, \"~0\").replace(/\\//g, \"~1\")) === 0) && (err1.dataPath[dataPath+\"/\" + key0.replace(/~/g, \"~0\").replace(/\\//g, \"~1\").length] === \"/\")))) && (err1.schemaPath.indexOf(\"#/additionalProperties\") === 0)) && (err1.schemaPath[\"#/additionalProperties\".length] === \"/\")){emErrs0.push(err1);err1.emUsed = true;}}if(emErrs0.length){const err2 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + key0.replace(/~/g, \"~0\").replace(/\\//g, \"~1\"),schemaPath:\"#/additionalProperties/errorMessage\",params:{errors: emErrs0},message:\"invalid scope \" + JSON.stringify(key0) + \", object descriptor is only supported for \\\"harlequin:Connector\\\"\"};if(vErrors === null){vErrors = [err2];}else {vErrors.push(err2);}errors++;}const emErrs1 = [];for(const err3 of vErrors){if(!err3.emUsed){emErrs1.push(err3);}}vErrors = emErrs1;errors = emErrs1.length;}}}if(data[\"harlequin:Connector\"] !== undefined){let data1 = data[\"harlequin:Connector\"];if(data1 && typeof data1 == \"object\" && !Array.isArray(data1)){if(data1.properties !== undefined){let data2 = data1.properties;if(Array.isArray(data2)){const len0 = data2.length;for(let i0=0; i0 0){const emErrs2 = [];for(const err7 of vErrors){if(((((err7.keyword !== \"errorMessage\") && (!err7.emUsed)) && ((err7.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0) || ((err7.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0) === 0) && (err7.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0.length] === \"/\")))) && (err7.schemaPath.indexOf(\"#/definitions/properties/items/allOf/0/then\") === 0)) && (err7.schemaPath[\"#/definitions/properties/items/allOf/0/then\".length] === \"/\")){emErrs2.push(err7);err7.emUsed = true;}}if(emErrs2.length){const err8 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/0/then/errorMessage\",params:{errors: emErrs2},message:\"must provide choices=[] with \\\"Dropdown\\\" type\"};if(vErrors === null){vErrors = [err8];}else {vErrors.push(err8);}errors++;}const emErrs3 = [];for(const err9 of vErrors){if(!err9.emUsed){emErrs3.push(err9);}}vErrors = emErrs3;errors = emErrs3.length;}var _valid0 = _errs15 === errors;valid7 = _valid0;}if(!valid7){const err10 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err10];}else {vErrors.push(err10);}errors++;}const _errs17 = errors;let valid9 = true;const _errs18 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if((data3.binding === undefined) && (\"binding\")){const err11 = {};if(vErrors === null){vErrors = [err11];}else {vErrors.push(err11);}errors++;}else {if(data3.binding !== undefined){let data5 = data3.binding;if(data5 && typeof data5 == \"object\" && !Array.isArray(data5)){if((data5.type === undefined) && (\"type\")){const err12 = {};if(vErrors === null){vErrors = [err12];}else {vErrors.push(err12);}errors++;}else {if(data5.type !== undefined){if(!equal(data5.type, \"property\")){const err13 = {};if(vErrors === null){vErrors = [err13];}else {vErrors.push(err13);}errors++;}}}}}}}var _valid1 = _errs18 === errors;errors = _errs17;if(vErrors !== null){if(_errs17){vErrors.length = _errs17;}else {vErrors = null;}}if(_valid1){const _errs21 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if(data3.type !== undefined){let data7 = data3.type;if(!(((((data7 === \"String\") || (data7 === \"Text\")) || (data7 === \"Hidden\")) || (data7 === \"Dropdown\")) || (data7 === \"Boolean\"))){const err14 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[1].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err14];}else {vErrors.push(err14);}errors++;}if(errors > 0){const emErrs4 = [];for(const err15 of vErrors){if(((((err15.keyword !== \"errorMessage\") && (!err15.emUsed)) && ((err15.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") || ((err15.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") === 0) && (err15.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\".length] === \"/\")))) && (err15.schemaPath.indexOf(\"#/definitions/properties/items/allOf/1/then/properties/type\") === 0)) && (err15.schemaPath[\"#/definitions/properties/items/allOf/1/then/properties/type\".length] === \"/\")){emErrs4.push(err15);err15.emUsed = true;}}if(emErrs4.length){const err16 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/errorMessage\",params:{errors: emErrs4},message:\"invalid property type \" + JSON.stringify(data7) + \" for binding type \\\"property\\\"; must be any of { String, Text, Hidden, Dropdown, Boolean }\"};if(vErrors === null){vErrors = [err16];}else {vErrors.push(err16);}errors++;}const emErrs5 = [];for(const err17 of vErrors){if(!err17.emUsed){emErrs5.push(err17);}}vErrors = emErrs5;errors = emErrs5.length;}}}var _valid1 = _errs21 === errors;valid9 = _valid1;}if(!valid9){const err18 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err18];}else {vErrors.push(err18);}errors++;}const _errs24 = errors;let valid13 = true;const _errs25 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if((data3.binding === undefined) && (\"binding\")){const err19 = {};if(vErrors === null){vErrors = [err19];}else {vErrors.push(err19);}errors++;}else {if(data3.binding !== undefined){let data8 = data3.binding;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if((data8.type === undefined) && (\"type\")){const err20 = {};if(vErrors === null){vErrors = [err20];}else {vErrors.push(err20);}errors++;}else {if(data8.type !== undefined){if(!equal(data8.type, \"harlequin:executionListener\")){const err21 = {};if(vErrors === null){vErrors = [err21];}else {vErrors.push(err21);}errors++;}}}}}}}var _valid2 = _errs25 === errors;errors = _errs24;if(vErrors !== null){if(_errs24){vErrors.length = _errs24;}else {vErrors = null;}}if(_valid2){const _errs28 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if(data3.type !== undefined){if(!(data3.type === \"Hidden\")){const err22 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[2].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err22];}else {vErrors.push(err22);}errors++;}if(errors > 0){const emErrs6 = [];for(const err23 of vErrors){if(((((err23.keyword !== \"errorMessage\") && (!err23.emUsed)) && ((err23.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") || ((err23.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") === 0) && (err23.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\".length] === \"/\")))) && (err23.schemaPath.indexOf(\"#/definitions/properties/items/allOf/2/then/properties/type\") === 0)) && (err23.schemaPath[\"#/definitions/properties/items/allOf/2/then/properties/type\".length] === \"/\")){emErrs6.push(err23);err23.emUsed = true;}}if(emErrs6.length){const err24 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/errorMessage\",params:{errors: emErrs6},message:\"invalid property type \" + JSON.stringify(data3 && data3.type) + \" for binding type \\\"harlequin:executionListener\\\"; must be \\\"Hidden\\\"\"};if(vErrors === null){vErrors = [err24];}else {vErrors.push(err24);}errors++;}const emErrs7 = [];for(const err25 of vErrors){if(!err25.emUsed){emErrs7.push(err25);}}vErrors = emErrs7;errors = emErrs7.length;}}}var _valid2 = _errs28 === errors;valid13 = _valid2;}if(!valid13){const err26 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err26];}else {vErrors.push(err26);}errors++;}const _errs31 = errors;let valid17 = true;const _errs32 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if((data3.binding === undefined) && (\"binding\")){const err27 = {};if(vErrors === null){vErrors = [err27];}else {vErrors.push(err27);}errors++;}else {if(data3.binding !== undefined){let data11 = data3.binding;if(data11 && typeof data11 == \"object\" && !Array.isArray(data11)){if((data11.type === undefined) && (\"type\")){const err28 = {};if(vErrors === null){vErrors = [err28];}else {vErrors.push(err28);}errors++;}else {if(data11.type !== undefined){let data12 = data11.type;if(!((((((data12 === \"harlequin:property\") || (data12 === \"harlequin:outputParameter\")) || (data12 === \"harlequin:in\")) || (data12 === \"harlequin:in:businessKey\")) || (data12 === \"harlequin:out\")) || (data12 === \"harlequin:errorEventDefinition\"))){const err29 = {};if(vErrors === null){vErrors = [err29];}else {vErrors.push(err29);}errors++;}}}}}}}var _valid3 = _errs32 === errors;errors = _errs31;if(vErrors !== null){if(_errs31){vErrors.length = _errs31;}else {vErrors = null;}}if(_valid3){const _errs35 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if(data3.type !== undefined){let data13 = data3.type;if(!(((data13 === \"String\") || (data13 === \"Hidden\")) || (data13 === \"Dropdown\"))){const err30 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[3].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err30];}else {vErrors.push(err30);}errors++;}if(errors > 0){const emErrs8 = [];for(const err31 of vErrors){if(((((err31.keyword !== \"errorMessage\") && (!err31.emUsed)) && ((err31.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") || ((err31.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") === 0) && (err31.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\".length] === \"/\")))) && (err31.schemaPath.indexOf(\"#/definitions/properties/items/allOf/3/then/properties/type\") === 0)) && (err31.schemaPath[\"#/definitions/properties/items/allOf/3/then/properties/type\".length] === \"/\")){emErrs8.push(err31);err31.emUsed = true;}}if(emErrs8.length){const err32 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/errorMessage\",params:{errors: emErrs8},message:\"invalid property type \" + JSON.stringify(data13) + \" for binding type \" + JSON.stringify(data3 && data3.binding && data3.binding.type) + \"; must be any of { String, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err32];}else {vErrors.push(err32);}errors++;}const emErrs9 = [];for(const err33 of vErrors){if(!err33.emUsed){emErrs9.push(err33);}}vErrors = emErrs9;errors = emErrs9.length;}}}var _valid3 = _errs35 === errors;valid17 = _valid3;}if(!valid17){const err34 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err34];}else {vErrors.push(err34);}errors++;}const _errs38 = errors;let valid21 = true;const _errs39 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if((data3.binding === undefined) && (\"binding\")){const err35 = {};if(vErrors === null){vErrors = [err35];}else {vErrors.push(err35);}errors++;}else {if(data3.binding !== undefined){let data14 = data3.binding;if(data14 && typeof data14 == \"object\" && !Array.isArray(data14)){if((data14.type === undefined) && (\"type\")){const err36 = {};if(vErrors === null){vErrors = [err36];}else {vErrors.push(err36);}errors++;}else {if(data14.type !== undefined){let data15 = data14.type;if(!((data15 === \"harlequin:inputParameter\") || (data15 === \"harlequin:field\"))){const err37 = {};if(vErrors === null){vErrors = [err37];}else {vErrors.push(err37);}errors++;}}}}}}}var _valid4 = _errs39 === errors;errors = _errs38;if(vErrors !== null){if(_errs38){vErrors.length = _errs38;}else {vErrors = null;}}if(_valid4){const _errs42 = errors;if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if(data3.type !== undefined){let data16 = data3.type;if(!((((data16 === \"String\") || (data16 === \"Text\")) || (data16 === \"Hidden\")) || (data16 === \"Dropdown\"))){const err38 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[4].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err38];}else {vErrors.push(err38);}errors++;}if(errors > 0){const emErrs10 = [];for(const err39 of vErrors){if(((((err39.keyword !== \"errorMessage\") && (!err39.emUsed)) && ((err39.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") || ((err39.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\") === 0) && (err39.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\".length] === \"/\")))) && (err39.schemaPath.indexOf(\"#/definitions/properties/items/allOf/4/then/properties/type\") === 0)) && (err39.schemaPath[\"#/definitions/properties/items/allOf/4/then/properties/type\".length] === \"/\")){emErrs10.push(err39);err39.emUsed = true;}}if(emErrs10.length){const err40 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/errorMessage\",params:{errors: emErrs10},message:\"invalid property type \" + JSON.stringify(data16) + \" for binding type \" + JSON.stringify(data3 && data3.binding && data3.binding.type) + \"; must be any of { String, Text, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err40];}else {vErrors.push(err40);}errors++;}const emErrs11 = [];for(const err41 of vErrors){if(!err41.emUsed){emErrs11.push(err41);}}vErrors = emErrs11;errors = emErrs11.length;}}}var _valid4 = _errs42 === errors;valid21 = _valid4;}if(!valid21){const err42 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err42];}else {vErrors.push(err42);}errors++;}if(data3 && typeof data3 == \"object\" && !Array.isArray(data3)){if(data3.binding === undefined){const err43 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/required\",params:{missingProperty: \"binding\"},message:\"should have required property '\"+\"binding\"+\"'\"};if(vErrors === null){vErrors = [err43];}else {vErrors.push(err43);}errors++;}if(data3.value !== undefined){let data17 = data3.value;if((typeof data17 !== \"string\") && (typeof data17 !== \"boolean\")){const err44 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/value\",schemaPath:\"#/definitions/properties/items/properties/value/type\",params:{type: schema18.items.properties.value.type},message:\"should be string,boolean\"};if(vErrors === null){vErrors = [err44];}else {vErrors.push(err44);}errors++;}}if(data3.description !== undefined){if(typeof data3.description !== \"string\"){const err45 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/description\",schemaPath:\"#/definitions/properties/items/properties/description/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err45];}else {vErrors.push(err45);}errors++;}}if(data3.label !== undefined){if(typeof data3.label !== \"string\"){const err46 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/label\",schemaPath:\"#/definitions/properties/items/properties/label/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err46];}else {vErrors.push(err46);}errors++;}}if(data3.type !== undefined){if(typeof data3.type !== \"string\"){const err47 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/type\",schemaPath:\"#/definitions/properties/items/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err47];}else {vErrors.push(err47);}errors++;}}if(data3.editable !== undefined){if(typeof data3.editable !== \"boolean\"){const err48 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/editable\",schemaPath:\"#/definitions/properties/items/properties/editable/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err48];}else {vErrors.push(err48);}errors++;}}if(data3.choices !== undefined){let data22 = data3.choices;if(Array.isArray(data22)){const len1 = data22.length;for(let i1=0; i1 0){const emErrs12 = [];for(const err54 of vErrors){if(((((err54.keyword !== \"errorMessage\") && (!err54.emUsed)) && ((err54.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/choices/\" + i1) || ((err54.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/choices/\" + i1) === 0) && (err54.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/choices/\" + i1.length] === \"/\")))) && (err54.schemaPath.indexOf(\"#/definitions/properties/items/properties/choices/items\") === 0)) && (err54.schemaPath[\"#/definitions/properties/items/properties/choices/items\".length] === \"/\")){emErrs12.push(err54);err54.emUsed = true;}}if(emErrs12.length){const err55 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/choices/\" + i1,schemaPath:\"#/definitions/properties/items/properties/choices/items/errorMessage\",params:{errors: emErrs12},message:\"{ name, value } must be specified for \\\"Dropdown\\\" choices\"};if(vErrors === null){vErrors = [err55];}else {vErrors.push(err55);}errors++;}const emErrs13 = [];for(const err56 of vErrors){if(!err56.emUsed){emErrs13.push(err56);}}vErrors = emErrs13;errors = emErrs13.length;}}}else {const err57 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/choices\",schemaPath:\"#/definitions/properties/items/properties/choices/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err57];}else {vErrors.push(err57);}errors++;}}if(data3.binding !== undefined){let data26 = data3.binding;const _errs65 = errors;let valid30 = true;const _errs66 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if((data26.type === undefined) && (\"type\")){const err58 = {};if(vErrors === null){vErrors = [err58];}else {vErrors.push(err58);}errors++;}else {if(data26.type !== undefined){let data27 = data26.type;if(!((((data27 === \"property\") || (data27 === \"harlequin:property\")) || (data27 === \"harlequin:inputParameter\")) || (data27 === \"harlequin:field\"))){const err59 = {};if(vErrors === null){vErrors = [err59];}else {vErrors.push(err59);}errors++;}}}}var _valid5 = _errs66 === errors;errors = _errs65;if(vErrors !== null){if(_errs65){vErrors.length = _errs65;}else {vErrors = null;}}if(_valid5){const _errs68 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.name === undefined){const err60 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/required\",params:{missingProperty: \"name\"},message:\"should have required property '\"+\"name\"+\"'\"};if(vErrors === null){vErrors = [err60];}else {vErrors.push(err60);}errors++;}}if(errors > 0){const emErrs14 = [];for(const err61 of vErrors){if(((((err61.keyword !== \"errorMessage\") && (!err61.emUsed)) && ((err61.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") || ((err61.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") === 0) && (err61.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\".length] === \"/\")))) && (err61.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/0/then\") === 0)) && (err61.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/0/then\".length] === \"/\")){emErrs14.push(err61);err61.emUsed = true;}}if(emErrs14.length){const err62 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/errorMessage\",params:{errors: emErrs14},message:\"property.binding \" + JSON.stringify(data26 && data26.type) + \" requires name\"};if(vErrors === null){vErrors = [err62];}else {vErrors.push(err62);}errors++;}const emErrs15 = [];for(const err63 of vErrors){if(!err63.emUsed){emErrs15.push(err63);}}vErrors = emErrs15;errors = emErrs15.length;}var _valid5 = _errs68 === errors;valid30 = _valid5;}if(!valid30){const err64 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err64];}else {vErrors.push(err64);}errors++;}const _errs70 = errors;let valid32 = true;const _errs71 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if((data26.type === undefined) && (\"type\")){const err65 = {};if(vErrors === null){vErrors = [err65];}else {vErrors.push(err65);}errors++;}else {if(data26.type !== undefined){if(!equal(data26.type, \"harlequin:outputParameter\")){const err66 = {};if(vErrors === null){vErrors = [err66];}else {vErrors.push(err66);}errors++;}}}}var _valid6 = _errs71 === errors;errors = _errs70;if(vErrors !== null){if(_errs70){vErrors.length = _errs70;}else {vErrors = null;}}if(_valid6){const _errs73 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.source === undefined){const err67 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err67];}else {vErrors.push(err67);}errors++;}}if(errors > 0){const emErrs16 = [];for(const err68 of vErrors){if(((((err68.keyword !== \"errorMessage\") && (!err68.emUsed)) && ((err68.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") || ((err68.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") === 0) && (err68.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\".length] === \"/\")))) && (err68.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/1/then\") === 0)) && (err68.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/1/then\".length] === \"/\")){emErrs16.push(err68);err68.emUsed = true;}}if(emErrs16.length){const err69 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/errorMessage\",params:{errors: emErrs16},message:\"property.binding \" + JSON.stringify(data26 && data26.type) + \" requires source\"};if(vErrors === null){vErrors = [err69];}else {vErrors.push(err69);}errors++;}const emErrs17 = [];for(const err70 of vErrors){if(!err70.emUsed){emErrs17.push(err70);}}vErrors = emErrs17;errors = emErrs17.length;}var _valid6 = _errs73 === errors;valid32 = _valid6;}if(!valid32){const err71 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err71];}else {vErrors.push(err71);}errors++;}const _errs75 = errors;let valid34 = true;const _errs76 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if((data26.type === undefined) && (\"type\")){const err72 = {};if(vErrors === null){vErrors = [err72];}else {vErrors.push(err72);}errors++;}else {if(data26.type !== undefined){if(!equal(data26.type, \"harlequin:in\")){const err73 = {};if(vErrors === null){vErrors = [err73];}else {vErrors.push(err73);}errors++;}}}}var _valid7 = _errs76 === errors;errors = _errs75;if(vErrors !== null){if(_errs75){vErrors.length = _errs75;}else {vErrors = null;}}if(_valid7){const _errs78 = errors;const _errs79 = errors;let valid36 = false;let passing0 = null;const _errs80 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.variables === undefined){const err74 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err74];}else {vErrors.push(err74);}errors++;}}var _valid8 = _errs80 === errors;if(_valid8){valid36 = true;passing0 = 0;}const _errs81 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.target === undefined){const err75 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/1/required\",params:{missingProperty: \"target\"},message:\"should have required property '\"+\"target\"+\"'\"};if(vErrors === null){vErrors = [err75];}else {vErrors.push(err75);}errors++;}}var _valid8 = _errs81 === errors;if(_valid8 && valid36){valid36 = false;passing0 = [passing0, 1];}else {if(_valid8){valid36 = true;passing0 = 1;}}if(!valid36){const err76 = {keyword:\"oneOf\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf\",params:{passingSchemas: passing0},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err76];}else {vErrors.push(err76);}errors++;}else {errors = _errs79;if(vErrors !== null){if(_errs79){vErrors.length = _errs79;}else {vErrors = null;}}}if(errors > 0){const emErrs18 = [];for(const err77 of vErrors){if(((((err77.keyword !== \"errorMessage\") && (!err77.emUsed)) && ((err77.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") || ((err77.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") === 0) && (err77.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\".length] === \"/\")))) && (err77.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/2/then\") === 0)) && (err77.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/2/then\".length] === \"/\")){emErrs18.push(err77);err77.emUsed = true;}}if(emErrs18.length){const err78 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/errorMessage\",params:{errors: emErrs18},message:\"property.binding \" + JSON.stringify(data26 && data26.type) + \" requires variables or target\"};if(vErrors === null){vErrors = [err78];}else {vErrors.push(err78);}errors++;}const emErrs19 = [];for(const err79 of vErrors){if(!err79.emUsed){emErrs19.push(err79);}}vErrors = emErrs19;errors = emErrs19.length;}var _valid7 = _errs78 === errors;valid34 = _valid7;}if(!valid34){const err80 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err80];}else {vErrors.push(err80);}errors++;}const _errs83 = errors;let valid37 = true;const _errs84 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if((data26.type === undefined) && (\"type\")){const err81 = {};if(vErrors === null){vErrors = [err81];}else {vErrors.push(err81);}errors++;}else {if(data26.type !== undefined){if(!equal(data26.type, \"harlequin:out\")){const err82 = {};if(vErrors === null){vErrors = [err82];}else {vErrors.push(err82);}errors++;}}}}var _valid9 = _errs84 === errors;errors = _errs83;if(vErrors !== null){if(_errs83){vErrors.length = _errs83;}else {vErrors = null;}}if(_valid9){const _errs86 = errors;const _errs87 = errors;let valid39 = false;let passing1 = null;const _errs88 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.variables === undefined){const err83 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err83];}else {vErrors.push(err83);}errors++;}}var _valid10 = _errs88 === errors;if(_valid10){valid39 = true;passing1 = 0;}const _errs89 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.source === undefined){const err84 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/1/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err84];}else {vErrors.push(err84);}errors++;}}var _valid10 = _errs89 === errors;if(_valid10 && valid39){valid39 = false;passing1 = [passing1, 1];}else {if(_valid10){valid39 = true;passing1 = 1;}const _errs90 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.sourceExpression === undefined){const err85 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/2/required\",params:{missingProperty: \"sourceExpression\"},message:\"should have required property '\"+\"sourceExpression\"+\"'\"};if(vErrors === null){vErrors = [err85];}else {vErrors.push(err85);}errors++;}}var _valid10 = _errs90 === errors;if(_valid10 && valid39){valid39 = false;passing1 = [passing1, 2];}else {if(_valid10){valid39 = true;passing1 = 2;}}}if(!valid39){const err86 = {keyword:\"oneOf\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf\",params:{passingSchemas: passing1},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err86];}else {vErrors.push(err86);}errors++;}else {errors = _errs87;if(vErrors !== null){if(_errs87){vErrors.length = _errs87;}else {vErrors = null;}}}if(errors > 0){const emErrs20 = [];for(const err87 of vErrors){if(((((err87.keyword !== \"errorMessage\") && (!err87.emUsed)) && ((err87.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") || ((err87.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") === 0) && (err87.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\".length] === \"/\")))) && (err87.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/3/then\") === 0)) && (err87.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/3/then\".length] === \"/\")){emErrs20.push(err87);err87.emUsed = true;}}if(emErrs20.length){const err88 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/errorMessage\",params:{errors: emErrs20},message:\"property.binding \" + JSON.stringify(data26 && data26.type) + \" requires variables, sourceExpression or source\"};if(vErrors === null){vErrors = [err88];}else {vErrors.push(err88);}errors++;}const emErrs21 = [];for(const err89 of vErrors){if(!err89.emUsed){emErrs21.push(err89);}}vErrors = emErrs21;errors = emErrs21.length;}var _valid9 = _errs86 === errors;valid37 = _valid9;}if(!valid37){const err90 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err90];}else {vErrors.push(err90);}errors++;}const _errs92 = errors;let valid40 = true;const _errs93 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if((data26.type === undefined) && (\"type\")){const err91 = {};if(vErrors === null){vErrors = [err91];}else {vErrors.push(err91);}errors++;}else {if(data26.type !== undefined){if(!equal(data26.type, \"harlequin:errorEventDefinition\")){const err92 = {};if(vErrors === null){vErrors = [err92];}else {vErrors.push(err92);}errors++;}}}}var _valid11 = _errs93 === errors;errors = _errs92;if(vErrors !== null){if(_errs92){vErrors.length = _errs92;}else {vErrors = null;}}if(_valid11){const _errs95 = errors;const _errs96 = errors;let valid42 = false;let passing2 = null;const _errs97 = errors;if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.errorRef === undefined){const err93 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf/0/required\",params:{missingProperty: \"errorRef\"},message:\"should have required property '\"+\"errorRef\"+\"'\"};if(vErrors === null){vErrors = [err93];}else {vErrors.push(err93);}errors++;}}var _valid12 = _errs97 === errors;if(_valid12){valid42 = true;passing2 = 0;}if(!valid42){const err94 = {keyword:\"oneOf\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf\",params:{passingSchemas: passing2},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err94];}else {vErrors.push(err94);}errors++;}else {errors = _errs96;if(vErrors !== null){if(_errs96){vErrors.length = _errs96;}else {vErrors = null;}}}if(errors > 0){const emErrs22 = [];for(const err95 of vErrors){if(((((err95.keyword !== \"errorMessage\") && (!err95.emUsed)) && ((err95.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") || ((err95.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\") === 0) && (err95.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\".length] === \"/\")))) && (err95.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/4/then\") === 0)) && (err95.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/4/then\".length] === \"/\")){emErrs22.push(err95);err95.emUsed = true;}}if(emErrs22.length){const err96 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/errorMessage\",params:{errors: emErrs22},message:\"property.binding \" + JSON.stringify(data26 && data26.type) + \" requires errorRef\"};if(vErrors === null){vErrors = [err96];}else {vErrors.push(err96);}errors++;}const emErrs23 = [];for(const err97 of vErrors){if(!err97.emUsed){emErrs23.push(err97);}}vErrors = emErrs23;errors = emErrs23.length;}var _valid11 = _errs95 === errors;valid40 = _valid11;}if(!valid40){const err98 = {keyword:\"if\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err98];}else {vErrors.push(err98);}errors++;}if(data26 && typeof data26 == \"object\" && !Array.isArray(data26)){if(data26.type === undefined){const err99 = {keyword:\"required\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/required\",params:{missingProperty: \"type\"},message:\"should have required property '\"+\"type\"+\"'\"};if(vErrors === null){vErrors = [err99];}else {vErrors.push(err99);}errors++;}if(data26.type !== undefined){let data32 = data26.type;if(typeof data32 !== \"string\"){const err100 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err100];}else {vErrors.push(err100);}errors++;}if(!((((((((((data32 === \"property\") || (data32 === \"harlequin:property\")) || (data32 === \"harlequin:inputParameter\")) || (data32 === \"harlequin:outputParameter\")) || (data32 === \"harlequin:in\")) || (data32 === \"harlequin:out\")) || (data32 === \"harlequin:in:businessKey\")) || (data32 === \"harlequin:executionListener\")) || (data32 === \"harlequin:field\")) || (data32 === \"harlequin:errorEventDefinition\"))){const err101 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/enum\",params:{allowedValues: schema18.items.properties.binding.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err101];}else {vErrors.push(err101);}errors++;}if(errors > 0){const emErrs24 = [];for(const err102 of vErrors){if(((((err102.keyword !== \"errorMessage\") && (!err102.emUsed)) && ((err102.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\") || ((err102.dataPath.indexOf(dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\") === 0) && (err102.dataPath[dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\".length] === \"/\")))) && (err102.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/properties/type\") === 0)) && (err102.schemaPath[\"#/definitions/properties/items/properties/binding/properties/type\".length] === \"/\")){emErrs24.push(err102);err102.emUsed = true;}}if(emErrs24.length){const err103 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/errorMessage\",params:{errors: emErrs24},message:\"invalid property.binding type \" + JSON.stringify(data32) + \"; must be any of { property, harlequin:property, harlequin:inputParameter, harlequin:outputParameter, harlequin:in, harlequin:out, harlequin:in:businessKey, harlequin:executionListener, harlequin:field, harlequin:errorEventDefinition }\"};if(vErrors === null){vErrors = [err103];}else {vErrors.push(err103);}errors++;}const emErrs25 = [];for(const err104 of vErrors){if(!err104.emUsed){emErrs25.push(err104);}}vErrors = emErrs25;errors = emErrs25.length;}}if(data26.name !== undefined){if(typeof data26.name !== \"string\"){const err105 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/name\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/name/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err105];}else {vErrors.push(err105);}errors++;}}if(data26.event !== undefined){if(typeof data26.event !== \"string\"){const err106 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/event\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/event/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err106];}else {vErrors.push(err106);}errors++;}}if(data26.scriptFormat !== undefined){if(typeof data26.scriptFormat !== \"string\"){const err107 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/scriptFormat\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/scriptFormat/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err107];}else {vErrors.push(err107);}errors++;}}if(data26.source !== undefined){if(typeof data26.source !== \"string\"){const err108 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/source\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/source/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err108];}else {vErrors.push(err108);}errors++;}}if(data26.target !== undefined){if(typeof data26.target !== \"string\"){const err109 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/target\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/target/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err109];}else {vErrors.push(err109);}errors++;}}if(data26.expression !== undefined){if(typeof data26.expression !== \"boolean\"){const err110 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/expression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/expression/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err110];}else {vErrors.push(err110);}errors++;}}if(data26.variables !== undefined){let data39 = data26.variables;if(typeof data39 !== \"string\"){const err111 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err111];}else {vErrors.push(err111);}errors++;}if(!((data39 === \"all\") || (data39 === \"local\"))){const err112 = {keyword:\"enum\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/enum\",params:{allowedValues: schema18.items.properties.binding.properties.variables.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err112];}else {vErrors.push(err112);}errors++;}}if(data26.sourceExpression !== undefined){if(typeof data26.sourceExpression !== \"string\"){const err113 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding/sourceExpression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/sourceExpression/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err113];}else {vErrors.push(err113);}errors++;}}}else {const err114 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err114];}else {vErrors.push(err114);}errors++;}}if(data3.constraints !== undefined){let data41 = data3.constraints;if(data41 && typeof data41 == \"object\" && !Array.isArray(data41)){if(data41.notEmpty !== undefined){if(typeof data41.notEmpty !== \"boolean\"){const err115 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/notEmpty\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/notEmpty/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err115];}else {vErrors.push(err115);}errors++;}}if(data41.minLength !== undefined){if(!(typeof data41.minLength == \"number\")){const err116 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/minLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/minLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err116];}else {vErrors.push(err116);}errors++;}}if(data41.maxLength !== undefined){if(!(typeof data41.maxLength == \"number\")){const err117 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/maxLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/maxLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err117];}else {vErrors.push(err117);}errors++;}}if(data41.pattern !== undefined){let data45 = data41.pattern;const _errs125 = errors;let valid45 = false;let passing3 = null;const _errs126 = errors;if(data45 && typeof data45 == \"object\" && !Array.isArray(data45)){if(data45.value !== undefined){if(typeof data45.value !== \"string\"){const err118 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/pattern/value\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/value/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err118];}else {vErrors.push(err118);}errors++;}}if(data45.message !== undefined){if(typeof data45.message !== \"string\"){const err119 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/pattern/message\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/message/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err119];}else {vErrors.push(err119);}errors++;}}}else {const err120 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err120];}else {vErrors.push(err120);}errors++;}var _valid13 = _errs126 === errors;if(_valid13){valid45 = true;passing3 = 0;}const _errs132 = errors;if(typeof data45 !== \"string\"){const err121 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/1/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err121];}else {vErrors.push(err121);}errors++;}var _valid13 = _errs132 === errors;if(_valid13 && valid45){valid45 = false;passing3 = [passing3, 1];}else {if(_valid13){valid45 = true;passing3 = 1;}}if(!valid45){const err122 = {keyword:\"oneOf\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf\",params:{passingSchemas: passing3},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err122];}else {vErrors.push(err122);}errors++;}else {errors = _errs125;if(vErrors !== null){if(_errs125){vErrors.length = _errs125;}else {vErrors = null;}}}}}else {const err123 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0+\"/constraints\",schemaPath:\"#/definitions/properties/items/properties/constraints/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err123];}else {vErrors.push(err123);}errors++;}}}else {const err124 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err124];}else {vErrors.push(err124);}errors++;}if(errors > 0){const emErrors0 = {\"required\":{\"binding\":[]}};const templates0 = {required:{binding:function(){return \"missing binding for property \\\"\" + JSON.stringify(i0) + \"\\\"\"}}};let emPropParams0;let emParamsErrors0;for(const err125 of vErrors){if((((((err125.keyword !== \"errorMessage\") && (!err125.emUsed)) && (err125.dataPath === dataPath+\"/harlequin:Connector/properties/\" + i0)) && (err125.keyword in emErrors0)) && (err125.schemaPath.indexOf(\"#/definitions/properties/items\") === 0)) && (/^\\/[^\\/]*$/.test(err125.schemaPath.slice(30)))){emPropParams0 = obj0[err125.keyword];emParamsErrors0 = emErrors0[err125.keyword][err125.params[emPropParams0]];if(emParamsErrors0){emParamsErrors0.push(err125);err125.emUsed = true;}}}for(const key1 in emErrors0){for(const keyProp0 in emErrors0[key1]){emParamsErrors0 = emErrors0[key1][keyProp0];if(emParamsErrors0.length){const tmpl0 = templates0[key1] && templates0[key1][keyProp0];const err126 = {keyword:\"errorMessage\",dataPath:dataPath+\"/harlequin:Connector/properties/\" + i0,schemaPath:\"#/definitions/properties/items/errorMessage\",params:{errors: emParamsErrors0},message:tmpl0 ? tmpl0() : schema18.items.errorMessage[key1][keyProp0]};if(vErrors === null){vErrors = [err126];}else {vErrors.push(err126);}errors++;}}}const emErrs26 = [];for(const err127 of vErrors){if(!err127.emUsed){emErrs26.push(err127);}}vErrors = emErrs26;errors = emErrs26.length;}}}else {const err128 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector/properties\",schemaPath:\"#/definitions/properties/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err128];}else {vErrors.push(err128);}errors++;}}}else {const err129 = {keyword:\"type\",dataPath:dataPath+\"/harlequin:Connector\",schemaPath:\"#/properties/harlequin%3AConnector/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err129];}else {vErrors.push(err129);}errors++;}}}else {const err130 = {keyword:\"type\",dataPath,schemaPath:\"#/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err130];}else {vErrors.push(err130);}errors++;}validate16.errors = vErrors;return errors === 0;}const schema21 = {\"$id\":\"#/definitions/scopes\",\"type\":\"array\",\"title\":\"element template scope\",\"description\":\"Special scoped bindings that allow you to configure nested elements\",\"items\":{\"$id\":\"#/scopes/item\",\"type\":\"object\",\"title\":\"element template scope item\",\"description\":\"Scoped binding to configure nested elements\",\"properties\":{\"type\":{\"$id\":\"#scopes/item/type\",\"type\":\"string\",\"enum\":[\"harlequin:Connector\",\"bpmn:Error\"],\"errorMessage\":\"invalid scope type ${0}; must be any of { harlequin:Connector, bpmn:Error }\"},\"properties\":{\"$ref\":\"#/definitions/properties\"}},\"required\":[\"type\",\"properties\"],\"errorMessage\":{\"required\":{\"type\":\"invalid scope, missing type\",\"properties\":\"invalid scope ${0/type}, missing properties=[]\"}},\"allOf\":[{\"if\":{\"properties\":{\"type\":{\"enum\":[\"bpmn:Error\"]}},\"required\":[\"type\"]},\"then\":{\"required\":[\"id\"],\"errorMessage\":\"invalid scope ${0/type}, missing id\"}}]}};function validate18(data, {dataPath=\"\", parentData, parentDataProperty, rootData=data}={}){let vErrors = null;let errors = 0;if(Array.isArray(data)){const len0 = data.length;for(let i0=0; i0 0){const emErrs0 = [];for(const err3 of vErrors){if(((((err3.keyword !== \"errorMessage\") && (!err3.emUsed)) && ((err3.dataPath === dataPath+\"/\" + i0) || ((err3.dataPath.indexOf(dataPath+\"/\" + i0) === 0) && (err3.dataPath[dataPath+\"/\" + i0.length] === \"/\")))) && (err3.schemaPath.indexOf(\"#/items/allOf/0/then\") === 0)) && (err3.schemaPath[\"#/items/allOf/0/then\".length] === \"/\")){emErrs0.push(err3);err3.emUsed = true;}}if(emErrs0.length){const err4 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/allOf/0/then/errorMessage\",params:{errors: emErrs0},message:\"invalid scope \" + JSON.stringify(data0 && data0.type) + \", missing id\"};if(vErrors === null){vErrors = [err4];}else {vErrors.push(err4);}errors++;}const emErrs1 = [];for(const err5 of vErrors){if(!err5.emUsed){emErrs1.push(err5);}}vErrors = emErrs1;errors = emErrs1.length;}var _valid0 = _errs7 === errors;valid3 = _valid0;}if(!valid3){const err6 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err6];}else {vErrors.push(err6);}errors++;}if(data0 && typeof data0 == \"object\" && !Array.isArray(data0)){if(data0.type === undefined){const err7 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/required\",params:{missingProperty: \"type\"},message:\"should have required property '\"+\"type\"+\"'\"};if(vErrors === null){vErrors = [err7];}else {vErrors.push(err7);}errors++;}if(data0.properties === undefined){const err8 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/required\",params:{missingProperty: \"properties\"},message:\"should have required property '\"+\"properties\"+\"'\"};if(vErrors === null){vErrors = [err8];}else {vErrors.push(err8);}errors++;}if(data0.type !== undefined){let data2 = data0.type;if(typeof data2 !== \"string\"){const err9 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/type\",schemaPath:\"#/items/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err9];}else {vErrors.push(err9);}errors++;}if(!((data2 === \"harlequin:Connector\") || (data2 === \"bpmn:Error\"))){const err10 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/type\",schemaPath:\"#/items/properties/type/enum\",params:{allowedValues: schema21.items.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err10];}else {vErrors.push(err10);}errors++;}if(errors > 0){const emErrs2 = [];for(const err11 of vErrors){if(((((err11.keyword !== \"errorMessage\") && (!err11.emUsed)) && ((err11.dataPath === dataPath+\"/\" + i0+\"/type\") || ((err11.dataPath.indexOf(dataPath+\"/\" + i0+\"/type\") === 0) && (err11.dataPath[dataPath+\"/\" + i0+\"/type\".length] === \"/\")))) && (err11.schemaPath.indexOf(\"#/items/properties/type\") === 0)) && (err11.schemaPath[\"#/items/properties/type\".length] === \"/\")){emErrs2.push(err11);err11.emUsed = true;}}if(emErrs2.length){const err12 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/type\",schemaPath:\"#/items/properties/type/errorMessage\",params:{errors: emErrs2},message:\"invalid scope type \" + JSON.stringify(data2) + \"; must be any of { harlequin:Connector, bpmn:Error }\"};if(vErrors === null){vErrors = [err12];}else {vErrors.push(err12);}errors++;}const emErrs3 = [];for(const err13 of vErrors){if(!err13.emUsed){emErrs3.push(err13);}}vErrors = emErrs3;errors = emErrs3.length;}}if(data0.properties !== undefined){let data3 = data0.properties;if(Array.isArray(data3)){const len1 = data3.length;for(let i1=0; i1 0){const emErrs4 = [];for(const err17 of vErrors){if(((((err17.keyword !== \"errorMessage\") && (!err17.emUsed)) && ((err17.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1) || ((err17.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1) === 0) && (err17.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1.length] === \"/\")))) && (err17.schemaPath.indexOf(\"#/definitions/properties/items/allOf/0/then\") === 0)) && (err17.schemaPath[\"#/definitions/properties/items/allOf/0/then\".length] === \"/\")){emErrs4.push(err17);err17.emUsed = true;}}if(emErrs4.length){const err18 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/0/then/errorMessage\",params:{errors: emErrs4},message:\"must provide choices=[] with \\\"Dropdown\\\" type\"};if(vErrors === null){vErrors = [err18];}else {vErrors.push(err18);}errors++;}const emErrs5 = [];for(const err19 of vErrors){if(!err19.emUsed){emErrs5.push(err19);}}vErrors = emErrs5;errors = emErrs5.length;}var _valid1 = _errs19 === errors;valid10 = _valid1;}if(!valid10){const err20 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err20];}else {vErrors.push(err20);}errors++;}const _errs21 = errors;let valid12 = true;const _errs22 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if((data4.binding === undefined) && (\"binding\")){const err21 = {};if(vErrors === null){vErrors = [err21];}else {vErrors.push(err21);}errors++;}else {if(data4.binding !== undefined){let data6 = data4.binding;if(data6 && typeof data6 == \"object\" && !Array.isArray(data6)){if((data6.type === undefined) && (\"type\")){const err22 = {};if(vErrors === null){vErrors = [err22];}else {vErrors.push(err22);}errors++;}else {if(data6.type !== undefined){if(!equal(data6.type, \"property\")){const err23 = {};if(vErrors === null){vErrors = [err23];}else {vErrors.push(err23);}errors++;}}}}}}}var _valid2 = _errs22 === errors;errors = _errs21;if(vErrors !== null){if(_errs21){vErrors.length = _errs21;}else {vErrors = null;}}if(_valid2){const _errs25 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if(data4.type !== undefined){let data8 = data4.type;if(!(((((data8 === \"String\") || (data8 === \"Text\")) || (data8 === \"Hidden\")) || (data8 === \"Dropdown\")) || (data8 === \"Boolean\"))){const err24 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[1].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err24];}else {vErrors.push(err24);}errors++;}if(errors > 0){const emErrs6 = [];for(const err25 of vErrors){if(((((err25.keyword !== \"errorMessage\") && (!err25.emUsed)) && ((err25.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") || ((err25.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") === 0) && (err25.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err25.schemaPath.indexOf(\"#/definitions/properties/items/allOf/1/then/properties/type\") === 0)) && (err25.schemaPath[\"#/definitions/properties/items/allOf/1/then/properties/type\".length] === \"/\")){emErrs6.push(err25);err25.emUsed = true;}}if(emErrs6.length){const err26 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/errorMessage\",params:{errors: emErrs6},message:\"invalid property type \" + JSON.stringify(data8) + \" for binding type \\\"property\\\"; must be any of { String, Text, Hidden, Dropdown, Boolean }\"};if(vErrors === null){vErrors = [err26];}else {vErrors.push(err26);}errors++;}const emErrs7 = [];for(const err27 of vErrors){if(!err27.emUsed){emErrs7.push(err27);}}vErrors = emErrs7;errors = emErrs7.length;}}}var _valid2 = _errs25 === errors;valid12 = _valid2;}if(!valid12){const err28 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err28];}else {vErrors.push(err28);}errors++;}const _errs28 = errors;let valid16 = true;const _errs29 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if((data4.binding === undefined) && (\"binding\")){const err29 = {};if(vErrors === null){vErrors = [err29];}else {vErrors.push(err29);}errors++;}else {if(data4.binding !== undefined){let data9 = data4.binding;if(data9 && typeof data9 == \"object\" && !Array.isArray(data9)){if((data9.type === undefined) && (\"type\")){const err30 = {};if(vErrors === null){vErrors = [err30];}else {vErrors.push(err30);}errors++;}else {if(data9.type !== undefined){if(!equal(data9.type, \"harlequin:executionListener\")){const err31 = {};if(vErrors === null){vErrors = [err31];}else {vErrors.push(err31);}errors++;}}}}}}}var _valid3 = _errs29 === errors;errors = _errs28;if(vErrors !== null){if(_errs28){vErrors.length = _errs28;}else {vErrors = null;}}if(_valid3){const _errs32 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if(data4.type !== undefined){if(!(data4.type === \"Hidden\")){const err32 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[2].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err32];}else {vErrors.push(err32);}errors++;}if(errors > 0){const emErrs8 = [];for(const err33 of vErrors){if(((((err33.keyword !== \"errorMessage\") && (!err33.emUsed)) && ((err33.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") || ((err33.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") === 0) && (err33.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err33.schemaPath.indexOf(\"#/definitions/properties/items/allOf/2/then/properties/type\") === 0)) && (err33.schemaPath[\"#/definitions/properties/items/allOf/2/then/properties/type\".length] === \"/\")){emErrs8.push(err33);err33.emUsed = true;}}if(emErrs8.length){const err34 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/errorMessage\",params:{errors: emErrs8},message:\"invalid property type \" + JSON.stringify(data4 && data4.type) + \" for binding type \\\"harlequin:executionListener\\\"; must be \\\"Hidden\\\"\"};if(vErrors === null){vErrors = [err34];}else {vErrors.push(err34);}errors++;}const emErrs9 = [];for(const err35 of vErrors){if(!err35.emUsed){emErrs9.push(err35);}}vErrors = emErrs9;errors = emErrs9.length;}}}var _valid3 = _errs32 === errors;valid16 = _valid3;}if(!valid16){const err36 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err36];}else {vErrors.push(err36);}errors++;}const _errs35 = errors;let valid20 = true;const _errs36 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if((data4.binding === undefined) && (\"binding\")){const err37 = {};if(vErrors === null){vErrors = [err37];}else {vErrors.push(err37);}errors++;}else {if(data4.binding !== undefined){let data12 = data4.binding;if(data12 && typeof data12 == \"object\" && !Array.isArray(data12)){if((data12.type === undefined) && (\"type\")){const err38 = {};if(vErrors === null){vErrors = [err38];}else {vErrors.push(err38);}errors++;}else {if(data12.type !== undefined){let data13 = data12.type;if(!((((((data13 === \"harlequin:property\") || (data13 === \"harlequin:outputParameter\")) || (data13 === \"harlequin:in\")) || (data13 === \"harlequin:in:businessKey\")) || (data13 === \"harlequin:out\")) || (data13 === \"harlequin:errorEventDefinition\"))){const err39 = {};if(vErrors === null){vErrors = [err39];}else {vErrors.push(err39);}errors++;}}}}}}}var _valid4 = _errs36 === errors;errors = _errs35;if(vErrors !== null){if(_errs35){vErrors.length = _errs35;}else {vErrors = null;}}if(_valid4){const _errs39 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if(data4.type !== undefined){let data14 = data4.type;if(!(((data14 === \"String\") || (data14 === \"Hidden\")) || (data14 === \"Dropdown\"))){const err40 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[3].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err40];}else {vErrors.push(err40);}errors++;}if(errors > 0){const emErrs10 = [];for(const err41 of vErrors){if(((((err41.keyword !== \"errorMessage\") && (!err41.emUsed)) && ((err41.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") || ((err41.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") === 0) && (err41.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err41.schemaPath.indexOf(\"#/definitions/properties/items/allOf/3/then/properties/type\") === 0)) && (err41.schemaPath[\"#/definitions/properties/items/allOf/3/then/properties/type\".length] === \"/\")){emErrs10.push(err41);err41.emUsed = true;}}if(emErrs10.length){const err42 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/errorMessage\",params:{errors: emErrs10},message:\"invalid property type \" + JSON.stringify(data14) + \" for binding type \" + JSON.stringify(data4 && data4.binding && data4.binding.type) + \"; must be any of { String, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err42];}else {vErrors.push(err42);}errors++;}const emErrs11 = [];for(const err43 of vErrors){if(!err43.emUsed){emErrs11.push(err43);}}vErrors = emErrs11;errors = emErrs11.length;}}}var _valid4 = _errs39 === errors;valid20 = _valid4;}if(!valid20){const err44 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err44];}else {vErrors.push(err44);}errors++;}const _errs42 = errors;let valid24 = true;const _errs43 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if((data4.binding === undefined) && (\"binding\")){const err45 = {};if(vErrors === null){vErrors = [err45];}else {vErrors.push(err45);}errors++;}else {if(data4.binding !== undefined){let data15 = data4.binding;if(data15 && typeof data15 == \"object\" && !Array.isArray(data15)){if((data15.type === undefined) && (\"type\")){const err46 = {};if(vErrors === null){vErrors = [err46];}else {vErrors.push(err46);}errors++;}else {if(data15.type !== undefined){let data16 = data15.type;if(!((data16 === \"harlequin:inputParameter\") || (data16 === \"harlequin:field\"))){const err47 = {};if(vErrors === null){vErrors = [err47];}else {vErrors.push(err47);}errors++;}}}}}}}var _valid5 = _errs43 === errors;errors = _errs42;if(vErrors !== null){if(_errs42){vErrors.length = _errs42;}else {vErrors = null;}}if(_valid5){const _errs46 = errors;if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if(data4.type !== undefined){let data17 = data4.type;if(!((((data17 === \"String\") || (data17 === \"Text\")) || (data17 === \"Hidden\")) || (data17 === \"Dropdown\"))){const err48 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[4].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err48];}else {vErrors.push(err48);}errors++;}if(errors > 0){const emErrs12 = [];for(const err49 of vErrors){if(((((err49.keyword !== \"errorMessage\") && (!err49.emUsed)) && ((err49.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") || ((err49.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\") === 0) && (err49.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err49.schemaPath.indexOf(\"#/definitions/properties/items/allOf/4/then/properties/type\") === 0)) && (err49.schemaPath[\"#/definitions/properties/items/allOf/4/then/properties/type\".length] === \"/\")){emErrs12.push(err49);err49.emUsed = true;}}if(emErrs12.length){const err50 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/errorMessage\",params:{errors: emErrs12},message:\"invalid property type \" + JSON.stringify(data17) + \" for binding type \" + JSON.stringify(data4 && data4.binding && data4.binding.type) + \"; must be any of { String, Text, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err50];}else {vErrors.push(err50);}errors++;}const emErrs13 = [];for(const err51 of vErrors){if(!err51.emUsed){emErrs13.push(err51);}}vErrors = emErrs13;errors = emErrs13.length;}}}var _valid5 = _errs46 === errors;valid24 = _valid5;}if(!valid24){const err52 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err52];}else {vErrors.push(err52);}errors++;}if(data4 && typeof data4 == \"object\" && !Array.isArray(data4)){if(data4.binding === undefined){const err53 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/required\",params:{missingProperty: \"binding\"},message:\"should have required property '\"+\"binding\"+\"'\"};if(vErrors === null){vErrors = [err53];}else {vErrors.push(err53);}errors++;}if(data4.value !== undefined){let data18 = data4.value;if((typeof data18 !== \"string\") && (typeof data18 !== \"boolean\")){const err54 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/value\",schemaPath:\"#/definitions/properties/items/properties/value/type\",params:{type: schema18.items.properties.value.type},message:\"should be string,boolean\"};if(vErrors === null){vErrors = [err54];}else {vErrors.push(err54);}errors++;}}if(data4.description !== undefined){if(typeof data4.description !== \"string\"){const err55 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/description\",schemaPath:\"#/definitions/properties/items/properties/description/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err55];}else {vErrors.push(err55);}errors++;}}if(data4.label !== undefined){if(typeof data4.label !== \"string\"){const err56 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/label\",schemaPath:\"#/definitions/properties/items/properties/label/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err56];}else {vErrors.push(err56);}errors++;}}if(data4.type !== undefined){if(typeof data4.type !== \"string\"){const err57 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err57];}else {vErrors.push(err57);}errors++;}}if(data4.editable !== undefined){if(typeof data4.editable !== \"boolean\"){const err58 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/editable\",schemaPath:\"#/definitions/properties/items/properties/editable/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err58];}else {vErrors.push(err58);}errors++;}}if(data4.choices !== undefined){let data23 = data4.choices;if(Array.isArray(data23)){const len2 = data23.length;for(let i2=0; i2 0){const emErrs14 = [];for(const err64 of vErrors){if(((((err64.keyword !== \"errorMessage\") && (!err64.emUsed)) && ((err64.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/choices/\" + i2) || ((err64.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/choices/\" + i2) === 0) && (err64.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/choices/\" + i2.length] === \"/\")))) && (err64.schemaPath.indexOf(\"#/definitions/properties/items/properties/choices/items\") === 0)) && (err64.schemaPath[\"#/definitions/properties/items/properties/choices/items\".length] === \"/\")){emErrs14.push(err64);err64.emUsed = true;}}if(emErrs14.length){const err65 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/choices/\" + i2,schemaPath:\"#/definitions/properties/items/properties/choices/items/errorMessage\",params:{errors: emErrs14},message:\"{ name, value } must be specified for \\\"Dropdown\\\" choices\"};if(vErrors === null){vErrors = [err65];}else {vErrors.push(err65);}errors++;}const emErrs15 = [];for(const err66 of vErrors){if(!err66.emUsed){emErrs15.push(err66);}}vErrors = emErrs15;errors = emErrs15.length;}}}else {const err67 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/choices\",schemaPath:\"#/definitions/properties/items/properties/choices/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err67];}else {vErrors.push(err67);}errors++;}}if(data4.binding !== undefined){let data27 = data4.binding;const _errs69 = errors;let valid33 = true;const _errs70 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if((data27.type === undefined) && (\"type\")){const err68 = {};if(vErrors === null){vErrors = [err68];}else {vErrors.push(err68);}errors++;}else {if(data27.type !== undefined){let data28 = data27.type;if(!((((data28 === \"property\") || (data28 === \"harlequin:property\")) || (data28 === \"harlequin:inputParameter\")) || (data28 === \"harlequin:field\"))){const err69 = {};if(vErrors === null){vErrors = [err69];}else {vErrors.push(err69);}errors++;}}}}var _valid6 = _errs70 === errors;errors = _errs69;if(vErrors !== null){if(_errs69){vErrors.length = _errs69;}else {vErrors = null;}}if(_valid6){const _errs72 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.name === undefined){const err70 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/required\",params:{missingProperty: \"name\"},message:\"should have required property '\"+\"name\"+\"'\"};if(vErrors === null){vErrors = [err70];}else {vErrors.push(err70);}errors++;}}if(errors > 0){const emErrs16 = [];for(const err71 of vErrors){if(((((err71.keyword !== \"errorMessage\") && (!err71.emUsed)) && ((err71.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") || ((err71.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") === 0) && (err71.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err71.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/0/then\") === 0)) && (err71.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/0/then\".length] === \"/\")){emErrs16.push(err71);err71.emUsed = true;}}if(emErrs16.length){const err72 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/errorMessage\",params:{errors: emErrs16},message:\"property.binding \" + JSON.stringify(data27 && data27.type) + \" requires name\"};if(vErrors === null){vErrors = [err72];}else {vErrors.push(err72);}errors++;}const emErrs17 = [];for(const err73 of vErrors){if(!err73.emUsed){emErrs17.push(err73);}}vErrors = emErrs17;errors = emErrs17.length;}var _valid6 = _errs72 === errors;valid33 = _valid6;}if(!valid33){const err74 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err74];}else {vErrors.push(err74);}errors++;}const _errs74 = errors;let valid35 = true;const _errs75 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if((data27.type === undefined) && (\"type\")){const err75 = {};if(vErrors === null){vErrors = [err75];}else {vErrors.push(err75);}errors++;}else {if(data27.type !== undefined){if(!equal(data27.type, \"harlequin:outputParameter\")){const err76 = {};if(vErrors === null){vErrors = [err76];}else {vErrors.push(err76);}errors++;}}}}var _valid7 = _errs75 === errors;errors = _errs74;if(vErrors !== null){if(_errs74){vErrors.length = _errs74;}else {vErrors = null;}}if(_valid7){const _errs77 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.source === undefined){const err77 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err77];}else {vErrors.push(err77);}errors++;}}if(errors > 0){const emErrs18 = [];for(const err78 of vErrors){if(((((err78.keyword !== \"errorMessage\") && (!err78.emUsed)) && ((err78.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") || ((err78.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") === 0) && (err78.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err78.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/1/then\") === 0)) && (err78.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/1/then\".length] === \"/\")){emErrs18.push(err78);err78.emUsed = true;}}if(emErrs18.length){const err79 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/errorMessage\",params:{errors: emErrs18},message:\"property.binding \" + JSON.stringify(data27 && data27.type) + \" requires source\"};if(vErrors === null){vErrors = [err79];}else {vErrors.push(err79);}errors++;}const emErrs19 = [];for(const err80 of vErrors){if(!err80.emUsed){emErrs19.push(err80);}}vErrors = emErrs19;errors = emErrs19.length;}var _valid7 = _errs77 === errors;valid35 = _valid7;}if(!valid35){const err81 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err81];}else {vErrors.push(err81);}errors++;}const _errs79 = errors;let valid37 = true;const _errs80 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if((data27.type === undefined) && (\"type\")){const err82 = {};if(vErrors === null){vErrors = [err82];}else {vErrors.push(err82);}errors++;}else {if(data27.type !== undefined){if(!equal(data27.type, \"harlequin:in\")){const err83 = {};if(vErrors === null){vErrors = [err83];}else {vErrors.push(err83);}errors++;}}}}var _valid8 = _errs80 === errors;errors = _errs79;if(vErrors !== null){if(_errs79){vErrors.length = _errs79;}else {vErrors = null;}}if(_valid8){const _errs82 = errors;const _errs83 = errors;let valid39 = false;let passing0 = null;const _errs84 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.variables === undefined){const err84 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err84];}else {vErrors.push(err84);}errors++;}}var _valid9 = _errs84 === errors;if(_valid9){valid39 = true;passing0 = 0;}const _errs85 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.target === undefined){const err85 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/1/required\",params:{missingProperty: \"target\"},message:\"should have required property '\"+\"target\"+\"'\"};if(vErrors === null){vErrors = [err85];}else {vErrors.push(err85);}errors++;}}var _valid9 = _errs85 === errors;if(_valid9 && valid39){valid39 = false;passing0 = [passing0, 1];}else {if(_valid9){valid39 = true;passing0 = 1;}}if(!valid39){const err86 = {keyword:\"oneOf\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf\",params:{passingSchemas: passing0},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err86];}else {vErrors.push(err86);}errors++;}else {errors = _errs83;if(vErrors !== null){if(_errs83){vErrors.length = _errs83;}else {vErrors = null;}}}if(errors > 0){const emErrs20 = [];for(const err87 of vErrors){if(((((err87.keyword !== \"errorMessage\") && (!err87.emUsed)) && ((err87.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") || ((err87.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") === 0) && (err87.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err87.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/2/then\") === 0)) && (err87.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/2/then\".length] === \"/\")){emErrs20.push(err87);err87.emUsed = true;}}if(emErrs20.length){const err88 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/errorMessage\",params:{errors: emErrs20},message:\"property.binding \" + JSON.stringify(data27 && data27.type) + \" requires variables or target\"};if(vErrors === null){vErrors = [err88];}else {vErrors.push(err88);}errors++;}const emErrs21 = [];for(const err89 of vErrors){if(!err89.emUsed){emErrs21.push(err89);}}vErrors = emErrs21;errors = emErrs21.length;}var _valid8 = _errs82 === errors;valid37 = _valid8;}if(!valid37){const err90 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err90];}else {vErrors.push(err90);}errors++;}const _errs87 = errors;let valid40 = true;const _errs88 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if((data27.type === undefined) && (\"type\")){const err91 = {};if(vErrors === null){vErrors = [err91];}else {vErrors.push(err91);}errors++;}else {if(data27.type !== undefined){if(!equal(data27.type, \"harlequin:out\")){const err92 = {};if(vErrors === null){vErrors = [err92];}else {vErrors.push(err92);}errors++;}}}}var _valid10 = _errs88 === errors;errors = _errs87;if(vErrors !== null){if(_errs87){vErrors.length = _errs87;}else {vErrors = null;}}if(_valid10){const _errs90 = errors;const _errs91 = errors;let valid42 = false;let passing1 = null;const _errs92 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.variables === undefined){const err93 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err93];}else {vErrors.push(err93);}errors++;}}var _valid11 = _errs92 === errors;if(_valid11){valid42 = true;passing1 = 0;}const _errs93 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.source === undefined){const err94 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/1/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err94];}else {vErrors.push(err94);}errors++;}}var _valid11 = _errs93 === errors;if(_valid11 && valid42){valid42 = false;passing1 = [passing1, 1];}else {if(_valid11){valid42 = true;passing1 = 1;}const _errs94 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.sourceExpression === undefined){const err95 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/2/required\",params:{missingProperty: \"sourceExpression\"},message:\"should have required property '\"+\"sourceExpression\"+\"'\"};if(vErrors === null){vErrors = [err95];}else {vErrors.push(err95);}errors++;}}var _valid11 = _errs94 === errors;if(_valid11 && valid42){valid42 = false;passing1 = [passing1, 2];}else {if(_valid11){valid42 = true;passing1 = 2;}}}if(!valid42){const err96 = {keyword:\"oneOf\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf\",params:{passingSchemas: passing1},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err96];}else {vErrors.push(err96);}errors++;}else {errors = _errs91;if(vErrors !== null){if(_errs91){vErrors.length = _errs91;}else {vErrors = null;}}}if(errors > 0){const emErrs22 = [];for(const err97 of vErrors){if(((((err97.keyword !== \"errorMessage\") && (!err97.emUsed)) && ((err97.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") || ((err97.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") === 0) && (err97.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err97.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/3/then\") === 0)) && (err97.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/3/then\".length] === \"/\")){emErrs22.push(err97);err97.emUsed = true;}}if(emErrs22.length){const err98 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/errorMessage\",params:{errors: emErrs22},message:\"property.binding \" + JSON.stringify(data27 && data27.type) + \" requires variables, sourceExpression or source\"};if(vErrors === null){vErrors = [err98];}else {vErrors.push(err98);}errors++;}const emErrs23 = [];for(const err99 of vErrors){if(!err99.emUsed){emErrs23.push(err99);}}vErrors = emErrs23;errors = emErrs23.length;}var _valid10 = _errs90 === errors;valid40 = _valid10;}if(!valid40){const err100 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err100];}else {vErrors.push(err100);}errors++;}const _errs96 = errors;let valid43 = true;const _errs97 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if((data27.type === undefined) && (\"type\")){const err101 = {};if(vErrors === null){vErrors = [err101];}else {vErrors.push(err101);}errors++;}else {if(data27.type !== undefined){if(!equal(data27.type, \"harlequin:errorEventDefinition\")){const err102 = {};if(vErrors === null){vErrors = [err102];}else {vErrors.push(err102);}errors++;}}}}var _valid12 = _errs97 === errors;errors = _errs96;if(vErrors !== null){if(_errs96){vErrors.length = _errs96;}else {vErrors = null;}}if(_valid12){const _errs99 = errors;const _errs100 = errors;let valid45 = false;let passing2 = null;const _errs101 = errors;if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.errorRef === undefined){const err103 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf/0/required\",params:{missingProperty: \"errorRef\"},message:\"should have required property '\"+\"errorRef\"+\"'\"};if(vErrors === null){vErrors = [err103];}else {vErrors.push(err103);}errors++;}}var _valid13 = _errs101 === errors;if(_valid13){valid45 = true;passing2 = 0;}if(!valid45){const err104 = {keyword:\"oneOf\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf\",params:{passingSchemas: passing2},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err104];}else {vErrors.push(err104);}errors++;}else {errors = _errs100;if(vErrors !== null){if(_errs100){vErrors.length = _errs100;}else {vErrors = null;}}}if(errors > 0){const emErrs24 = [];for(const err105 of vErrors){if(((((err105.keyword !== \"errorMessage\") && (!err105.emUsed)) && ((err105.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") || ((err105.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\") === 0) && (err105.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err105.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/4/then\") === 0)) && (err105.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/4/then\".length] === \"/\")){emErrs24.push(err105);err105.emUsed = true;}}if(emErrs24.length){const err106 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/errorMessage\",params:{errors: emErrs24},message:\"property.binding \" + JSON.stringify(data27 && data27.type) + \" requires errorRef\"};if(vErrors === null){vErrors = [err106];}else {vErrors.push(err106);}errors++;}const emErrs25 = [];for(const err107 of vErrors){if(!err107.emUsed){emErrs25.push(err107);}}vErrors = emErrs25;errors = emErrs25.length;}var _valid12 = _errs99 === errors;valid43 = _valid12;}if(!valid43){const err108 = {keyword:\"if\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err108];}else {vErrors.push(err108);}errors++;}if(data27 && typeof data27 == \"object\" && !Array.isArray(data27)){if(data27.type === undefined){const err109 = {keyword:\"required\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/required\",params:{missingProperty: \"type\"},message:\"should have required property '\"+\"type\"+\"'\"};if(vErrors === null){vErrors = [err109];}else {vErrors.push(err109);}errors++;}if(data27.type !== undefined){let data33 = data27.type;if(typeof data33 !== \"string\"){const err110 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err110];}else {vErrors.push(err110);}errors++;}if(!((((((((((data33 === \"property\") || (data33 === \"harlequin:property\")) || (data33 === \"harlequin:inputParameter\")) || (data33 === \"harlequin:outputParameter\")) || (data33 === \"harlequin:in\")) || (data33 === \"harlequin:out\")) || (data33 === \"harlequin:in:businessKey\")) || (data33 === \"harlequin:executionListener\")) || (data33 === \"harlequin:field\")) || (data33 === \"harlequin:errorEventDefinition\"))){const err111 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/enum\",params:{allowedValues: schema18.items.properties.binding.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err111];}else {vErrors.push(err111);}errors++;}if(errors > 0){const emErrs26 = [];for(const err112 of vErrors){if(((((err112.keyword !== \"errorMessage\") && (!err112.emUsed)) && ((err112.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\") || ((err112.dataPath.indexOf(dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\") === 0) && (err112.dataPath[dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\".length] === \"/\")))) && (err112.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/properties/type\") === 0)) && (err112.schemaPath[\"#/definitions/properties/items/properties/binding/properties/type\".length] === \"/\")){emErrs26.push(err112);err112.emUsed = true;}}if(emErrs26.length){const err113 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/errorMessage\",params:{errors: emErrs26},message:\"invalid property.binding type \" + JSON.stringify(data33) + \"; must be any of { property, harlequin:property, harlequin:inputParameter, harlequin:outputParameter, harlequin:in, harlequin:out, harlequin:in:businessKey, harlequin:executionListener, harlequin:field, harlequin:errorEventDefinition }\"};if(vErrors === null){vErrors = [err113];}else {vErrors.push(err113);}errors++;}const emErrs27 = [];for(const err114 of vErrors){if(!err114.emUsed){emErrs27.push(err114);}}vErrors = emErrs27;errors = emErrs27.length;}}if(data27.name !== undefined){if(typeof data27.name !== \"string\"){const err115 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/name\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/name/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err115];}else {vErrors.push(err115);}errors++;}}if(data27.event !== undefined){if(typeof data27.event !== \"string\"){const err116 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/event\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/event/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err116];}else {vErrors.push(err116);}errors++;}}if(data27.scriptFormat !== undefined){if(typeof data27.scriptFormat !== \"string\"){const err117 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/scriptFormat\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/scriptFormat/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err117];}else {vErrors.push(err117);}errors++;}}if(data27.source !== undefined){if(typeof data27.source !== \"string\"){const err118 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/source\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/source/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err118];}else {vErrors.push(err118);}errors++;}}if(data27.target !== undefined){if(typeof data27.target !== \"string\"){const err119 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/target\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/target/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err119];}else {vErrors.push(err119);}errors++;}}if(data27.expression !== undefined){if(typeof data27.expression !== \"boolean\"){const err120 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/expression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/expression/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err120];}else {vErrors.push(err120);}errors++;}}if(data27.variables !== undefined){let data40 = data27.variables;if(typeof data40 !== \"string\"){const err121 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err121];}else {vErrors.push(err121);}errors++;}if(!((data40 === \"all\") || (data40 === \"local\"))){const err122 = {keyword:\"enum\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/enum\",params:{allowedValues: schema18.items.properties.binding.properties.variables.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err122];}else {vErrors.push(err122);}errors++;}}if(data27.sourceExpression !== undefined){if(typeof data27.sourceExpression !== \"string\"){const err123 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding/sourceExpression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/sourceExpression/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err123];}else {vErrors.push(err123);}errors++;}}}else {const err124 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err124];}else {vErrors.push(err124);}errors++;}}if(data4.constraints !== undefined){let data42 = data4.constraints;if(data42 && typeof data42 == \"object\" && !Array.isArray(data42)){if(data42.notEmpty !== undefined){if(typeof data42.notEmpty !== \"boolean\"){const err125 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/notEmpty\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/notEmpty/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err125];}else {vErrors.push(err125);}errors++;}}if(data42.minLength !== undefined){if(!(typeof data42.minLength == \"number\")){const err126 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/minLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/minLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err126];}else {vErrors.push(err126);}errors++;}}if(data42.maxLength !== undefined){if(!(typeof data42.maxLength == \"number\")){const err127 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/maxLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/maxLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err127];}else {vErrors.push(err127);}errors++;}}if(data42.pattern !== undefined){let data46 = data42.pattern;const _errs129 = errors;let valid48 = false;let passing3 = null;const _errs130 = errors;if(data46 && typeof data46 == \"object\" && !Array.isArray(data46)){if(data46.value !== undefined){if(typeof data46.value !== \"string\"){const err128 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/pattern/value\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/value/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err128];}else {vErrors.push(err128);}errors++;}}if(data46.message !== undefined){if(typeof data46.message !== \"string\"){const err129 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/pattern/message\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/message/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err129];}else {vErrors.push(err129);}errors++;}}}else {const err130 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err130];}else {vErrors.push(err130);}errors++;}var _valid14 = _errs130 === errors;if(_valid14){valid48 = true;passing3 = 0;}const _errs136 = errors;if(typeof data46 !== \"string\"){const err131 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/1/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err131];}else {vErrors.push(err131);}errors++;}var _valid14 = _errs136 === errors;if(_valid14 && valid48){valid48 = false;passing3 = [passing3, 1];}else {if(_valid14){valid48 = true;passing3 = 1;}}if(!valid48){const err132 = {keyword:\"oneOf\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf\",params:{passingSchemas: passing3},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err132];}else {vErrors.push(err132);}errors++;}else {errors = _errs129;if(vErrors !== null){if(_errs129){vErrors.length = _errs129;}else {vErrors = null;}}}}}else {const err133 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1+\"/constraints\",schemaPath:\"#/definitions/properties/items/properties/constraints/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err133];}else {vErrors.push(err133);}errors++;}}}else {const err134 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err134];}else {vErrors.push(err134);}errors++;}if(errors > 0){const emErrors0 = {\"required\":{\"binding\":[]}};const templates0 = {required:{binding:function(){return \"missing binding for property \\\"\" + JSON.stringify(i1) + \"\\\"\"}}};let emPropParams0;let emParamsErrors0;for(const err135 of vErrors){if((((((err135.keyword !== \"errorMessage\") && (!err135.emUsed)) && (err135.dataPath === dataPath+\"/\" + i0+\"/properties/\" + i1)) && (err135.keyword in emErrors0)) && (err135.schemaPath.indexOf(\"#/definitions/properties/items\") === 0)) && (/^\\/[^\\/]*$/.test(err135.schemaPath.slice(30)))){emPropParams0 = obj0[err135.keyword];emParamsErrors0 = emErrors0[err135.keyword][err135.params[emPropParams0]];if(emParamsErrors0){emParamsErrors0.push(err135);err135.emUsed = true;}}}for(const key0 in emErrors0){for(const keyProp0 in emErrors0[key0]){emParamsErrors0 = emErrors0[key0][keyProp0];if(emParamsErrors0.length){const tmpl0 = templates0[key0] && templates0[key0][keyProp0];const err136 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/errorMessage\",params:{errors: emParamsErrors0},message:tmpl0 ? tmpl0() : schema18.items.errorMessage[key0][keyProp0]};if(vErrors === null){vErrors = [err136];}else {vErrors.push(err136);}errors++;}}}const emErrs28 = [];for(const err137 of vErrors){if(!err137.emUsed){emErrs28.push(err137);}}vErrors = emErrs28;errors = emErrs28.length;}}}else {const err138 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0+\"/properties\",schemaPath:\"#/definitions/properties/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err138];}else {vErrors.push(err138);}errors++;}}}else {const err139 = {keyword:\"type\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err139];}else {vErrors.push(err139);}errors++;}if(errors > 0){const emErrors1 = {\"required\":{\"type\":[],\"properties\":[]}};const templates1 = {required:{properties:function(){return \"invalid scope \" + JSON.stringify(data0 && data0.type) + \", missing properties=[]\"}}};let emPropParams1;let emParamsErrors1;for(const err140 of vErrors){if((((((err140.keyword !== \"errorMessage\") && (!err140.emUsed)) && (err140.dataPath === dataPath+\"/\" + i0)) && (err140.keyword in emErrors1)) && (err140.schemaPath.indexOf(\"#/items\") === 0)) && (/^\\/[^\\/]*$/.test(err140.schemaPath.slice(7)))){emPropParams1 = obj0[err140.keyword];emParamsErrors1 = emErrors1[err140.keyword][err140.params[emPropParams1]];if(emParamsErrors1){emParamsErrors1.push(err140);err140.emUsed = true;}}}for(const key1 in emErrors1){for(const keyProp1 in emErrors1[key1]){emParamsErrors1 = emErrors1[key1][keyProp1];if(emParamsErrors1.length){const tmpl1 = templates1[key1] && templates1[key1][keyProp1];const err141 = {keyword:\"errorMessage\",dataPath:dataPath+\"/\" + i0,schemaPath:\"#/items/errorMessage\",params:{errors: emParamsErrors1},message:tmpl1 ? tmpl1() : schema21.items.errorMessage[key1][keyProp1]};if(vErrors === null){vErrors = [err141];}else {vErrors.push(err141);}errors++;}}}const emErrs29 = [];for(const err142 of vErrors){if(!err142.emUsed){emErrs29.push(err142);}}vErrors = emErrs29;errors = emErrs29.length;}}}else {const err143 = {keyword:\"type\",dataPath,schemaPath:\"#/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err143];}else {vErrors.push(err143);}errors++;}validate18.errors = vErrors;return errors === 0;}function validate15(data, {dataPath=\"\", parentData, parentDataProperty, rootData=data}={}){let vErrors = null;let errors = 0;if(data && typeof data == \"object\" && !Array.isArray(data)){if(data.name === undefined){const err0 = {keyword:\"required\",dataPath,schemaPath:\"#/required\",params:{missingProperty: \"name\"},message:\"should have required property '\"+\"name\"+\"'\"};if(vErrors === null){vErrors = [err0];}else {vErrors.push(err0);}errors++;}if(data.id === undefined){const err1 = {keyword:\"required\",dataPath,schemaPath:\"#/required\",params:{missingProperty: \"id\"},message:\"should have required property '\"+\"id\"+\"'\"};if(vErrors === null){vErrors = [err1];}else {vErrors.push(err1);}errors++;}if(data.appliesTo === undefined){const err2 = {keyword:\"required\",dataPath,schemaPath:\"#/required\",params:{missingProperty: \"appliesTo\"},message:\"should have required property '\"+\"appliesTo\"+\"'\"};if(vErrors === null){vErrors = [err2];}else {vErrors.push(err2);}errors++;}if(data.properties === undefined){const err3 = {keyword:\"required\",dataPath,schemaPath:\"#/required\",params:{missingProperty: \"properties\"},message:\"should have required property '\"+\"properties\"+\"'\"};if(vErrors === null){vErrors = [err3];}else {vErrors.push(err3);}errors++;}if(data.name !== undefined){if(typeof data.name !== \"string\"){const err4 = {keyword:\"type\",dataPath:dataPath+\"/name\",schemaPath:\"#/properties/name/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err4];}else {vErrors.push(err4);}errors++;}}if(data.id !== undefined){if(typeof data.id !== \"string\"){const err5 = {keyword:\"type\",dataPath:dataPath+\"/id\",schemaPath:\"#/properties/id/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err5];}else {vErrors.push(err5);}errors++;}}if(data.description !== undefined){if(typeof data.description !== \"string\"){const err6 = {keyword:\"type\",dataPath:dataPath+\"/description\",schemaPath:\"#/properties/description/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err6];}else {vErrors.push(err6);}errors++;}}if(data.version !== undefined){if(!(typeof data.version == \"number\")){const err7 = {keyword:\"type\",dataPath:dataPath+\"/version\",schemaPath:\"#/properties/version/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err7];}else {vErrors.push(err7);}errors++;}}if(data.isDefault !== undefined){if(typeof data.isDefault !== \"boolean\"){const err8 = {keyword:\"type\",dataPath:dataPath+\"/isDefault\",schemaPath:\"#/properties/isDefault/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err8];}else {vErrors.push(err8);}errors++;}}if(data.appliesTo !== undefined){let data5 = data.appliesTo;if(Array.isArray(data5)){const len0 = data5.length;for(let i0=0; i0 0){const emErrors0 = {\"pattern\":[]};const templates0 = {};for(const err11 of vErrors){if((((((err11.keyword !== \"errorMessage\") && (!err11.emUsed)) && (err11.dataPath === dataPath+\"/appliesTo/\" + i0)) && (err11.keyword in emErrors0)) && (err11.schemaPath.indexOf(\"#/properties/appliesTo/items\") === 0)) && (/^\\/[^\\/]*$/.test(err11.schemaPath.slice(28)))){emErrors0[err11.keyword].push(err11);err11.emUsed = true;}}for(const key0 in emErrors0){if(emErrors0[key0].length){const err12 = {keyword:\"errorMessage\",dataPath:dataPath+\"/appliesTo/\" + i0,schemaPath:\"#/properties/appliesTo/items/errorMessage\",params:{errors: emErrors0[key0]},message:key0 in templates0 ? templates0[key0]() : schema17.properties.appliesTo.items.errorMessage[key0]};if(vErrors === null){vErrors = [err12];}else {vErrors.push(err12);}errors++;}}const emErrs0 = [];for(const err13 of vErrors){if(!err13.emUsed){emErrs0.push(err13);}}vErrors = emErrs0;errors = emErrs0.length;}}}else {const err14 = {keyword:\"type\",dataPath:dataPath+\"/appliesTo\",schemaPath:\"#/properties/appliesTo/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err14];}else {vErrors.push(err14);}errors++;}}if(data.properties !== undefined){let data7 = data.properties;if(Array.isArray(data7)){const len1 = data7.length;for(let i1=0; i1 0){const emErrs1 = [];for(const err18 of vErrors){if(((((err18.keyword !== \"errorMessage\") && (!err18.emUsed)) && ((err18.dataPath === dataPath+\"/properties/\" + i1) || ((err18.dataPath.indexOf(dataPath+\"/properties/\" + i1) === 0) && (err18.dataPath[dataPath+\"/properties/\" + i1.length] === \"/\")))) && (err18.schemaPath.indexOf(\"#/definitions/properties/items/allOf/0/then\") === 0)) && (err18.schemaPath[\"#/definitions/properties/items/allOf/0/then\".length] === \"/\")){emErrs1.push(err18);err18.emUsed = true;}}if(emErrs1.length){const err19 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/0/then/errorMessage\",params:{errors: emErrs1},message:\"must provide choices=[] with \\\"Dropdown\\\" type\"};if(vErrors === null){vErrors = [err19];}else {vErrors.push(err19);}errors++;}const emErrs2 = [];for(const err20 of vErrors){if(!err20.emUsed){emErrs2.push(err20);}}vErrors = emErrs2;errors = emErrs2.length;}var _valid0 = _errs24 === errors;valid7 = _valid0;}if(!valid7){const err21 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err21];}else {vErrors.push(err21);}errors++;}const _errs26 = errors;let valid9 = true;const _errs27 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if((data8.binding === undefined) && (\"binding\")){const err22 = {};if(vErrors === null){vErrors = [err22];}else {vErrors.push(err22);}errors++;}else {if(data8.binding !== undefined){let data10 = data8.binding;if(data10 && typeof data10 == \"object\" && !Array.isArray(data10)){if((data10.type === undefined) && (\"type\")){const err23 = {};if(vErrors === null){vErrors = [err23];}else {vErrors.push(err23);}errors++;}else {if(data10.type !== undefined){if(!equal(data10.type, \"property\")){const err24 = {};if(vErrors === null){vErrors = [err24];}else {vErrors.push(err24);}errors++;}}}}}}}var _valid1 = _errs27 === errors;errors = _errs26;if(vErrors !== null){if(_errs26){vErrors.length = _errs26;}else {vErrors = null;}}if(_valid1){const _errs30 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if(data8.type !== undefined){let data12 = data8.type;if(!(((((data12 === \"String\") || (data12 === \"Text\")) || (data12 === \"Hidden\")) || (data12 === \"Dropdown\")) || (data12 === \"Boolean\"))){const err25 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[1].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err25];}else {vErrors.push(err25);}errors++;}if(errors > 0){const emErrs3 = [];for(const err26 of vErrors){if(((((err26.keyword !== \"errorMessage\") && (!err26.emUsed)) && ((err26.dataPath === dataPath+\"/properties/\" + i1+\"/type\") || ((err26.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/type\") === 0) && (err26.dataPath[dataPath+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err26.schemaPath.indexOf(\"#/definitions/properties/items/allOf/1/then/properties/type\") === 0)) && (err26.schemaPath[\"#/definitions/properties/items/allOf/1/then/properties/type\".length] === \"/\")){emErrs3.push(err26);err26.emUsed = true;}}if(emErrs3.length){const err27 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/1/then/properties/type/errorMessage\",params:{errors: emErrs3},message:\"invalid property type \" + JSON.stringify(data12) + \" for binding type \\\"property\\\"; must be any of { String, Text, Hidden, Dropdown, Boolean }\"};if(vErrors === null){vErrors = [err27];}else {vErrors.push(err27);}errors++;}const emErrs4 = [];for(const err28 of vErrors){if(!err28.emUsed){emErrs4.push(err28);}}vErrors = emErrs4;errors = emErrs4.length;}}}var _valid1 = _errs30 === errors;valid9 = _valid1;}if(!valid9){const err29 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err29];}else {vErrors.push(err29);}errors++;}const _errs33 = errors;let valid13 = true;const _errs34 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if((data8.binding === undefined) && (\"binding\")){const err30 = {};if(vErrors === null){vErrors = [err30];}else {vErrors.push(err30);}errors++;}else {if(data8.binding !== undefined){let data13 = data8.binding;if(data13 && typeof data13 == \"object\" && !Array.isArray(data13)){if((data13.type === undefined) && (\"type\")){const err31 = {};if(vErrors === null){vErrors = [err31];}else {vErrors.push(err31);}errors++;}else {if(data13.type !== undefined){if(!equal(data13.type, \"harlequin:executionListener\")){const err32 = {};if(vErrors === null){vErrors = [err32];}else {vErrors.push(err32);}errors++;}}}}}}}var _valid2 = _errs34 === errors;errors = _errs33;if(vErrors !== null){if(_errs33){vErrors.length = _errs33;}else {vErrors = null;}}if(_valid2){const _errs37 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if(data8.type !== undefined){if(!(data8.type === \"Hidden\")){const err33 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[2].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err33];}else {vErrors.push(err33);}errors++;}if(errors > 0){const emErrs5 = [];for(const err34 of vErrors){if(((((err34.keyword !== \"errorMessage\") && (!err34.emUsed)) && ((err34.dataPath === dataPath+\"/properties/\" + i1+\"/type\") || ((err34.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/type\") === 0) && (err34.dataPath[dataPath+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err34.schemaPath.indexOf(\"#/definitions/properties/items/allOf/2/then/properties/type\") === 0)) && (err34.schemaPath[\"#/definitions/properties/items/allOf/2/then/properties/type\".length] === \"/\")){emErrs5.push(err34);err34.emUsed = true;}}if(emErrs5.length){const err35 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/2/then/properties/type/errorMessage\",params:{errors: emErrs5},message:\"invalid property type \" + JSON.stringify(data8 && data8.type) + \" for binding type \\\"harlequin:executionListener\\\"; must be \\\"Hidden\\\"\"};if(vErrors === null){vErrors = [err35];}else {vErrors.push(err35);}errors++;}const emErrs6 = [];for(const err36 of vErrors){if(!err36.emUsed){emErrs6.push(err36);}}vErrors = emErrs6;errors = emErrs6.length;}}}var _valid2 = _errs37 === errors;valid13 = _valid2;}if(!valid13){const err37 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err37];}else {vErrors.push(err37);}errors++;}const _errs40 = errors;let valid17 = true;const _errs41 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if((data8.binding === undefined) && (\"binding\")){const err38 = {};if(vErrors === null){vErrors = [err38];}else {vErrors.push(err38);}errors++;}else {if(data8.binding !== undefined){let data16 = data8.binding;if(data16 && typeof data16 == \"object\" && !Array.isArray(data16)){if((data16.type === undefined) && (\"type\")){const err39 = {};if(vErrors === null){vErrors = [err39];}else {vErrors.push(err39);}errors++;}else {if(data16.type !== undefined){let data17 = data16.type;if(!((((((data17 === \"harlequin:property\") || (data17 === \"harlequin:outputParameter\")) || (data17 === \"harlequin:in\")) || (data17 === \"harlequin:in:businessKey\")) || (data17 === \"harlequin:out\")) || (data17 === \"harlequin:errorEventDefinition\"))){const err40 = {};if(vErrors === null){vErrors = [err40];}else {vErrors.push(err40);}errors++;}}}}}}}var _valid3 = _errs41 === errors;errors = _errs40;if(vErrors !== null){if(_errs40){vErrors.length = _errs40;}else {vErrors = null;}}if(_valid3){const _errs44 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if(data8.type !== undefined){let data18 = data8.type;if(!(((data18 === \"String\") || (data18 === \"Hidden\")) || (data18 === \"Dropdown\"))){const err41 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[3].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err41];}else {vErrors.push(err41);}errors++;}if(errors > 0){const emErrs7 = [];for(const err42 of vErrors){if(((((err42.keyword !== \"errorMessage\") && (!err42.emUsed)) && ((err42.dataPath === dataPath+\"/properties/\" + i1+\"/type\") || ((err42.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/type\") === 0) && (err42.dataPath[dataPath+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err42.schemaPath.indexOf(\"#/definitions/properties/items/allOf/3/then/properties/type\") === 0)) && (err42.schemaPath[\"#/definitions/properties/items/allOf/3/then/properties/type\".length] === \"/\")){emErrs7.push(err42);err42.emUsed = true;}}if(emErrs7.length){const err43 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/3/then/properties/type/errorMessage\",params:{errors: emErrs7},message:\"invalid property type \" + JSON.stringify(data18) + \" for binding type \" + JSON.stringify(data8 && data8.binding && data8.binding.type) + \"; must be any of { String, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err43];}else {vErrors.push(err43);}errors++;}const emErrs8 = [];for(const err44 of vErrors){if(!err44.emUsed){emErrs8.push(err44);}}vErrors = emErrs8;errors = emErrs8.length;}}}var _valid3 = _errs44 === errors;valid17 = _valid3;}if(!valid17){const err45 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err45];}else {vErrors.push(err45);}errors++;}const _errs47 = errors;let valid21 = true;const _errs48 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if((data8.binding === undefined) && (\"binding\")){const err46 = {};if(vErrors === null){vErrors = [err46];}else {vErrors.push(err46);}errors++;}else {if(data8.binding !== undefined){let data19 = data8.binding;if(data19 && typeof data19 == \"object\" && !Array.isArray(data19)){if((data19.type === undefined) && (\"type\")){const err47 = {};if(vErrors === null){vErrors = [err47];}else {vErrors.push(err47);}errors++;}else {if(data19.type !== undefined){let data20 = data19.type;if(!((data20 === \"harlequin:inputParameter\") || (data20 === \"harlequin:field\"))){const err48 = {};if(vErrors === null){vErrors = [err48];}else {vErrors.push(err48);}errors++;}}}}}}}var _valid4 = _errs48 === errors;errors = _errs47;if(vErrors !== null){if(_errs47){vErrors.length = _errs47;}else {vErrors = null;}}if(_valid4){const _errs51 = errors;if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if(data8.type !== undefined){let data21 = data8.type;if(!((((data21 === \"String\") || (data21 === \"Text\")) || (data21 === \"Hidden\")) || (data21 === \"Dropdown\"))){const err49 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/enum\",params:{allowedValues: schema18.items.allOf[4].then.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err49];}else {vErrors.push(err49);}errors++;}if(errors > 0){const emErrs9 = [];for(const err50 of vErrors){if(((((err50.keyword !== \"errorMessage\") && (!err50.emUsed)) && ((err50.dataPath === dataPath+\"/properties/\" + i1+\"/type\") || ((err50.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/type\") === 0) && (err50.dataPath[dataPath+\"/properties/\" + i1+\"/type\".length] === \"/\")))) && (err50.schemaPath.indexOf(\"#/definitions/properties/items/allOf/4/then/properties/type\") === 0)) && (err50.schemaPath[\"#/definitions/properties/items/allOf/4/then/properties/type\".length] === \"/\")){emErrs9.push(err50);err50.emUsed = true;}}if(emErrs9.length){const err51 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/allOf/4/then/properties/type/errorMessage\",params:{errors: emErrs9},message:\"invalid property type \" + JSON.stringify(data21) + \" for binding type \" + JSON.stringify(data8 && data8.binding && data8.binding.type) + \"; must be any of { String, Text, Hidden, Dropdown }\"};if(vErrors === null){vErrors = [err51];}else {vErrors.push(err51);}errors++;}const emErrs10 = [];for(const err52 of vErrors){if(!err52.emUsed){emErrs10.push(err52);}}vErrors = emErrs10;errors = emErrs10.length;}}}var _valid4 = _errs51 === errors;valid21 = _valid4;}if(!valid21){const err53 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err53];}else {vErrors.push(err53);}errors++;}if(data8 && typeof data8 == \"object\" && !Array.isArray(data8)){if(data8.binding === undefined){const err54 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/required\",params:{missingProperty: \"binding\"},message:\"should have required property '\"+\"binding\"+\"'\"};if(vErrors === null){vErrors = [err54];}else {vErrors.push(err54);}errors++;}if(data8.value !== undefined){let data22 = data8.value;if((typeof data22 !== \"string\") && (typeof data22 !== \"boolean\")){const err55 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/value\",schemaPath:\"#/definitions/properties/items/properties/value/type\",params:{type: schema18.items.properties.value.type},message:\"should be string,boolean\"};if(vErrors === null){vErrors = [err55];}else {vErrors.push(err55);}errors++;}}if(data8.description !== undefined){if(typeof data8.description !== \"string\"){const err56 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/description\",schemaPath:\"#/definitions/properties/items/properties/description/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err56];}else {vErrors.push(err56);}errors++;}}if(data8.label !== undefined){if(typeof data8.label !== \"string\"){const err57 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/label\",schemaPath:\"#/definitions/properties/items/properties/label/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err57];}else {vErrors.push(err57);}errors++;}}if(data8.type !== undefined){if(typeof data8.type !== \"string\"){const err58 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/type\",schemaPath:\"#/definitions/properties/items/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err58];}else {vErrors.push(err58);}errors++;}}if(data8.editable !== undefined){if(typeof data8.editable !== \"boolean\"){const err59 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/editable\",schemaPath:\"#/definitions/properties/items/properties/editable/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err59];}else {vErrors.push(err59);}errors++;}}if(data8.choices !== undefined){let data27 = data8.choices;if(Array.isArray(data27)){const len2 = data27.length;for(let i2=0; i2 0){const emErrs11 = [];for(const err65 of vErrors){if(((((err65.keyword !== \"errorMessage\") && (!err65.emUsed)) && ((err65.dataPath === dataPath+\"/properties/\" + i1+\"/choices/\" + i2) || ((err65.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/choices/\" + i2) === 0) && (err65.dataPath[dataPath+\"/properties/\" + i1+\"/choices/\" + i2.length] === \"/\")))) && (err65.schemaPath.indexOf(\"#/definitions/properties/items/properties/choices/items\") === 0)) && (err65.schemaPath[\"#/definitions/properties/items/properties/choices/items\".length] === \"/\")){emErrs11.push(err65);err65.emUsed = true;}}if(emErrs11.length){const err66 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/choices/\" + i2,schemaPath:\"#/definitions/properties/items/properties/choices/items/errorMessage\",params:{errors: emErrs11},message:\"{ name, value } must be specified for \\\"Dropdown\\\" choices\"};if(vErrors === null){vErrors = [err66];}else {vErrors.push(err66);}errors++;}const emErrs12 = [];for(const err67 of vErrors){if(!err67.emUsed){emErrs12.push(err67);}}vErrors = emErrs12;errors = emErrs12.length;}}}else {const err68 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/choices\",schemaPath:\"#/definitions/properties/items/properties/choices/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err68];}else {vErrors.push(err68);}errors++;}}if(data8.binding !== undefined){let data31 = data8.binding;const _errs74 = errors;let valid30 = true;const _errs75 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if((data31.type === undefined) && (\"type\")){const err69 = {};if(vErrors === null){vErrors = [err69];}else {vErrors.push(err69);}errors++;}else {if(data31.type !== undefined){let data32 = data31.type;if(!((((data32 === \"property\") || (data32 === \"harlequin:property\")) || (data32 === \"harlequin:inputParameter\")) || (data32 === \"harlequin:field\"))){const err70 = {};if(vErrors === null){vErrors = [err70];}else {vErrors.push(err70);}errors++;}}}}var _valid5 = _errs75 === errors;errors = _errs74;if(vErrors !== null){if(_errs74){vErrors.length = _errs74;}else {vErrors = null;}}if(_valid5){const _errs77 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.name === undefined){const err71 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/required\",params:{missingProperty: \"name\"},message:\"should have required property '\"+\"name\"+\"'\"};if(vErrors === null){vErrors = [err71];}else {vErrors.push(err71);}errors++;}}if(errors > 0){const emErrs13 = [];for(const err72 of vErrors){if(((((err72.keyword !== \"errorMessage\") && (!err72.emUsed)) && ((err72.dataPath === dataPath+\"/properties/\" + i1+\"/binding\") || ((err72.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding\") === 0) && (err72.dataPath[dataPath+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err72.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/0/then\") === 0)) && (err72.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/0/then\".length] === \"/\")){emErrs13.push(err72);err72.emUsed = true;}}if(emErrs13.length){const err73 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/then/errorMessage\",params:{errors: emErrs13},message:\"property.binding \" + JSON.stringify(data31 && data31.type) + \" requires name\"};if(vErrors === null){vErrors = [err73];}else {vErrors.push(err73);}errors++;}const emErrs14 = [];for(const err74 of vErrors){if(!err74.emUsed){emErrs14.push(err74);}}vErrors = emErrs14;errors = emErrs14.length;}var _valid5 = _errs77 === errors;valid30 = _valid5;}if(!valid30){const err75 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/0/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err75];}else {vErrors.push(err75);}errors++;}const _errs79 = errors;let valid32 = true;const _errs80 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if((data31.type === undefined) && (\"type\")){const err76 = {};if(vErrors === null){vErrors = [err76];}else {vErrors.push(err76);}errors++;}else {if(data31.type !== undefined){if(!equal(data31.type, \"harlequin:outputParameter\")){const err77 = {};if(vErrors === null){vErrors = [err77];}else {vErrors.push(err77);}errors++;}}}}var _valid6 = _errs80 === errors;errors = _errs79;if(vErrors !== null){if(_errs79){vErrors.length = _errs79;}else {vErrors = null;}}if(_valid6){const _errs82 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.source === undefined){const err78 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err78];}else {vErrors.push(err78);}errors++;}}if(errors > 0){const emErrs15 = [];for(const err79 of vErrors){if(((((err79.keyword !== \"errorMessage\") && (!err79.emUsed)) && ((err79.dataPath === dataPath+\"/properties/\" + i1+\"/binding\") || ((err79.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding\") === 0) && (err79.dataPath[dataPath+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err79.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/1/then\") === 0)) && (err79.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/1/then\".length] === \"/\")){emErrs15.push(err79);err79.emUsed = true;}}if(emErrs15.length){const err80 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/then/errorMessage\",params:{errors: emErrs15},message:\"property.binding \" + JSON.stringify(data31 && data31.type) + \" requires source\"};if(vErrors === null){vErrors = [err80];}else {vErrors.push(err80);}errors++;}const emErrs16 = [];for(const err81 of vErrors){if(!err81.emUsed){emErrs16.push(err81);}}vErrors = emErrs16;errors = emErrs16.length;}var _valid6 = _errs82 === errors;valid32 = _valid6;}if(!valid32){const err82 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/1/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err82];}else {vErrors.push(err82);}errors++;}const _errs84 = errors;let valid34 = true;const _errs85 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if((data31.type === undefined) && (\"type\")){const err83 = {};if(vErrors === null){vErrors = [err83];}else {vErrors.push(err83);}errors++;}else {if(data31.type !== undefined){if(!equal(data31.type, \"harlequin:in\")){const err84 = {};if(vErrors === null){vErrors = [err84];}else {vErrors.push(err84);}errors++;}}}}var _valid7 = _errs85 === errors;errors = _errs84;if(vErrors !== null){if(_errs84){vErrors.length = _errs84;}else {vErrors = null;}}if(_valid7){const _errs87 = errors;const _errs88 = errors;let valid36 = false;let passing0 = null;const _errs89 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.variables === undefined){const err85 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err85];}else {vErrors.push(err85);}errors++;}}var _valid8 = _errs89 === errors;if(_valid8){valid36 = true;passing0 = 0;}const _errs90 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.target === undefined){const err86 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf/1/required\",params:{missingProperty: \"target\"},message:\"should have required property '\"+\"target\"+\"'\"};if(vErrors === null){vErrors = [err86];}else {vErrors.push(err86);}errors++;}}var _valid8 = _errs90 === errors;if(_valid8 && valid36){valid36 = false;passing0 = [passing0, 1];}else {if(_valid8){valid36 = true;passing0 = 1;}}if(!valid36){const err87 = {keyword:\"oneOf\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/oneOf\",params:{passingSchemas: passing0},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err87];}else {vErrors.push(err87);}errors++;}else {errors = _errs88;if(vErrors !== null){if(_errs88){vErrors.length = _errs88;}else {vErrors = null;}}}if(errors > 0){const emErrs17 = [];for(const err88 of vErrors){if(((((err88.keyword !== \"errorMessage\") && (!err88.emUsed)) && ((err88.dataPath === dataPath+\"/properties/\" + i1+\"/binding\") || ((err88.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding\") === 0) && (err88.dataPath[dataPath+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err88.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/2/then\") === 0)) && (err88.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/2/then\".length] === \"/\")){emErrs17.push(err88);err88.emUsed = true;}}if(emErrs17.length){const err89 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/then/errorMessage\",params:{errors: emErrs17},message:\"property.binding \" + JSON.stringify(data31 && data31.type) + \" requires variables or target\"};if(vErrors === null){vErrors = [err89];}else {vErrors.push(err89);}errors++;}const emErrs18 = [];for(const err90 of vErrors){if(!err90.emUsed){emErrs18.push(err90);}}vErrors = emErrs18;errors = emErrs18.length;}var _valid7 = _errs87 === errors;valid34 = _valid7;}if(!valid34){const err91 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/2/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err91];}else {vErrors.push(err91);}errors++;}const _errs92 = errors;let valid37 = true;const _errs93 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if((data31.type === undefined) && (\"type\")){const err92 = {};if(vErrors === null){vErrors = [err92];}else {vErrors.push(err92);}errors++;}else {if(data31.type !== undefined){if(!equal(data31.type, \"harlequin:out\")){const err93 = {};if(vErrors === null){vErrors = [err93];}else {vErrors.push(err93);}errors++;}}}}var _valid9 = _errs93 === errors;errors = _errs92;if(vErrors !== null){if(_errs92){vErrors.length = _errs92;}else {vErrors = null;}}if(_valid9){const _errs95 = errors;const _errs96 = errors;let valid39 = false;let passing1 = null;const _errs97 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.variables === undefined){const err94 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/0/required\",params:{missingProperty: \"variables\"},message:\"should have required property '\"+\"variables\"+\"'\"};if(vErrors === null){vErrors = [err94];}else {vErrors.push(err94);}errors++;}}var _valid10 = _errs97 === errors;if(_valid10){valid39 = true;passing1 = 0;}const _errs98 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.source === undefined){const err95 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/1/required\",params:{missingProperty: \"source\"},message:\"should have required property '\"+\"source\"+\"'\"};if(vErrors === null){vErrors = [err95];}else {vErrors.push(err95);}errors++;}}var _valid10 = _errs98 === errors;if(_valid10 && valid39){valid39 = false;passing1 = [passing1, 1];}else {if(_valid10){valid39 = true;passing1 = 1;}const _errs99 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.sourceExpression === undefined){const err96 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf/2/required\",params:{missingProperty: \"sourceExpression\"},message:\"should have required property '\"+\"sourceExpression\"+\"'\"};if(vErrors === null){vErrors = [err96];}else {vErrors.push(err96);}errors++;}}var _valid10 = _errs99 === errors;if(_valid10 && valid39){valid39 = false;passing1 = [passing1, 2];}else {if(_valid10){valid39 = true;passing1 = 2;}}}if(!valid39){const err97 = {keyword:\"oneOf\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/oneOf\",params:{passingSchemas: passing1},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err97];}else {vErrors.push(err97);}errors++;}else {errors = _errs96;if(vErrors !== null){if(_errs96){vErrors.length = _errs96;}else {vErrors = null;}}}if(errors > 0){const emErrs19 = [];for(const err98 of vErrors){if(((((err98.keyword !== \"errorMessage\") && (!err98.emUsed)) && ((err98.dataPath === dataPath+\"/properties/\" + i1+\"/binding\") || ((err98.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding\") === 0) && (err98.dataPath[dataPath+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err98.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/3/then\") === 0)) && (err98.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/3/then\".length] === \"/\")){emErrs19.push(err98);err98.emUsed = true;}}if(emErrs19.length){const err99 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/then/errorMessage\",params:{errors: emErrs19},message:\"property.binding \" + JSON.stringify(data31 && data31.type) + \" requires variables, sourceExpression or source\"};if(vErrors === null){vErrors = [err99];}else {vErrors.push(err99);}errors++;}const emErrs20 = [];for(const err100 of vErrors){if(!err100.emUsed){emErrs20.push(err100);}}vErrors = emErrs20;errors = emErrs20.length;}var _valid9 = _errs95 === errors;valid37 = _valid9;}if(!valid37){const err101 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/3/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err101];}else {vErrors.push(err101);}errors++;}const _errs101 = errors;let valid40 = true;const _errs102 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if((data31.type === undefined) && (\"type\")){const err102 = {};if(vErrors === null){vErrors = [err102];}else {vErrors.push(err102);}errors++;}else {if(data31.type !== undefined){if(!equal(data31.type, \"harlequin:errorEventDefinition\")){const err103 = {};if(vErrors === null){vErrors = [err103];}else {vErrors.push(err103);}errors++;}}}}var _valid11 = _errs102 === errors;errors = _errs101;if(vErrors !== null){if(_errs101){vErrors.length = _errs101;}else {vErrors = null;}}if(_valid11){const _errs104 = errors;const _errs105 = errors;let valid42 = false;let passing2 = null;const _errs106 = errors;if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.errorRef === undefined){const err104 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf/0/required\",params:{missingProperty: \"errorRef\"},message:\"should have required property '\"+\"errorRef\"+\"'\"};if(vErrors === null){vErrors = [err104];}else {vErrors.push(err104);}errors++;}}var _valid12 = _errs106 === errors;if(_valid12){valid42 = true;passing2 = 0;}if(!valid42){const err105 = {keyword:\"oneOf\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/oneOf\",params:{passingSchemas: passing2},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err105];}else {vErrors.push(err105);}errors++;}else {errors = _errs105;if(vErrors !== null){if(_errs105){vErrors.length = _errs105;}else {vErrors = null;}}}if(errors > 0){const emErrs21 = [];for(const err106 of vErrors){if(((((err106.keyword !== \"errorMessage\") && (!err106.emUsed)) && ((err106.dataPath === dataPath+\"/properties/\" + i1+\"/binding\") || ((err106.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding\") === 0) && (err106.dataPath[dataPath+\"/properties/\" + i1+\"/binding\".length] === \"/\")))) && (err106.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/allOf/4/then\") === 0)) && (err106.schemaPath[\"#/definitions/properties/items/properties/binding/allOf/4/then\".length] === \"/\")){emErrs21.push(err106);err106.emUsed = true;}}if(emErrs21.length){const err107 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/then/errorMessage\",params:{errors: emErrs21},message:\"property.binding \" + JSON.stringify(data31 && data31.type) + \" requires errorRef\"};if(vErrors === null){vErrors = [err107];}else {vErrors.push(err107);}errors++;}const emErrs22 = [];for(const err108 of vErrors){if(!err108.emUsed){emErrs22.push(err108);}}vErrors = emErrs22;errors = emErrs22.length;}var _valid11 = _errs104 === errors;valid40 = _valid11;}if(!valid40){const err109 = {keyword:\"if\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/allOf/4/if\",params:{failingKeyword: \"then\"},message:\"should match \\\"then\\\" schema\"};if(vErrors === null){vErrors = [err109];}else {vErrors.push(err109);}errors++;}if(data31 && typeof data31 == \"object\" && !Array.isArray(data31)){if(data31.type === undefined){const err110 = {keyword:\"required\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/required\",params:{missingProperty: \"type\"},message:\"should have required property '\"+\"type\"+\"'\"};if(vErrors === null){vErrors = [err110];}else {vErrors.push(err110);}errors++;}if(data31.type !== undefined){let data37 = data31.type;if(typeof data37 !== \"string\"){const err111 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err111];}else {vErrors.push(err111);}errors++;}if(!((((((((((data37 === \"property\") || (data37 === \"harlequin:property\")) || (data37 === \"harlequin:inputParameter\")) || (data37 === \"harlequin:outputParameter\")) || (data37 === \"harlequin:in\")) || (data37 === \"harlequin:out\")) || (data37 === \"harlequin:in:businessKey\")) || (data37 === \"harlequin:executionListener\")) || (data37 === \"harlequin:field\")) || (data37 === \"harlequin:errorEventDefinition\"))){const err112 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/enum\",params:{allowedValues: schema18.items.properties.binding.properties.type.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err112];}else {vErrors.push(err112);}errors++;}if(errors > 0){const emErrs23 = [];for(const err113 of vErrors){if(((((err113.keyword !== \"errorMessage\") && (!err113.emUsed)) && ((err113.dataPath === dataPath+\"/properties/\" + i1+\"/binding/type\") || ((err113.dataPath.indexOf(dataPath+\"/properties/\" + i1+\"/binding/type\") === 0) && (err113.dataPath[dataPath+\"/properties/\" + i1+\"/binding/type\".length] === \"/\")))) && (err113.schemaPath.indexOf(\"#/definitions/properties/items/properties/binding/properties/type\") === 0)) && (err113.schemaPath[\"#/definitions/properties/items/properties/binding/properties/type\".length] === \"/\")){emErrs23.push(err113);err113.emUsed = true;}}if(emErrs23.length){const err114 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/type\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/type/errorMessage\",params:{errors: emErrs23},message:\"invalid property.binding type \" + JSON.stringify(data37) + \"; must be any of { property, harlequin:property, harlequin:inputParameter, harlequin:outputParameter, harlequin:in, harlequin:out, harlequin:in:businessKey, harlequin:executionListener, harlequin:field, harlequin:errorEventDefinition }\"};if(vErrors === null){vErrors = [err114];}else {vErrors.push(err114);}errors++;}const emErrs24 = [];for(const err115 of vErrors){if(!err115.emUsed){emErrs24.push(err115);}}vErrors = emErrs24;errors = emErrs24.length;}}if(data31.name !== undefined){if(typeof data31.name !== \"string\"){const err116 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/name\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/name/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err116];}else {vErrors.push(err116);}errors++;}}if(data31.event !== undefined){if(typeof data31.event !== \"string\"){const err117 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/event\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/event/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err117];}else {vErrors.push(err117);}errors++;}}if(data31.scriptFormat !== undefined){if(typeof data31.scriptFormat !== \"string\"){const err118 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/scriptFormat\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/scriptFormat/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err118];}else {vErrors.push(err118);}errors++;}}if(data31.source !== undefined){if(typeof data31.source !== \"string\"){const err119 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/source\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/source/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err119];}else {vErrors.push(err119);}errors++;}}if(data31.target !== undefined){if(typeof data31.target !== \"string\"){const err120 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/target\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/target/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err120];}else {vErrors.push(err120);}errors++;}}if(data31.expression !== undefined){if(typeof data31.expression !== \"boolean\"){const err121 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/expression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/expression/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err121];}else {vErrors.push(err121);}errors++;}}if(data31.variables !== undefined){let data44 = data31.variables;if(typeof data44 !== \"string\"){const err122 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err122];}else {vErrors.push(err122);}errors++;}if(!((data44 === \"all\") || (data44 === \"local\"))){const err123 = {keyword:\"enum\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/variables\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/variables/enum\",params:{allowedValues: schema18.items.properties.binding.properties.variables.enum},message:\"should be equal to one of the allowed values\"};if(vErrors === null){vErrors = [err123];}else {vErrors.push(err123);}errors++;}}if(data31.sourceExpression !== undefined){if(typeof data31.sourceExpression !== \"string\"){const err124 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding/sourceExpression\",schemaPath:\"#/definitions/properties/items/properties/binding/properties/sourceExpression/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err124];}else {vErrors.push(err124);}errors++;}}}else {const err125 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/binding\",schemaPath:\"#/definitions/properties/items/properties/binding/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err125];}else {vErrors.push(err125);}errors++;}}if(data8.constraints !== undefined){let data46 = data8.constraints;if(data46 && typeof data46 == \"object\" && !Array.isArray(data46)){if(data46.notEmpty !== undefined){if(typeof data46.notEmpty !== \"boolean\"){const err126 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/notEmpty\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/notEmpty/type\",params:{type: \"boolean\"},message:\"should be boolean\"};if(vErrors === null){vErrors = [err126];}else {vErrors.push(err126);}errors++;}}if(data46.minLength !== undefined){if(!(typeof data46.minLength == \"number\")){const err127 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/minLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/minLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err127];}else {vErrors.push(err127);}errors++;}}if(data46.maxLength !== undefined){if(!(typeof data46.maxLength == \"number\")){const err128 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/maxLength\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/maxLength/type\",params:{type: \"number\"},message:\"should be number\"};if(vErrors === null){vErrors = [err128];}else {vErrors.push(err128);}errors++;}}if(data46.pattern !== undefined){let data50 = data46.pattern;const _errs134 = errors;let valid45 = false;let passing3 = null;const _errs135 = errors;if(data50 && typeof data50 == \"object\" && !Array.isArray(data50)){if(data50.value !== undefined){if(typeof data50.value !== \"string\"){const err129 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/pattern/value\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/value/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err129];}else {vErrors.push(err129);}errors++;}}if(data50.message !== undefined){if(typeof data50.message !== \"string\"){const err130 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/pattern/message\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/properties/message/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err130];}else {vErrors.push(err130);}errors++;}}}else {const err131 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/0/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err131];}else {vErrors.push(err131);}errors++;}var _valid13 = _errs135 === errors;if(_valid13){valid45 = true;passing3 = 0;}const _errs141 = errors;if(typeof data50 !== \"string\"){const err132 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf/1/type\",params:{type: \"string\"},message:\"should be string\"};if(vErrors === null){vErrors = [err132];}else {vErrors.push(err132);}errors++;}var _valid13 = _errs141 === errors;if(_valid13 && valid45){valid45 = false;passing3 = [passing3, 1];}else {if(_valid13){valid45 = true;passing3 = 1;}}if(!valid45){const err133 = {keyword:\"oneOf\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints/pattern\",schemaPath:\"#/definitions/properties/items/properties/constraints/properties/pattern/oneOf\",params:{passingSchemas: passing3},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err133];}else {vErrors.push(err133);}errors++;}else {errors = _errs134;if(vErrors !== null){if(_errs134){vErrors.length = _errs134;}else {vErrors = null;}}}}}else {const err134 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1+\"/constraints\",schemaPath:\"#/definitions/properties/items/properties/constraints/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err134];}else {vErrors.push(err134);}errors++;}}}else {const err135 = {keyword:\"type\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err135];}else {vErrors.push(err135);}errors++;}if(errors > 0){const emErrors1 = {\"required\":{\"binding\":[]}};const templates1 = {required:{binding:function(){return \"missing binding for property \\\"\" + JSON.stringify(i1) + \"\\\"\"}}};let emPropParams0;let emParamsErrors0;for(const err136 of vErrors){if((((((err136.keyword !== \"errorMessage\") && (!err136.emUsed)) && (err136.dataPath === dataPath+\"/properties/\" + i1)) && (err136.keyword in emErrors1)) && (err136.schemaPath.indexOf(\"#/definitions/properties/items\") === 0)) && (/^\\/[^\\/]*$/.test(err136.schemaPath.slice(30)))){emPropParams0 = obj0[err136.keyword];emParamsErrors0 = emErrors1[err136.keyword][err136.params[emPropParams0]];if(emParamsErrors0){emParamsErrors0.push(err136);err136.emUsed = true;}}}for(const key1 in emErrors1){for(const keyProp0 in emErrors1[key1]){emParamsErrors0 = emErrors1[key1][keyProp0];if(emParamsErrors0.length){const tmpl0 = templates1[key1] && templates1[key1][keyProp0];const err137 = {keyword:\"errorMessage\",dataPath:dataPath+\"/properties/\" + i1,schemaPath:\"#/definitions/properties/items/errorMessage\",params:{errors: emParamsErrors0},message:tmpl0 ? tmpl0() : schema18.items.errorMessage[key1][keyProp0]};if(vErrors === null){vErrors = [err137];}else {vErrors.push(err137);}errors++;}}}const emErrs25 = [];for(const err138 of vErrors){if(!err138.emUsed){emErrs25.push(err138);}}vErrors = emErrs25;errors = emErrs25.length;}}}else {const err139 = {keyword:\"type\",dataPath:dataPath+\"/properties\",schemaPath:\"#/definitions/properties/type\",params:{type: \"array\"},message:\"should be array\"};if(vErrors === null){vErrors = [err139];}else {vErrors.push(err139);}errors++;}}if(data.metadata !== undefined){let data53 = data.metadata;if(!(data53 && typeof data53 == \"object\" && !Array.isArray(data53))){const err140 = {keyword:\"type\",dataPath:dataPath+\"/metadata\",schemaPath:\"#/properties/metadata/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err140];}else {vErrors.push(err140);}errors++;}}if(data.scopes !== undefined){let data54 = data.scopes;const _errs146 = errors;let valid47 = false;let passing4 = null;const _errs147 = errors;if(!(validate16(data54, {dataPath:dataPath+\"/scopes\",parentData:data,parentDataProperty:\"scopes\",rootData}))){vErrors = vErrors === null ? validate16.errors : vErrors.concat(validate16.errors);errors = vErrors.length;}var _valid14 = _errs147 === errors;if(_valid14){valid47 = true;passing4 = 0;}const _errs148 = errors;if(!(validate18(data54, {dataPath:dataPath+\"/scopes\",parentData:data,parentDataProperty:\"scopes\",rootData}))){vErrors = vErrors === null ? validate18.errors : vErrors.concat(validate18.errors);errors = vErrors.length;}var _valid14 = _errs148 === errors;if(_valid14 && valid47){valid47 = false;passing4 = [passing4, 1];}else {if(_valid14){valid47 = true;passing4 = 1;}}if(!valid47){const err141 = {keyword:\"oneOf\",dataPath:dataPath+\"/scopes\",schemaPath:\"#/properties/scopes/oneOf\",params:{passingSchemas: passing4},message:\"should match exactly one schema in oneOf\"};if(vErrors === null){vErrors = [err141];}else {vErrors.push(err141);}errors++;}else {errors = _errs146;if(vErrors !== null){if(_errs146){vErrors.length = _errs146;}else {vErrors = null;}}}}if(data.entriesVisible !== undefined){let data55 = data.entriesVisible;if((!(data55 && typeof data55 == \"object\" && !Array.isArray(data55))) && (typeof data55 !== \"boolean\")){const err142 = {keyword:\"type\",dataPath:dataPath+\"/entriesVisible\",schemaPath:\"#/properties/entriesVisible/type\",params:{type: schema17.properties.entriesVisible.type},message:\"should be object,boolean\"};if(vErrors === null){vErrors = [err142];}else {vErrors.push(err142);}errors++;}}}else {const err143 = {keyword:\"type\",dataPath,schemaPath:\"#/type\",params:{type: \"object\"},message:\"should be object\"};if(vErrors === null){vErrors = [err143];}else {vErrors.push(err143);}errors++;}if(errors > 0){const emErrors2 = {\"required\":{\"name\":[],\"id\":[],\"appliesTo\":[],\"properties\":[]}};const templates2 = {required:{}};let emPropParams1;let emParamsErrors1;for(const err144 of vErrors){if((((((err144.keyword !== \"errorMessage\") && (!err144.emUsed)) && (err144.dataPath === dataPath)) && (err144.keyword in emErrors2)) && (err144.schemaPath.indexOf(\"#\") === 0)) && (/^\\/[^\\/]*$/.test(err144.schemaPath.slice(1)))){emPropParams1 = obj0[err144.keyword];emParamsErrors1 = emErrors2[err144.keyword][err144.params[emPropParams1]];if(emParamsErrors1){emParamsErrors1.push(err144);err144.emUsed = true;}}}for(const key2 in emErrors2){for(const keyProp1 in emErrors2[key2]){emParamsErrors1 = emErrors2[key2][keyProp1];if(emParamsErrors1.length){const tmpl1 = templates2[key2] && templates2[key2][keyProp1];const err145 = {keyword:\"errorMessage\",dataPath,schemaPath:\"#/errorMessage\",params:{errors: emParamsErrors1},message:tmpl1 ? tmpl1() : schema17.errorMessage[key2][keyProp1]};if(vErrors === null){vErrors = [err145];}else {vErrors.push(err145);}errors++;}}}const emErrs26 = [];for(const err146 of vErrors){if(!err146.emUsed){emErrs26.push(err146);}}vErrors = emErrs26;errors = emErrs26.length;}validate15.errors = vErrors;return errors === 0;}function validate14(data, {dataPath=\"\", parentData, parentDataProperty, rootData=data}={}){let vErrors = null;let errors = 0;const _errs0 = errors;let valid0 = false;let passing0 = null;const _errs1 = errors;if(!(validate15(data, {dataPath,parentData,parentDataProperty,rootData}))){vErrors = vErrors === null ? validate15.errors : vErrors.concat(validate15.errors);errors = vErrors.length;}var _valid0 = _errs1 === errors;if(_valid0){valid0 = true;passing0 = 0;}const _errs2 = errors;if(Array.isArray(data)){const len0 = data.length;for(let i0=0; i0 extensions produces a couple of\n // unnecessary errors when using an attribute.\n // Therefore, we should flatten the produced errors a bit to not\n // confuse the consumer of this library.\n\n // (1) wrap raw errors in case of custom errorMessage attribute\n minDash.forEach(errors, wrapRawErrors);\n\n // (2) ignore supportive error messages (e.g. \"if-then-rules\")\n errors = ignoreSupportiveErrors(errors);\n\n // (3) set data pointer for each error\n minDash.forEach(errors, function(error) {\n setDataPointer(error, dataPointerMap);\n });\n }\n\n return {\n valid: valid,\n object: object,\n errors: errors\n };\n}\n\n/**\n * Validate a list of objects\n *\n * @param {Object[]} objects\n * @return {Object} list validation result\n */\nfunction validateAll(objects) {\n\n const results = [];\n\n let allValid = true;\n\n minDash.forEach(objects, function(object) {\n const result = validate(object);\n\n if (!result.valid) {\n allValid = false;\n }\n\n results.push(result);\n });\n\n return {\n valid: allValid,\n results: results\n };\n}\n\n\n// helper //////////////\nfunction wrapRawErrors(error) {\n const params = error.params;\n\n if (params && params.errors) {\n params.rawErrors = params.errors;\n delete params.errors;\n }\n}\n\nfunction setDataPointer(error, dataPointerMap) {\n const dataPath = error.dataPath;\n\n const pointer = dataPointerMap[dataPath];\n\n error.dataPointer = pointer;\n}\n\nfunction ignoreSupportiveErrors(errors) {\n return minDash.filter(errors, function(error) {\n return error.keyword !== 'if';\n });\n}\n\n/**\n * Generates a key-pointer map for the object.\n *\n * Example:\n *\n * {\n * foo: 'bar'\n * }\n *\n * =>\n *\n * {\n * '': {\n * value: { line: 0, column: 0, pos: 0 },\n * valueEnd: { line: 2, column: 1, pos: 18 }\n * },\n * '/foo': {\n * key: { line: 1, column: 2, pos: 4 },\n * keyEnd: { line: 1, column: 7, pos: 9 },\n * value: { line: 1, column: 9, pos: 11 },\n * valueEnd: { line: 1, column: 14, pos: 16 }\n * }\n * }\n *\n * @param {Object} object\n * @return {Object}\n */\nfunction generateDataPointerMap(object) {\n return jsonSourceMap.stringify(object, null, 2).pointers;\n}\n\nexports.getSchemaVersion = getSchemaVersion;\nexports.validate = validate;\nexports.validateAll = validateAll;\n","var escapeHTML = require('../../../../Utils').escapeHTML;\r\n\r\nvar getTemplateId = require('../Helper').getTemplateId;\r\n\r\nvar domClasses = require('min-dom').classes,\r\n domEvent = require('min-dom').event,\r\n domify = require('min-dom').domify,\r\n domQuery = require('min-dom').query;\r\n\r\nvar isUndefined = require('lodash/isUndefined');\r\n\r\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\r\n\r\nvar getVersionOrDateFromTemplate = require('./Helper').getVersionOrDateFromTemplate;\r\n\r\nvar MAX_DESCRIPTION_LENGTH = 200;\r\n\r\nmodule.exports = function(\r\n element,\r\n commandStack,\r\n elementTemplates,\r\n modeling,\r\n replace,\r\n selection,\r\n translate) {\r\n var currentElementTemplate = elementTemplates.get(element);\r\n\r\n var entries = [];\r\n\r\n var description,\r\n newestElementTemplate;\r\n\r\n if (currentElementTemplate) {\r\n newestElementTemplate = findNewestElementTemplate(elementTemplates, currentElementTemplate);\r\n\r\n if (newestElementTemplate) {\r\n entries.push({\r\n id: 'element-template-update',\r\n cssClasses: [ 'bpp-entry--warning' ],\r\n html: createUpdateTemplateEntry(element, currentElementTemplate, newestElementTemplate, commandStack, translate)\r\n });\r\n }\r\n\r\n description = currentElementTemplate.description;\r\n\r\n if (description) {\r\n entries.push(createDescriptionEntry(description, translate));\r\n }\r\n } else {\r\n entries.push({\r\n id: 'element-template-not-found',\r\n cssClasses: [ 'bpp-entry--warning' ],\r\n html: createTemplateNotFoundEntry(element, modeling, translate)\r\n });\r\n }\r\n\r\n if (currentElementTemplate && currentElementTemplate.version) {\r\n entries.push({\r\n id: 'element-template-version',\r\n html: '

' + getVersionOrDateFromTemplate(currentElementTemplate) + '

'\r\n });\r\n }\r\n\r\n return {\r\n id: 'elementTemplateDescription',\r\n label: currentElementTemplate ? currentElementTemplate.name : translate('Missing Template'),\r\n dropdown: {\r\n menu: [\r\n {\r\n id: 'element-template-unlink',\r\n label: translate('Unlink'),\r\n onClick: function() {\r\n modeling.updateProperties(element, {\r\n 'harlequin:modelerTemplate': null,\r\n 'harlequin:modelerTemplateVersion': null\r\n });\r\n }\r\n },\r\n {\r\n id: 'element-template-remove',\r\n label: translate('Remove'),\r\n onClick: function() {\r\n var businessObject = getBusinessObject(element);\r\n\r\n var type = businessObject.$type,\r\n eventDefinitionType = getEventDefinitionType(businessObject);\r\n\r\n var newElement = replace.replaceElement(element, {\r\n type: type,\r\n eventDefinitionType: eventDefinitionType\r\n });\r\n\r\n selection.select(newElement);\r\n }\r\n }\r\n ]\r\n },\r\n entries: entries\r\n };\r\n};\r\n\r\n// helpers //////////\r\n\r\nfunction createDescriptionEntry(description, translate) {\r\n description = escapeHTML(description);\r\n\r\n var html = domify('

');\r\n\r\n var descriptionText = domify('' + description + '');\r\n\r\n html.appendChild(descriptionText);\r\n\r\n function toggleExpanded(expanded) {\r\n if (expanded) {\r\n domClasses(html).add('description--expanded');\r\n\r\n descriptionText.textContent = description + ' ';\r\n\r\n expand.textContent = translate('Less');\r\n } else {\r\n domClasses(html).remove('description--expanded');\r\n\r\n descriptionText.textContent = descriptionShortened + ' ... ';\r\n\r\n expand.textContent = translate('More');\r\n }\r\n }\r\n\r\n var descriptionShortened,\r\n expand,\r\n expanded = false;\r\n\r\n if (description.length > MAX_DESCRIPTION_LENGTH) {\r\n descriptionShortened = description.slice(0, MAX_DESCRIPTION_LENGTH);\r\n\r\n expand = domify(\r\n '' +\r\n translate('More') +\r\n ''\r\n );\r\n\r\n domEvent.bind(expand, 'click', function() {\r\n expanded = !expanded;\r\n\r\n toggleExpanded(expanded);\r\n });\r\n\r\n html.appendChild(expand);\r\n\r\n toggleExpanded(expanded);\r\n }\r\n\r\n return {\r\n id: 'element-template-description',\r\n html: html\r\n };\r\n}\r\n\r\nfunction getEventDefinitionType(businessObject) {\r\n if (!businessObject.eventDefinitions) {\r\n return null;\r\n }\r\n\r\n var eventDefinition = businessObject.eventDefinitions[ 0 ];\r\n\r\n if (!eventDefinition) {\r\n return null;\r\n }\r\n\r\n return eventDefinition.$type;\r\n}\r\n\r\nfunction createTemplateNotFoundEntry(element, modeling, translate) {\r\n var templateId = getTemplateId(element);\r\n\r\n var html = domify(\r\n '

' +\r\n translate(\r\n 'The applied Template <{templateId}> was not found and therefore its data is not accessible.' +\r\n '
' +\r\n '
' +\r\n 'Unlink in order to access the data.', { templateId: templateId }\r\n ) +\r\n '

' +\r\n '

' +\r\n 'Unlink' +\r\n '

'\r\n );\r\n\r\n domQuery('.bpp-entry-link', html).addEventListener('click', function() {\r\n modeling.updateProperties(element, {\r\n 'harlequin:modelerTemplate': null\r\n });\r\n });\r\n\r\n return html;\r\n}\r\n\r\nfunction createUpdateTemplateEntry(element, oldElementTemplate, newElementTemplate, commandStack, translate) {\r\n var newElementTemplateVersion = getVersionOrDateFromTemplate(newElementTemplate);\r\n\r\n var html = domify(\r\n '

' +\r\n translate(\r\n 'A new version of the Template ({newElementTemplateVersion}) is available.',\r\n { newElementTemplateVersion: newElementTemplateVersion }\r\n ) +\r\n '

' +\r\n '

' +\r\n 'Update' +\r\n '

'\r\n );\r\n\r\n domQuery('.bpp-entry-link', html).addEventListener('click', function() {\r\n commandStack.execute('propertiesPanel.harlequin.changeTemplate', {\r\n element: element,\r\n newTemplate: newElementTemplate,\r\n oldTemplate: oldElementTemplate\r\n });\r\n });\r\n\r\n return html;\r\n}\r\n\r\nfunction findNewestElementTemplate(elementTemplates, currentElementTemplate) {\r\n if (isUndefined(currentElementTemplate.version)) {\r\n return null;\r\n }\r\n\r\n return elementTemplates\r\n .getAll()\r\n .filter(function(elementTemplate) {\r\n return currentElementTemplate.id === elementTemplate.id && !isUndefined(elementTemplate.version);\r\n })\r\n .reduce(function(newestElementTemplate, elementTemplate) {\r\n if (currentElementTemplate.version < elementTemplate.version) {\r\n return elementTemplate;\r\n }\r\n\r\n if (newestElementTemplate && newestElementTemplate.version < elementTemplate.version) {\r\n return elementTemplate;\r\n }\r\n\r\n return newestElementTemplate;\r\n }, null);\r\n}\r\n","'use strict';\n\nvar assign = require('lodash/assign');\n\nvar nextId = require('../../../Utils').nextId;\n\n/**\n * Create an input parameter representing the given\n * binding and value.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createInputParameter(binding, value, bpmnFactory) {\n var scriptFormat = binding.scriptFormat,\n parameterValue,\n parameterDefinition;\n\n if (scriptFormat) {\n parameterDefinition = bpmnFactory.create('harlequin:Script', {\n scriptFormat: scriptFormat,\n value: value\n });\n } else {\n parameterValue = value;\n }\n\n return bpmnFactory.create('harlequin:InputParameter', {\n name: binding.name,\n value: parameterValue,\n definition: parameterDefinition\n });\n}\n\nmodule.exports.createInputParameter = createInputParameter;\n\n\n/**\n * Create an output parameter representing the given\n * binding and value.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createOutputParameter(binding, value, bpmnFactory) {\n var scriptFormat = binding.scriptFormat,\n parameterValue,\n parameterDefinition;\n\n if (scriptFormat) {\n parameterDefinition = bpmnFactory.create('harlequin:Script', {\n scriptFormat: scriptFormat,\n value: binding.source\n });\n } else {\n parameterValue = binding.source;\n }\n\n return bpmnFactory.create('harlequin:OutputParameter', {\n name: value,\n value: parameterValue,\n definition: parameterDefinition\n });\n}\n\nmodule.exports.createOutputParameter = createOutputParameter;\n\n\n/**\n * Create Harlequin property from the given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinProperty(binding, value, bpmnFactory) {\n return bpmnFactory.create('harlequin:Property', {\n name: binding.name,\n value: value || ''\n });\n}\n\nmodule.exports.createHarlequinProperty = createHarlequinProperty;\n\n\n/**\n * Create harlequin:In element from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinIn(binding, value, bpmnFactory) {\n\n var properties = createHarlequinInOutAttrs(binding, value);\n\n return bpmnFactory.create('harlequin:In', properties);\n}\n\nmodule.exports.createHarlequinIn = createHarlequinIn;\n\n\n/**\n * Create harlequin:In with businessKey element from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinInWithBusinessKey(binding, value, bpmnFactory) {\n return bpmnFactory.create('harlequin:In', {\n businessKey: value\n });\n}\n\nmodule.exports.createHarlequinInWithBusinessKey = createHarlequinInWithBusinessKey;\n\n\n/**\n * Create harlequin:Out element from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinOut(binding, value, bpmnFactory) {\n var properties = createHarlequinInOutAttrs(binding, value);\n\n return bpmnFactory.create('harlequin:Out', properties);\n}\n\nmodule.exports.createHarlequinOut = createHarlequinOut;\n\n\n/**\n * Create harlequin:ExecutionListener element containing an inline script from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinExecutionListenerScript(binding, value, bpmnFactory) {\n var scriptFormat = binding.scriptFormat,\n parameterValue,\n parameterDefinition;\n\n if (scriptFormat) {\n parameterDefinition = bpmnFactory.create('harlequin:Script', {\n scriptFormat: scriptFormat,\n value: value\n });\n } else {\n parameterValue = value;\n }\n\n return bpmnFactory.create('harlequin:ExecutionListener', {\n event: binding.event,\n value: parameterValue,\n script: parameterDefinition\n });\n}\n\nmodule.exports.createHarlequinExecutionListenerScript = createHarlequinExecutionListenerScript;\n\n/**\n * Create harlequin:field element containing string or expression from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinFieldInjection(binding, value, bpmnFactory) {\n var DEFAULT_PROPS = {\n 'string': undefined,\n 'expression': undefined,\n 'name': undefined\n };\n\n var props = assign({}, DEFAULT_PROPS);\n\n if (!binding.expression) {\n props.string = value;\n } else {\n props.expression = value;\n }\n props.name = binding.name;\n\n return bpmnFactory.create('harlequin:Field', props);\n}\n\nmodule.exports.createHarlequinFieldInjection = createHarlequinFieldInjection;\n\n/**\n * Create harlequin:errorEventDefinition element containing expression and errorRef\n * from given binding.\n *\n * @param {PropertyBinding} binding\n * @param {String} value\n * @param {ModdleElement} error\n * @param {ModdleElement} parent\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement}\n */\nfunction createHarlequinErrorEventDefinition(binding, value, error, parent, bpmnFactory) {\n var errorRef = error,\n expression = value;\n\n var newErrorEventDefinition = bpmnFactory.create('harlequin:ErrorEventDefinition', {\n expression: expression,\n errorRef: errorRef\n });\n\n newErrorEventDefinition.$parent = parent;\n\n return newErrorEventDefinition;\n}\n\nmodule.exports.createHarlequinErrorEventDefinition = createHarlequinErrorEventDefinition;\n\n/**\n * Create bpmn:error element containing a specific error id given by a binding.\n *\n * @param {String} bindingErrorRef\n * @param {ModdleElement} parent\n * @param {BpmnFactory} bpmnFactory\n *\n * @return { ModdleElement }\n */\nfunction createError(bindingErrorRef, parent, bpmnFactory) {\n var error = bpmnFactory.create('bpmn:Error', {\n\n // we need to later retrieve the error from a binding\n id: nextId('Error_' + bindingErrorRef + '_')\n });\n\n error.$parent = parent;\n\n return error;\n}\n\nmodule.exports.createError = createError;\n\n// helpers ////////////////////////////\n\n/**\n * Create properties for harlequin:In and harlequin:Out types.\n */\nfunction createHarlequinInOutAttrs(binding, value) {\n\n var properties = {};\n\n // harlequin:In source(Expression) target\n if (binding.target) {\n\n properties.target = binding.target;\n\n if (binding.expression) {\n properties.sourceExpression = value;\n } else {\n properties.source = value;\n }\n } else\n\n // harlequin:(in|out) variables local\n if (binding.variables) {\n properties.variables = 'all';\n\n if (binding.variables === 'local') {\n properties.local = true;\n }\n }\n\n // harlequin:Out source(Expression) target\n else {\n properties.target = value;\n\n [ 'source', 'sourceExpression' ].forEach(function(k) {\n if (binding[k]) {\n properties[k] = binding[k];\n }\n });\n }\n\n return properties;\n}\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils');\n\nvar eventDefinitionReference = require('./EventDefinitionReference'),\n elementReferenceProperty = require('./ElementReferenceProperty');\n\n\nmodule.exports = function(group, element, bpmnFactory, escalationEventDefinition, showEscalationCodeVariable, translate) {\n\n group.entries = group.entries.concat(eventDefinitionReference(element, escalationEventDefinition, bpmnFactory, {\n label: translate('Global Escalation referenced'),\n elementName: 'escalation',\n elementType: 'bpmn:Escalation',\n referenceProperty: 'escalationRef',\n newElementIdPrefix: 'Escalation_'\n }));\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, escalationEventDefinition, bpmnFactory, translate, {\n id: 'escalation-element-name',\n label: translate('Global Escalation Name'),\n referenceProperty: 'escalationRef',\n modelProperty: 'name',\n shouldValidate: true\n })\n );\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, escalationEventDefinition, bpmnFactory, translate, {\n id: 'escalation-element-code',\n label: translate('Global Escalation Code'),\n referenceProperty: 'escalationRef',\n modelProperty: 'escalationCode'\n })\n );\n\n\n if (showEscalationCodeVariable) {\n group.entries.push(entryFactory.validationAwareTextField(translate, {\n id : 'escalationCodeVariable',\n label : translate('Escalation Code Variable'),\n modelProperty : 'escalationCodeVariable',\n description: translate('Define the name of the variable that will contain the escalation code'),\n\n getProperty: function(element) {\n var codeVariable = escalationEventDefinition.get('harlequin:escalationCodeVariable');\n\n return codeVariable;\n },\n\n setProperty: function(element, values) {\n if (values.escalationCodeVariable === '')\n values.escalationCodeVariable = undefined;\n\n return cmdHelper.updateBusinessObject(element, escalationEventDefinition, values);\n },\n\n validate: function(element, values) {\n var validation = {},\n targetValue = values.escalationCodeVariable;\n\n if (utils.containsSpace(targetValue)) {\n validation.escalationCodeVariable = translate('Escalation code variable must not contain spaces.');\n }\n\n return validation;\n }\n }));\n }\n};\n","'use strict';\n\nvar ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper');\n\nvar fieldInjection = require('./implementation/FieldInjection');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var bo = ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n var fieldInjectionEntry = fieldInjection(element, bpmnFactory, translate, { businessObject: bo });\n\n if (fieldInjectionEntry && fieldInjectionEntry.length > 0) {\n group.entries = group.entries.concat(fieldInjectionEntry);\n }\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewReport.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar ModelUtil = require('../../../process-builder/lib/base/BaseServices'),\n is = ModelUtil.is,\n getBusinessObject = ModelUtil.getBusinessObject;\n\nvar eventDefinitionHelper = require('./EventDefinitionHelper');\nvar extensionsElementHelper = require('./ExtensionElementsHelper');\n\nvar ImplementationTypeHelper = {};\n\nmodule.exports = ImplementationTypeHelper;\n\n/**\n * Returns 'true' if the given element is 'harlequin:ServiceTaskLike'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isServiceTaskLike = function(element) {\n return is(element, 'harlequin:ServiceTaskLike');\n};\n\n/**\n * Returns 'true' if the given element is 'harlequin:DmnCapable'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isDmnCapable = function(element) {\n return is(element, 'harlequin:DmnCapable');\n};\n\n/**\n * Returns 'true' if the given element is 'harlequin:ExternalCapable'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isExternalCapable = function(element) {\n return is(element, 'harlequin:ExternalCapable');\n};\n\n/**\n * Returns 'true' if the given element is 'harlequin:TaskListener'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isTaskListener = function(element) {\n return is(element, 'harlequin:TaskListener');\n};\n\n/**\n * Returns 'true' if the given element is 'harlequin:ExecutionListener'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isExecutionListener = function(element) {\n return is(element, 'harlequin:ExecutionListener');\n};\n\n/**\n * Returns 'true' if the given element is 'harlequin:ExecutionListener' or\n * 'harlequin:TaskListener'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isListener = function(element) {\n return this.isTaskListener(element) || this.isExecutionListener(element);\n};\n\n/**\n * Returns 'true' if the given element is 'bpmn:SequenceFlow'\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean} a boolean value\n */\nImplementationTypeHelper.isSequenceFlow = function(element) {\n return is(element, 'bpmn:SequenceFlow');\n};\n\n/**\n * Get a 'harlequin:ServiceTaskLike' business object.\n *\n * If the given element is not a 'harlequin:ServiceTaskLike', then 'false'\n * is returned.\n *\n * @param {djs.model.Base} element\n *\n * @return {ModdleElement} the 'harlequin:ServiceTaskLike' business object\n */\nImplementationTypeHelper.getServiceTaskLikeBusinessObject = function(element) {\n\n if (is(element, 'bpmn:IntermediateThrowEvent') || is(element, 'bpmn:EndEvent')) {\n\n // change business object to 'messageEventDefinition' when\n // the element is a message intermediate throw event or message end event\n // because the harlequin extensions (e.g. harlequin:class) are in the message\n // event definition tag and not in the intermediate throw event or end event tag\n var messageEventDefinition = eventDefinitionHelper.getMessageEventDefinition(element);\n if (messageEventDefinition) {\n element = messageEventDefinition;\n }\n }\n\n return this.isServiceTaskLike(element) && getBusinessObject(element);\n\n};\n\n/**\n * Returns the implementation type of the given element.\n *\n * Possible implementation types are:\n * - dmn\n * - connector\n * - external\n * - class\n * - expression\n * - delegateExpression\n * - script\n * - or undefined, when no matching implementation type is found\n *\n * @param {djs.model.Base} element\n *\n * @return {String} the implementation type\n */\nImplementationTypeHelper.getImplementationType = function(element) {\n\n var bo = this.getServiceTaskLikeBusinessObject(element);\n\n if (!bo) {\n if (this.isListener(element)) {\n bo = element;\n } else {\n return;\n }\n }\n\n if (this.isDmnCapable(bo)) {\n var decisionRef = bo.get('harlequin:decisionRef');\n if (typeof decisionRef !== 'undefined') {\n return 'dmn';\n }\n }\n\n if (this.isServiceTaskLike(bo)) {\n var connectors = extensionsElementHelper.getExtensionElements(bo, 'harlequin:Connector');\n if (connectors.length) {\n return 'connector';\n }\n }\n\n if (this.isExternalCapable(bo)) {\n var type = bo.get('harlequin:type');\n if (type === 'external') {\n return 'external';\n }\n }\n\n var cls = bo.get('harlequin:class');\n if (typeof cls !== 'undefined') {\n return 'class';\n }\n\n var expression = bo.get('harlequin:expression');\n if (typeof expression !== 'undefined') {\n return 'expression';\n }\n\n var delegateExpression = bo.get('harlequin:delegateExpression');\n if (typeof delegateExpression !== 'undefined') {\n return 'delegateExpression';\n }\n\n if (this.isListener(bo)) {\n var script = bo.get('script');\n if (typeof script !== 'undefined') {\n return 'script';\n }\n }\n\n};\n","import axios from 'axios';\nimport qs from 'querystring';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n msAuthToken: '',\n msGroupId: '',\n msParentFolderId: '',\n msUploadFolderId: '',\n fileBuffer: '',\n fileBufferError: '',\n uploadedFileData: [],\n uploadSuccessful: false,\n uploadError: '',\n fileDataSaved: false,\n imageDataSaved: false,\n taskFiles: [],\n caseFiles: [],\n allFiles: [],\n deletedFile: '',\n downloadFileName: '',\n downloadFileUrl: '',\n gulperUrl: '',\n gulperFileHeaders: [],\n gulperFilePreview: [],\n gulped: false\n};\n\nconst getters = {\n uploadError: (state) => state.uploadError,\n taskFiles: (state) => state.taskFiles,\n caseFiles: (state) => state.caseFiles,\n allFiles: (state) => state.allFiles,\n downloadFileName: (state) => state.downloadFileName,\n downloadFileUrl: (state) => state.downloadFileUrl,\n imageDataSaved: (state) => state.imageDataSaved,\n gulperUrl: (state) => state.gulperUrl,\n gulperFileHeaders: (state) => state.gulperFileHeaders,\n gulperFilePreview: (state) => state.gulperFilePreview,\n gulped: (state) => state.gulped\n};\n\nconst actions = {\n fileBuffer({ commit }, file) {\n return new Promise((resolve, reject) => {\n let reader = new FileReader();\n reader.onloadend = function(e) {\n commit('FILE_BUFFER', e.target.result);\n resolve(e.target.result);\n }\n reader.onerror = function (e) {\n commit('FILE_BUFFER_ERROR', e.target.error);\n reject(e.target.error);\n }\n reader.readAsArrayBuffer(file);\n\n });\n },\n async getMSAuth({state, rootState, commit}) {\n await this.dispatch('getStorageDetails').then( () => {\n let payload = qs['stringify']({\n grant_type: 'client_credentials',\n scope: 'https://graph.microsoft.com/.default',\n client_id: rootState.admin.storageDetails.officeClientId,\n client_secret: rootState.admin.storageDetails.officeClientSecret\n });\n \n let data = {\n 'variables': {\n 'storage': { 'value': 'onedrive', 'type': 'String' },\n 'url': { 'value': 'https://login.microsoftonline.com/' + rootState.admin.storageDetails.officeTenantId + '/oauth2/v2.0/token', 'type': 'String' },\n 'payload': { 'value': payload, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let response = JSON.parse(result.data.variables.response.value);\n \n if(response.error == 'invalid_client') {\n let msg = response.error_description;\n commit('ERROR_MESSAGE', msg);\n }else {\n state.msAuthToken = response.access_token;\n commit('MS_AUTH_TOKEN', response.access_token);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n });\n },\n uploadFilesToMS({state, rootState, commit}, files) {\n const PromiseArr = [];\n // Replace group name with customer info\n let groupName = rootState.admin.storageDetails.officeGroupName;\n // Find the ID of the specified group\n PromiseArr.push(\n axios.get('https://graph.microsoft.com/v1.0/groups?$search=\"displayName:' + groupName + '\"', {headers: {'ConsistencyLevel': 'eventual', 'Authorization': 'Bearer ' + state.msAuthToken}}).then( result => new Promise(resolve => {\n state.msGroupId = result.data.value[0].id;\n commit('MS_GROUP_ID', result.data.value[0].id);\n // Check if upload folder exists\n let path = rootState.admin.storageDetails.officeUploadPath;\n axios.get('https://graph.microsoft.com/v1.0/groups/' + result.data.value[0].id + '/drive/root:/' + path + ':/children', {headers: {'Authorization': 'Bearer ' + state.msAuthToken}}).then( res => {\n\n let folderExists = false;\n for(let i = 0; i < res.data.value.length; i++) {\n let folderName = 'Case ' + this.getters['caseId'];\n if(res.data.value[i].name == folderName) {\n folderExists = true;\n state.msUploadFolderId = res.data.value[i].id;\n commit('MS_UPLOAD_FOLDER_ID', res.data.value[i].id);\n break;\n }\n }\n\n // If not, create it\n if(!folderExists) {\n // Get parent folder ID\n axios.get('https://graph.microsoft.com/v1.0/groups/' + result.data.value[0].id + '/drive/root:/' + path, {headers: {'Authorization': 'Bearer ' + state.msAuthToken}}).then( res => {\n state.msParentFolderId = res.data.id;\n commit('MS_PARENT_FOLDER_ID', result.data.id);\n\n // Create new folder\n let folderName = 'Case ' + this.getters['caseId'];\n let newFolder = {\n 'name': folderName,\n 'folder': { },\n '@microsoft.graph.conflictBehavior': 'rename'\n };\n\n axios.post('https://graph.microsoft.com/v1.0/groups/' + result.data.value[0].id + '/drive/items/' + res.data.id + '/children', newFolder, {headers: {'Content-Type': 'application/json', 'Authorization': 'Bearer ' + state.msAuthToken}}).then( resp => {\n state.msUploadFolderId = resp.data.id;\n commit('MS_UPLOAD_FOLDER_ID', resp.data.id);\n\n resolve();\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n \n }else {\n resolve();\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n })));\n \n Promise.all(PromiseArr).then( () => {\n\n try {\n for(let i = 0; i < files.length; i++) {\n // Get file buffer\n this.dispatch('fileBuffer', files[i]).then( arrayBuffer => {\n\n // Upload file\n let payload = {\n 'file': files[i],\n 'arrayBuffer': arrayBuffer\n };\n this.dispatch('uploadFile', payload);\n\n });\n }\n } catch(e) {\n commit('UPLOAD_ERROR', e);\n }\n });\n },\n uploadFile({state, commit}, payload) {\n let file = payload.file;\n let arrayBuffer = payload.arrayBuffer;\n // Large file upload\n let msUploadSessionUrl = 'https://graph.microsoft.com/v1.0/groups/' + state.msGroupId + '/drive/items/' + state.msUploadFolderId + ':/' + file.name + ':/createUploadSession';\n let sessionBody = {\n 'item': {\n '@microsoft.graph.conflictBehavior': 'rename',\n 'name': file.name\n }\n };\n axios.post(msUploadSessionUrl, sessionBody, {headers: {'Content-Type': 'application/json', 'Authorization': 'Bearer ' + state.msAuthToken}}).then( session => {\n let msUploadUrl = session.data.uploadUrl;\n\n axios.put(msUploadUrl, arrayBuffer, {headers: {'Content-Range': 'bytes 0-' + parseInt(file.size - 1) + '/' + file.size}}).then( result => {\n let fileData = {\n 'storageType': 'office',\n 'id': result.data.id,\n 'name': result.data.name,\n 'size': file.size,\n 'webUrl': result.data.webUrl,\n 'created': new Date()\n }\n this.dispatch('uploadFileData', fileData);\n commit('UPLOAD_SUCCESSFUL', true);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n uploadFileData({state, commit}, payload) {\n // Format date\n let cdate = new Date(payload.created);\n let createdDateTime = new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(cdate);\n\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'caseId': { 'value': this.getters['instanceId'], 'type': 'String' },\n 'taskId': { 'value': this.getters['taskId'], 'type': 'String' },\n 'taskName': { 'value': this.getters['taskName'], 'type': 'String' },\n 'processName': { 'value': this.getters['processName'], 'type': 'String' },\n 'filename': { 'value': payload.name, 'type': 'String' },\n 'filesize': { 'value': payload.size, 'type': 'String' },\n 'url': { 'value': payload.webUrl, 'type': 'String' },\n 'created': { 'value': createdDateTime, 'type': 'String' },\n 'itemId': { 'value': payload.id, 'type': 'String' },\n 'uploadedBy': { 'value': store.state.currentUser, 'type': 'String' }\n }\n };\n\n if(payload.storageType == 'local') {\n data.variables['storageType'] = { 'value': 'local', 'type': 'String' };\n data.variables['mimeType'] = { 'value': payload.mimeType, 'type': 'String' };\n data.variables['fileData'] = { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.name, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } };\n }else {\n data.variables['storageType'] = { 'value': 'office', 'type': 'String' };\n data.variables['msGroupId'] = { 'value': state.msGroupId, 'type': 'String' };\n }\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n // Force a 1 second wait for local storage\n setTimeout(function(){\n commit('FILE_DATA_SAVED', true);\n }, 1000);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n uploadExternalFileData({state, commit}, payload) {\n // Format date\n let cdate = new Date(payload.created);\n let createdDateTime = new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(cdate);\n\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'save', 'type': 'String' },\n 'caseId': { 'value': this.getters['origInstanceId'], 'type': 'String' },\n 'taskId': { 'value': this.getters['taskId'], 'type': 'String' },\n 'taskName': { 'value': this.getters['taskName'], 'type': 'String' },\n 'processName': { 'value': this.getters['processName'], 'type': 'String' },\n 'filename': { 'value': payload.name, 'type': 'String' },\n 'filesize': { 'value': payload.size, 'type': 'String' },\n 'url': { 'value': payload.webUrl, 'type': 'String' },\n 'created': { 'value': createdDateTime, 'type': 'String' },\n 'itemId': { 'value': payload.id, 'type': 'String' },\n 'uploadedBy': { 'value': 'External User', 'type': 'String' }\n }\n };\n\n if(payload.storageType == 'local') {\n data.variables['storageType'] = { 'value': 'local', 'type': 'String' };\n data.variables['mimeType'] = { 'value': payload.mimeType, 'type': 'String' };\n data.variables['fileData'] = { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.name, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } };\n }else {\n data.variables['storageType'] = { 'value': 'office', 'type': 'String' };\n data.variables['msGroupId'] = { 'value': state.msGroupId, 'type': 'String' };\n }\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => { \n // Force a 1 second wait for local storage\n setTimeout(function(){\n commit('FILE_DATA_SAVED', true);\n }, 1000);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n uploadImageData({commit, state}, payload) {\n state.imageDataSaved = false;\n // Format date\n let cdate = new Date(payload.created);\n let createdDateTime = new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(cdate);\n\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'saveImg', 'type': 'String' },\n 'caseId': { 'value': '', 'type': 'String' },\n 'taskId': { 'value': '', 'type': 'String' },\n 'taskName': { 'value': '', 'type': 'String' },\n 'processName': { 'value': '', 'type': 'String' },\n 'filename': { 'value': payload.name, 'type': 'String' },\n 'filesize': { 'value': payload.size, 'type': 'String' },\n 'url': { 'value': '', 'type': 'String' },\n 'created': { 'value': createdDateTime, 'type': 'String' },\n 'itemId': { 'value': payload.id, 'type': 'String' },\n 'uploadedBy': { 'value': store.state.currentUser, 'type': 'String' },\n 'mimeType': { 'value': payload.mimeType, 'type': 'String' },\n 'fileData': { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.name, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => { \n if(res.status == 200) {\n commit('IMAGE_DATA_SAVED', true);\n return true;\n }else {\n commit('IMAGE_DATA_SAVED', false);\n return false;\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n uploadGulperData({commit}, payload) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'gulper', 'type': 'String' },\n 'requestType': { 'value': payload.requestType, 'type': 'String' },\n 'headerRow': { 'value': payload.headerRow, 'type': 'Integer' },\n 'filename': { 'value': payload.name, 'type': 'String' },\n 'fileData': { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.name, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('GULPER_URL', result.data.variables.gulperUrl.value);\n commit('GULPER_FILE_HEADERS', JSON.parse(result.data.variables.fileHeaders.value));\n commit('GULPER_FILE_PREVIEW', JSON.parse(result.data.variables.filePreview.value));\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n importGulperData({commit}, payload) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'gulper', 'type': 'String' },\n 'requestType': { 'value': payload.requestType, 'type': 'String' },\n 'headerRow': { 'value': payload.headerRow, 'type': 'Integer' },\n 'targetTable': { 'value': payload.targetTable, 'type': 'String' },\n 'gulperUrl': { 'value': payload.url, 'type': 'String' },\n 'columns': { 'value': payload.columns, 'type': 'Json' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('GULPED', result.data.variables.gulped.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getTaskFiles({commit}) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'get', 'type': 'String' },\n 'caseId': { 'value': this.getters['instanceId'], 'type': 'String' },\n 'taskId': { 'value': this.getters['taskId'], 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('TASK_FILES', JSON.parse(result.data.variables.fileData.value));\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getCaseFiles({commit}) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'getCase', 'type': 'String' },\n 'caseId': { 'value': this.getters['instanceId'], 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('CASE_FILES', JSON.parse(result.data.variables.fileData.value));\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getExternalCaseFiles({commit}) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'getCase', 'type': 'String' },\n 'caseId': { 'value': this.getters['origInstanceId'], 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n commit('CASE_FILES', JSON.parse(result.data.variables.fileData.value));\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllFiles({commit}, role) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n if(role == 'adminRole') {\n data.variables['filter'] = { 'value': '', 'type': 'String' };\n }else {\n data.variables['filter'] = { 'value': store.state.currentUser, 'type': 'String' };\n }\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('ALL_FILES', JSON.parse(result.data.variables.fileData.value));\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n downloadFile({commit}, itemId) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'retrieve', 'type': 'String' },\n 'itemId': { 'value': itemId, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let fileName = result.data.variables.fileName.value;\n let mimeType = result.data.variables.mimeType.value;\n let fileData = result.data.variables.fileBuffer.value;\n\n const byteCharacters = atob(fileData);\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n let blob = new Blob([byteArray], {type: mimeType});\n let url = window.URL.createObjectURL(blob);\n\n commit('DOWNLOAD_FILE_NAME', fileName);\n commit('DOWNLOAD_FILE_URL', url);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n downloadExternalFile({commit}, itemId) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'retrieve', 'type': 'String' },\n 'itemId': { 'value': itemId, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n let fileName = result.data.variables.fileName.value;\n let mimeType = result.data.variables.mimeType.value;\n let fileData = result.data.variables.fileBuffer.value;\n\n const byteCharacters = atob(fileData);\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n let blob = new Blob([byteArray], {type: mimeType});\n let url = window.URL.createObjectURL(blob);\n\n commit('DOWNLOAD_FILE_NAME', fileName);\n commit('DOWNLOAD_FILE_URL', url);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteFile({state, commit}, payload) {\n axios.delete('https://graph.microsoft.com/v1.0/groups/' + payload.groupId + '/drive/items/' + payload.fileId, {headers: {'Authorization': 'Bearer ' + state.msAuthToken}}).then( result => { \n if(result.status == 204) {\n \n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'itemId': { 'value': payload.fileId, 'type': 'String' }\n }\n };\n \n axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_FILE', payload.fileId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteExternalFile({state, commit}, payload) {\n axios.delete('https://graph.microsoft.com/v1.0/groups/' + payload.groupId + '/drive/items/' + payload.fileId, {headers: {'Authorization': 'Bearer ' + state.msAuthToken}}).then( result => { \n if(result.status == 204) {\n \n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'itemId': { 'value': payload.fileId, 'type': 'String' }\n }\n };\n \n axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => { \n commit('DELETED_FILE', payload.fileId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteLocalFile({commit}, itemId) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'itemId': { 'value': itemId, 'type': 'String' }\n }\n };\n \n axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_FILE', itemId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteExternalLocalFile({commit}, itemId) {\n let data = {\n 'variables': {\n 'storage': { 'value': 'data', 'type': 'String' },\n 'requestType': { 'value': 'delete', 'type': 'String' },\n 'itemId': { 'value': itemId, 'type': 'String' }\n }\n };\n \n axios.post(baseURL + '/process-definition/key/fileController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => { \n commit('DELETED_FILE', itemId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n};\n\nconst mutations = {\n MS_AUTH_TOKEN(state, payload) {\n state.msAuthToken = payload;\n },\n MS_GROUP_ID(state, payload) {\n state.msGroupId = payload;\n },\n MS_PARENT_FOLDER_ID(state, payload) {\n state.msParentFolderId = payload;\n },\n MS_UPLOAD_FOLDER_ID(state, payload) {\n state.msUploadFolderId = payload;\n },\n FILE_BUFFER(state, payload) {\n state.fileBuffer = payload;\n },\n FILE_BUFFER_ERROR(state, payload) {\n state.fileBufferError = payload;\n },\n UPLOADED_FILE_DATA(state, payload) {\n state.uploadedFileData = payload;\n },\n UPLOAD_SUCCESSFUL(state, payload) {\n state.uploadSuccessful = payload;\n },\n UPLOAD_ERROR(state, payload) {\n state.uploadError = payload;\n },\n FILE_DATA_SAVED(state, payload) {\n state.fileDataSaved = payload;\n },\n IMAGE_DATA_SAVED(state, payload) {\n state.imageDataSaved = payload;\n },\n TASK_FILES(state, payload) {\n state.taskFiles = payload;\n },\n CASE_FILES(state, payload) {\n state.caseFiles = payload;\n },\n ALL_FILES(state, payload) {\n state.allFiles = payload;\n },\n DOWNLOAD_FILE_NAME(state, payload) {\n state.downloadFileName = payload;\n },\n DOWNLOAD_FILE_URL(state, payload) {\n state.downloadFileUrl = payload;\n },\n DELETED_FILE(state, payload) {\n state.deletedFile = payload;\n },\n GULPER_URL(state, payload) {\n state.gulperUrl = payload;\n },\n GULPER_FILE_HEADERS(state, payload) {\n state.gulperFileHeaders = payload;\n },\n GULPER_FILE_PREVIEW(state, payload) {\n state.gulperFilePreview = payload;\n },\n GULPED(state, payload) {\n state.gulped = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar assign = require('lodash/assign'),\n find = require('lodash/find');\n\nvar domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar selectEntryFactory = require('./SelectEntryFactory'),\n entryFieldDescription = require('./EntryFieldDescription');\n\n\n/**\n * The combo box is a special implementation of the select entry and adds the option 'custom' to the\n * select box. If 'custom' is selected, an additional text input field is shown which allows to define\n * a custom value.\n *\n * @param {Object} options\n * @param {string} options.id\n * @param {string} options.label\n * @param {Array} options.selectOptions list of name/value pairs\n * @param {string} options.modelProperty\n * @param {function} options.get\n * @param {function} options.set\n * @param {string} [options.customValue] custom select option value (default: 'custom')\n * @param {string} [options.customName] custom select option name visible in the select box (default: 'custom')\n *\n * @return {Object}\n */\nvar comboBox = function(translate, options) {\n\n var selectOptions = options.selectOptions,\n modelProperty = options.modelProperty,\n customValue = options.customValue || 'custom',\n customName = options.customName || 'custom ' + modelProperty,\n description = options.description;\n\n // check if a value is not a built in value\n var isCustomValue = function(value) {\n if (typeof value[modelProperty] === 'undefined') {\n return false;\n }\n\n var isCustom = !find(selectOptions, function(option) {\n return value[modelProperty] === option.value;\n });\n\n return isCustom;\n };\n\n var comboOptions = assign({}, options);\n\n // true if the selected value in the select box is customValue\n comboOptions.showCustomInput = function(element, node) {\n var selectBox = domQuery('[data-entry=\"'+ options.id +'\"] select', node.parentNode);\n\n if (selectBox) {\n return selectBox.value === customValue;\n }\n\n return false;\n };\n\n comboOptions.get = function(element, node) {\n var value = options.get(element, node);\n\n var modifiedValues = {};\n\n if (!isCustomValue(value)) {\n modifiedValues[modelProperty] = value[modelProperty] || '';\n\n return modifiedValues;\n }\n\n modifiedValues[modelProperty] = customValue;\n modifiedValues['custom-'+modelProperty] = value[modelProperty];\n\n return modifiedValues;\n };\n\n comboOptions.set = function(element, values, node) {\n var modifiedValues = {};\n\n // if the custom select option has been selected\n // take the value from the text input field\n if (values[modelProperty] === customValue) {\n modifiedValues[modelProperty] = values['custom-' + modelProperty] || '';\n }\n else if (options.emptyParameter && values[modelProperty] === '') {\n modifiedValues[modelProperty] = undefined;\n } else {\n modifiedValues[modelProperty] = values[modelProperty];\n }\n return options.set(element, modifiedValues, node);\n };\n\n comboOptions.selectOptions.push({ name: customName, value: customValue });\n\n var comboBoxEntry = assign({}, selectEntryFactory(translate, comboOptions, comboOptions));\n\n var fragment = document.createDocumentFragment();\n\n fragment.appendChild(comboBoxEntry.html);\n\n comboBoxEntry.html = fragment;\n\n comboBoxEntry.html.appendChild(domify('
' +\n '' +\n '
'));\n\n // add description below combo box entry field\n if (description) {\n comboBoxEntry.html.appendChild(entryFieldDescription(translate, description, { show: 'showCustomInput' }));\n }\n\n return comboBoxEntry;\n};\n\nmodule.exports = comboBox;\n","'use strict';\n\nvar entryFactory = require('../../../factory/EntryFactory'),\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\n\nmodule.exports = function(group, element, translate) {\n\n var bo = getBusinessObject(element);\n\n if (!bo) {\n return;\n }\n\n if (is(element, 'harlequin:Initiator') && !is(element.parent, 'bpmn:SubProcess')) {\n group.entries.push(entryFactory.textField(translate, {\n id: 'initiator',\n label: translate('Initiator'),\n modelProperty: 'initiator'\n }));\n }\n};\n","import axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n allDbTables: [],\n addedTable: '',\n updatedTable: '',\n deletedTable: '',\n tablePages: 0,\n tableRows: 0,\n tableHeaders: [],\n tableData: [],\n tableId: 0,\n tableName: '',\n addedRow: '',\n editedRow: '',\n deletedRow: '',\n sqlData: [],\n mappedSqlData: [],\n errorMessage: '',\n runScript: false,\n qCount: 0,\n exportedTableData: [],\n checkTableExists: false,\n importDataSaved: false,\n promoteRes: [],\n starterVarsSaved: false,\n starterVars: ''\n};\n\nconst getters = {\n allDbTables: (state) => state.allDbTables,\n tableHeaders: (state) => state.tableHeaders,\n tablePages: (state) => state.tablePages,\n tableRows: (state) => state.tableRows,\n tableData: (state) => state.tableData,\n tableId: (state) => state.tableId,\n tableName: (state) => state.tableName,\n sqlData: (state) => state.sqlData,\n mappedSqlData: (state) => state.mappedSqlData,\n errorMessage: (state) => state.errorMessage,\n qCount: (state) => state.qCount,\n exportedTableData: (state) => state.exportedTableData,\n checkTableExists: (state) => state.checkTableExists,\n promoteRes: (state) => state.promoteRes,\n starterVarsSaved: (state) => state.starterVarsSaved,\n starterVars: (state) => state.starterVars\n};\n\nconst actions = {\n getAllTables({commit}) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('ALL_TABLES', JSON.parse(result.data.variables.tables.value));\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n createTable({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'create', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'createdBy': { 'value': store.state.currentUser, 'type': 'String' },\n 'tableData': { 'value': payload.tableData, 'type': 'Json' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('ADDED_TABLE', payload.tableName);\n }).catch(error => {\n let msg = 'Possible error in table field names (e.g. invalid use of reserved word). ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n updateTable({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'update', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'updatedBy': { 'value': store.state.currentUser, 'type': 'String' },\n 'tableData': { 'value': payload.tableData, 'type': 'Json' },\n 'editData': { 'value': payload.editData, 'type': 'Json' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('UPDATED_TABLE', payload.tableName);\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n deleteTable({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'deleteTable', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'tableId': { 'value': payload.tableId, 'type': 'Integer' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_TABLE', payload.tableName);\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n viewTable({commit}, tableId) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getData', 'type': 'String' },\n 'tableId': { 'value': tableId, 'type': 'Integer' },\n 'pagination': { 'value': false, 'type': 'Boolean' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n\n let headers = JSON.parse(result.data.variables.headers.value);\n let tData = JSON.parse(result.data.variables.tableData.value);\n\n for(let i = 0; i < headers.length; i++) {\n if(headers[i].fieldType == 'Date' || headers[i].fieldType == 'DateTime') {\n for(let j = 0; j < tData.length; j++) {\n let keys = Object.keys(tData[j]);\n\n keys.forEach((key) => {\n if(headers[i].fieldName == key) {\n let dateObj = null;\n let converted = '';\n \n if(headers[i].fieldType == 'Date') {\n dateObj = new Date(tData[j][key]);\n converted = dateObj.getFullYear() + '-' + (\"0\" + (dateObj.getMonth() + 1)).slice(-2) + '-' + (\"0\" + dateObj.getDate()).slice(-2);\n }\n \n if(headers[i].fieldType == 'DateTime') {\n dateObj = tData[j][key];\n converted = dateObj.year + '-' + (\"0\" + dateObj.monthValue).slice(-2) + '-' + (\"0\" + dateObj.dayOfMonth).slice(-2) + ' ' + (\"0\" + dateObj.hour).slice(-2) + ':' + (\"0\" + dateObj.minute).slice(-2) + ':' + (\"0\" + dateObj.second).slice(-2);\n }\n tData[j][key] = converted;\n }\n });\n }\n }\n }\n\n commit('TABLE_HEADERS', headers);\n commit('TABLE_DATA', tData);\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n viewPaginatedTable({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getData', 'type': 'String' },\n 'tableId': { 'value': payload.tableId, 'type': 'Integer' },\n 'pagination': { 'value': true, 'type': 'Boolean' },\n 'offset': { 'value': payload.offset, 'type': 'Integer' },\n 'orderBy': { 'value': payload.orderBy, 'type': 'String' },\n 'pageSize': { 'value': payload.pageSize, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n\n let headers = JSON.parse(result.data.variables.headers.value);\n let tData = JSON.parse(result.data.variables.tableData.value);\n\n for(let i = 0; i < headers.length; i++) {\n if(headers[i].fieldType == 'Date' || headers[i].fieldType == 'DateTime') {\n for(let j = 0; j < tData.length; j++) {\n let keys = Object.keys(tData[j]);\n\n keys.forEach((key) => {\n if(headers[i].fieldName == key) {\n let dateObj = null;\n let converted = '';\n \n if(tData[j][key]) {\n if(headers[i].fieldType == 'Date') {\n dateObj = new Date(tData[j][key]);\n converted = dateObj.getFullYear() + '-' + (\"0\" + (dateObj.getMonth() + 1)).slice(-2) + '-' + (\"0\" + dateObj.getDate()).slice(-2);\n }\n \n if(headers[i].fieldType == 'DateTime') {\n dateObj = tData[j][key];\n converted = dateObj.year + '-' + (\"0\" + dateObj.monthValue).slice(-2) + '-' + (\"0\" + dateObj.dayOfMonth).slice(-2) + ' ' + (\"0\" + dateObj.hour).slice(-2) + ':' + (\"0\" + dateObj.minute).slice(-2) + ':' + (\"0\" + dateObj.second).slice(-2);\n }\n }\n tData[j][key] = converted;\n }\n });\n }\n }\n }\n\n commit('TABLE_PAGES', result.data.variables.totalPages.value);\n commit('TABLE_ROWS', result.data.variables.totalRows.value);\n commit('TABLE_HEADERS', headers);\n commit('TABLE_DATA', tData);\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n addTableRow({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'saveData', 'type': 'String' },\n 'action': { 'value': 'add', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'rowData': { 'value': payload.rowData, 'type': 'Json' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('ADDED_ROW', 'success');\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n editTableRow({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'saveData', 'type': 'String' },\n 'action': { 'value': 'edit', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'rowId': { 'value': payload.rowId, 'type': 'Integer' },\n 'rowData': { 'value': payload.rowData, 'type': 'Json' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('EDITED_ROW', 'success');\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n deleteTableRow({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'deleteData', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'rowId': { 'value': payload.rowId, 'type': 'Integer' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_ROW', 'success');\n }).catch(error => {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n });\n },\n // Select executions only\n executeSql({commit, state}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getSqlData', 'type': 'String' },\n 'connId': { 'value': payload.connId, 'type': 'Integer' },\n 'theSql': { 'value': payload.theSql, 'type': 'String' },\n 'mappedVar': { 'value': payload.mappedVar, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n if(result.data.variables.sqlData) {\n commit('SQL_DATA', JSON.parse(result.data.variables.sqlData.value));\n }else {\n let keys = Object.keys(result.data.variables);\n\n keys.forEach((key) => {\n if(key == payload.mappedVar) {\n commit('MAPPED_SQL_DATA', JSON.parse(result.data.variables[key].value));\n }\n }); \n }\n commit('Q_COUNT', state.qCount + 1);\n commit('RUN_SCRIPT', true);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n // All other execution types\n executeSqlOther({commit, state}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'setSqlData', 'type': 'String' },\n 'connId': { 'value': payload.connId, 'type': 'Integer' },\n 'theSql': { 'value': payload.theSql, 'type': 'String' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('SQL_DATA', '');\n commit('Q_COUNT', state.qCount + 1);\n commit('RUN_SCRIPT', true);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n // External select executions only\n executeExternalSql({commit, state}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getSqlData', 'type': 'String' },\n 'connId': { 'value': payload.connId, 'type': 'Integer' },\n 'theSql': { 'value': payload.theSql, 'type': 'String' },\n 'mappedVar': { 'value': payload.mappedVar, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n \n if(result.data.variables.sqlData) {\n commit('SQL_DATA', JSON.parse(result.data.variables.sqlData.value));\n }else {\n let keys = Object.keys(result.data.variables);\n\n keys.forEach((key) => {\n if(key == payload.mappedVar) {\n commit('MAPPED_SQL_DATA', JSON.parse(result.data.variables[key].value));\n }\n }); \n }\n commit('Q_COUNT', state.qCount + 1);\n commit('RUN_SCRIPT', true);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n // All other external execution types\n executeExternalSqlOther({commit, state}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'setSqlData', 'type': 'String' },\n 'connId': { 'value': payload.connId, 'type': 'Integer' },\n 'theSql': { 'value': payload.theSql, 'type': 'String' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => { \n commit('SQL_DATA', '');\n commit('Q_COUNT', state.qCount + 1);\n commit('RUN_SCRIPT', true);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n getStarterVars({commit}, processKey) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'getStarterVars', 'type': 'String' },\n 'processKey': { 'value': processKey, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('STARTER_VARS', result.data.variables.starterVars);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n setStarterVars({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'setStarterVars', 'type': 'String' },\n 'connId': { 'value': payload.connId, 'type': 'Integer' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'starterVars': { 'value': payload.starterVars, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('STARTER_VARS_SAVED', result.data.variables.varsSaved);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n exportTables({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'export', 'type': 'String' },\n 'exportTableData': { 'value': payload.exports, 'type': 'Json' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let exportData = [];\n for(let i = 0; i < payload.count; i++) {\n let name = 'fileName' + i;\n let buffer = 'fileBuffer' + i;\n let fileName = result.data.variables[name].value;\n let fileData = result.data.variables[buffer].value;\n let mimeType = 'application/octet-stream';\n\n const byteCharacters = atob(fileData);\n const byteNumbers = new Array(byteCharacters.length);\n for (let i = 0; i < byteCharacters.length; i++) {\n byteNumbers[i] = byteCharacters.charCodeAt(i);\n }\n const byteArray = new Uint8Array(byteNumbers);\n let blob = new Blob([byteArray], {type: mimeType});\n let url = window.URL.createObjectURL(blob);\n\n exportData.push({ fileName: fileName, fileData: url });\n }\n commit('EXPORTED_TABLE_DATA', exportData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n checkTable({commit}, tableName) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'checkTable', 'type': 'String' },\n 'tableName': { 'value': tableName, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let tableExists = result.data.variables.tableExists.value;\n commit('CHECK_TABLE_EXISTS', tableExists);\n }).catch(error => {\n commit('ERROR_MESSAGE', error);\n });\n },\n importTable({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'import', 'type': 'String' },\n 'tableName': { 'value': payload.tableName, 'type': 'String' },\n 'filename': { 'value': payload.name, 'type': 'String' },\n 'createdBy': { 'value': store.state.currentUser, 'type': 'String' },\n 'fileData': { 'value': payload.fileData, 'type': 'File', 'valueInfo': { 'filename': payload.name, 'mimetype': payload.mimeType, 'encoding': 'UTF-8' } }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n // Force a 1 second wait for local storage\n setTimeout(function(){\n commit('IMPORT_DATA_SAVED', true);\n }, 1000);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n promoteTables({commit}, payload) {\n let promoteRes = [];\n\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteTableData': { 'value': payload.promotes, 'type': 'Json' },\n 'action': { 'value': 'check', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let tableExists = JSON.parse(result.data.variables.tableExists.value);\n let promoteInfo = JSON.parse(payload.promotes);\n let promoteData = [];\n const PromiseArr = [];\n\n for(let i = 0; i < tableExists.length; i++) {\n const tableKeys = Object.keys(tableExists[i]);\n\n tableKeys.forEach((key) => {\n if(!tableExists[i][key]) {\n for(let j = 0; j < promoteInfo.length; j++) {\n if(promoteInfo[j].tableName == key) {\n promoteData.push({ tableName: promoteInfo[j].tableName, exportData: promoteInfo[j].exportData });\n }\n }\n }else {\n promoteRes.push({ tableName: key, promoted: false, result: 'Table ' + key + ' already exists and will not be altered.'});\n }\n });\n }\n\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'promoteTableData': { 'value': JSON.stringify(promoteData), 'type': 'Json' },\n 'action': { 'value': 'get', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n\n PromiseArr.push(\n axios.post(baseURL + '/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => new Promise(resolve => \n resolve(result.data.variables)))\n );\n \n Promise.all(PromiseArr).then(res => {\n\n res.forEach(function(item) {\n const PromiseArr2 = [];\n let createTables = [];\n let existingData = [];\n\n if(typeof item.promoteTable !== 'undefined') {\n createTables = JSON.parse(item.promoteTable.value);\n }\n\n if(typeof item.existingData !== 'undefined') {\n existingData = JSON.parse(item.existingData.value);\n }\n\n let createSql = '';\n let insertData = false;\n let insertSql = '';\n let tableData = '';\n let tName = '';\n \n for(let k = 0; k < createTables.length; k++) {\n createSql = createTables[k]['Create Table'];\n\n for(let l = 0; l < payload.tables.length; l++) {\n tName = payload.tables[l];\n\n if('HAR_' + tName == createTables[k]['Table']) {\n if(typeof item[tName] !== 'undefined') {\n insertData = true;\n insertSql = item[tName].value;\n }\n break;\n }\n }\n\n for(let m = 0; m < existingData.length; m++) {\n if(tName == existingData[m].TABLE_NAME) {\n tableData = existingData[m].TABLE_DATA;\n break;\n }\n }\n\n let data = {\n 'variables': {\n 'requestType': { 'value': 'promote', 'type': 'String' },\n 'action': { 'value': 'create', 'type': 'String' },\n 'createSql': { 'value': createSql, 'type': 'String' },\n 'insertData': { 'value': insertData, 'type': 'Boolean' },\n 'insertSql': { 'value': insertSql, 'type': 'String' },\n 'tableName': { 'value': tName, 'type': 'String' },\n 'createdBy': { 'value': store.state.currentUser, 'type': 'String' },\n 'tableData': { 'value': tableData, 'type': 'Json' }\n },\n 'withVariablesInReturn': true\n };\n\n PromiseArr2.push(\n axios.post(payload.engine + '/engine-rest/process-definition/key/databaseController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => new Promise(resolve => \n resolve(result)))\n );\n }\n\n Promise.all(PromiseArr2).then(res => {\n\n res.forEach(function(item) {\n if(item.status == 200) {\n let reqData = JSON.parse(item.request.response);\n let tableName = reqData.variables.tableName.value;\n let populated = reqData.variables.insertData.value;\n let update = '';\n\n if(populated) {\n update = 'Table ' + tableName + ' has been created and populated.';\n }else {\n update = 'Table ' + tableName + ' has been created.';\n }\n\n promoteRes.push({ tableName: tableName, promoted: true, result: update });\n }\n });\n commit('PROMOTE_RES', promoteRes);\n });\n\n if(createTables.length == 0) {\n commit('PROMOTE_RES', promoteRes);\n }\n\n });\n\n });\n\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Unable to check remote tables. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n};\n\nconst mutations = {\n ALL_TABLES(state, payload) {\n state.allDbTables = payload;\n },\n ADDED_TABLE(state, payload) {\n state.addedTable = payload;\n },\n UPDATED_TABLE(state, payload) {\n state.updatedTable = payload;\n },\n DELETED_TABLE(state, payload) {\n state.deletedTable = payload;\n },\n TABLE_PAGES(state, payload) {\n state.tablePages = payload;\n },\n TABLE_ROWS(state, payload) {\n state.tableRows = payload;\n },\n TABLE_HEADERS(state, payload) {\n state.tableHeaders = payload;\n },\n TABLE_DATA(state, payload) {\n state.tableData = payload;\n },\n UPDATE_TABLE_ID(state, payload) {\n state.tableId = payload;\n },\n UPDATE_TABLE_NAME(state, payload) {\n state.tableName = payload;\n },\n ADDED_ROW(state, payload) {\n state.addedRow = payload;\n },\n EDITED_ROW(state, payload) {\n state.editedRow = payload;\n },\n DELETED_ROW(state, payload) {\n state.deletedRow = payload;\n },\n SQL_DATA(state, payload) {\n state.sqlData = payload;\n },\n MAPPED_SQL_DATA(state, payload) {\n state.mappedSqlData = payload;\n },\n ERROR_MESSAGE(state, payload) {\n state.errorMessage = payload;\n },\n RUN_SCRIPT(state, payload) {\n state.runScript = payload;\n },\n Q_COUNT(state, payload) {\n state.qCount = payload;\n },\n EXPORTED_TABLE_DATA(state, payload) {\n state.exportedTableData = payload;\n },\n CHECK_TABLE_EXISTS(state, payload) {\n state.checkTableExists = payload;\n },\n IMPORT_DATA_SAVED(state, payload) {\n state.importDataSaved = payload;\n },\n PROMOTE_RES(state, payload) {\n state.promoteRes = payload;\n },\n STARTER_VARS_SAVED(state, payload) {\n state.starterVarsSaved = payload;\n },\n STARTER_VARS(state, payload) {\n state.starterVars = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar minDash = require('min-dash');\n\n/**\n * Get a inputOutput from the business object\n *\n * @param {ModdleElement} element\n *\n * @return {ModdleElement} the inputOutput object\n */\nfunction getInputOutput(element) {\n return (getElements(element, 'harlequin:InputOutput') || [])[0];\n}\n\n/**\n * Return all input parameters existing in the business object, and\n * an empty array if none exist.\n *\n * @param {ModdleElement} element\n *\n * @return {Array} a list of input parameter objects\n */\nfunction getInputParameters(element) {\n return getParameters(element, 'inputParameters');\n}\n\n/**\n * Return all output parameters existing in the business object, and\n * an empty array if none exist.\n *\n * @param {ModdleElement} element\n * @param {boolean} insideConnector\n *\n * @return {Array} a list of output parameter objects\n */\nfunction getOutputParameters(element) {\n return getParameters(element, 'outputParameters');\n}\n\n/**\n * Return all form fields existing in the business object, and\n * an empty array if none exist.\n *\n * @param {ModdleElement} element\n *\n * @return {Array} a list of form fields\n */\nfunction getFormFields(element) {\n var formData = getFormData(element);\n return (formData && formData.get('fields')) || [];\n}\n\n/**\n * Return form data existing in the business object\n *\n * @param {ModdleElement} element\n *\n * @return {ModdleElement}\n */\nfunction getFormData(element) {\n return (getElements(element, 'harlequin:FormData') || [])[0];\n}\n\n/**\n * Return out mappings existing in the business object\n *\n * @param {ModdleElement} element\n *\n * @return {Array}\n */\nfunction getOutMappings(element) {\n return getElements(element, 'harlequin:Out') || [];\n}\n\n\n// helpers //////////\n\nfunction getElements(element, type, property) {\n var elements = getExtensionElements(element, type) || [];\n\n return !property ? elements : (elements[0] || {})[property] || [];\n}\n\nfunction getParameters(element, property) {\n var inputOutput = getInputOutput(element);\n\n return (inputOutput && inputOutput.get(property)) || [];\n}\n\nfunction getExtensionElements(element, type) {\n var extensionElements = element.get('extensionElements');\n\n if (typeof extensionElements !== 'undefined') {\n var extensionValues = extensionElements.get('values');\n\n if (typeof extensionValues !== 'undefined') {\n var elements = minDash.filter(extensionValues, function(value) {\n return is(value, type);\n });\n\n if (elements.length) {\n return elements;\n }\n }\n }\n}\n\nfunction is(element, type) {\n return (\n element &&\n typeof element.$instanceOf === 'function' &&\n element.$instanceOf(type)\n );\n}\n\n/**\n * Get all parent elements for a given element.\n *\n * @param {ModdleElement|string} element\n *\n * @returns {Array}\n */\nfunction getParents(element) {\n var parents = [];\n var current = element;\n\n while (current.$parent) {\n parents.push(current.$parent);\n current = current.$parent;\n }\n\n return parents;\n}\n\n/**\n * Iterate over each element in a collection, calling the iterator function `fn`\n * with (element, index, recursionDepth).\n *\n * Recurse into all elements that are returned by `fn`.\n *\n * @param {Object|Array} elements\n * @param {Function} fn iterator function called with (element, index, recursionDepth)\n * @param {number} [depth] maximum recursion depth\n */\nfunction eachElement(elements, fn, depth) {\n depth = depth || 0;\n\n if (!minDash.isArray(elements)) {\n elements = [elements];\n }\n\n minDash.forEach(elements, function(s, i) {\n var filter = fn(s, i, depth);\n\n if (minDash.isArray(filter) && filter.length) {\n eachElement(filter, fn, depth + 1);\n }\n });\n}\n\n/**\n * Adds an element to a collection and returns true if the\n * element was added.\n *\n * @param {Array} elements\n * @param {Object} e\n * @param {boolean} unique\n */\nfunction add(elements, e, unique) {\n var canAdd = !unique || elements.indexOf(e) === -1;\n\n if (canAdd) {\n elements.push(e);\n }\n\n return canAdd;\n}\n\n/**\n * Collects self + flow elements up to a given depth from a list of elements.\n *\n * @param {ModdleElement|Array} elements the elements to select the flowElements from\n * @param {boolean} unique whether to return a unique result set (no duplicates)\n * @param {number} maxDepth the depth to search through or -1 for infinite\n *\n * @return {Array} found elements\n */\nfunction selfAndFlowElements(elements, unique, maxDepth) {\n var result = [],\n processedFlowElements = [];\n\n eachElement(elements, function(element, i, depth) {\n add(result, element, unique);\n\n var flowElements = element.flowElements;\n\n // max traversal depth not reached yet\n if (maxDepth === -1 || depth < maxDepth) {\n\n // flowElements exist && flowElements not yet processed\n if (flowElements && add(processedFlowElements, flowElements, unique)) {\n return flowElements;\n }\n }\n });\n\n return result;\n}\n\n/**\n * Return self + ALL flowElements for a number of elements\n *\n * @param {Array} elements to query\n * @param {boolean} allowDuplicates to allow duplicates in the result set\n *\n * @return {Array} the collected elements\n */\nfunction selfAndAllFlowElements(elements, allowDuplicates) {\n return selfAndFlowElements(elements, !allowDuplicates, -1);\n}\n\n/**\n * Return full moddle element for given element id\n *\n * @param {string} elementId\n * @param {ModdleElement} rootElement\n *\n * @returns {ModdleElement}\n */\nfunction getElement(elementId, rootElement) {\n var allElements = selfAndAllFlowElements(rootElement);\n\n return minDash.find(allElements, function(element) {\n return element.id === elementId;\n });\n}\n\nfunction addVariableToList(variablesList, newVariable) {\n var foundIdx = minDash.findIndex(variablesList, function(variable) {\n return (\n variable.name === newVariable.name && variable.scope === newVariable.scope\n );\n });\n\n if (foundIdx >= 0) {\n variablesList[foundIdx].origin = combineArrays(\n variablesList[foundIdx].origin,\n newVariable.origin\n );\n } else {\n variablesList.push(newVariable);\n }\n}\n\n/**\n * Creates new process variable definition object\n * Identifies correct (highest) scope, in which variable is available\n *\n * @param {ModdleElement} flowElement\n * @param {String} name\n * @param {ModdleElement} defaultScope\n *\n * @returns {ProcessVariable}\n */\nfunction createProcessVariable(flowElement, name, defaultScope) {\n var scope = getScope(flowElement, defaultScope, name);\n\n return {\n name: name,\n origin: [flowElement],\n scope: scope,\n };\n}\n\n\n// helpers ////////////////////\n\n/**\n * Set parent container if it defines it's own scope for the variable, so\n * when it defines an input mapping for it. Otherwise returns the default global scope\n */\nfunction getScope(element, globalScope, variableName) {\n var parents = getParents(element);\n\n var scopedParent = minDash.find(parents, function(parent) {\n return (\n is$1(parent, 'bpmn:SubProcess') && hasInputParameter(parent, variableName)\n );\n });\n\n return scopedParent ? scopedParent : globalScope;\n}\n\nfunction is$1(element, type) {\n return (\n element &&\n typeof element.$instanceOf === 'function' &&\n element.$instanceOf(type)\n );\n}\n\nfunction hasInputParameter(element, name) {\n return minDash.find(getInputParameters(element), function(input) {\n return input.name === name;\n });\n}\n\nfunction combineArrays(a, b) {\n return a.concat(b);\n}\n\n/**\n * Retrieves process variables defined in output parameters, e.g.\n *\n * \n * 200\n * ${myLocalVar + 20}\n * \n *\n * => Adds two variables \"variable1\" & \"variable2\" to the list.\n *\n */\nfunction extractOutputParameters(options) {\n var elements = options.elements,\n containerElement = options.containerElement,\n processVariables = options.processVariables;\n\n if (!minDash.isArray(elements)) {\n elements = [ elements ];\n }\n\n minDash.forEach(elements, function(element) {\n\n // variables are created by output parameters\n var outputParameters = getOutputParameters(element);\n\n // extract all variables with correct scope\n minDash.forEach(outputParameters, function(parameter) {\n var newVariable = createProcessVariable(\n element,\n parameter.name,\n containerElement\n );\n\n addVariableToList(processVariables, newVariable);\n });\n });\n\n return processVariables;\n}\n\n/**\n * Retrieves process variables defined in result variables, e.g.\n *\n * \n *\n * => Adds one variable \"variable1\"to the list.\n *\n */\nfunction extractResultVariables(options) {\n var elements = options.elements,\n containerElement = options.containerElement,\n processVariables = options.processVariables;\n\n if (!minDash.isArray(elements)) {\n elements = [ elements ];\n }\n\n minDash.forEach(elements, function(element) {\n\n var resultVariable = getResultVariable(element);\n\n if (resultVariable) {\n var newVariable = createProcessVariable(\n element,\n resultVariable,\n containerElement\n );\n\n addVariableToList(processVariables, newVariable);\n }\n });\n\n return processVariables;\n}\n\n\n// helpers ///////////////////////\n\nfunction getResultVariable(element) {\n return element.get('harlequin:resultVariable');\n}\n\n/**\n * Retrieves process variables defined in form fields, e.g.\n *\n * \n * \n * \n * \n *\n * => Adds two variables \"variable1\" & \"variable2\" to the list.\n *\n */\nfunction extractFormFields(options) {\n var elements = options.elements,\n containerElement = options.containerElement,\n processVariables = options.processVariables;\n\n if (!minDash.isArray(elements)) {\n elements = [ elements ];\n }\n\n minDash.forEach(elements, function(element) {\n\n var formFields = getFormFields(element);\n\n // extract all variables with correct scope\n minDash.forEach(formFields, function(field) {\n var newVariable = createProcessVariable(\n element,\n field.id,\n containerElement\n );\n\n addVariableToList(processVariables, newVariable);\n });\n });\n\n return processVariables;\n}\n\n/**\n * Retrieves process variables defined in output mappings and\n * ignores local variables, e.g.\n *\n * \n * \n * \n * \n *\n * => Adds one variable \"variable1\" to the list.\n *\n */\nfunction extractOutMappings(options) {\n var elements = options.elements,\n containerElement = options.containerElement,\n processVariables = options.processVariables;\n\n if (!minDash.isArray(elements)) {\n elements = [ elements ];\n }\n\n minDash.forEach(elements, function(element) {\n\n var outMappings = getOutMappings(element);\n\n // extract all variables with correct scope\n minDash.forEach(outMappings, function(mapping) {\n\n // do not use variables marked as \n if (mapping.local) {\n return;\n }\n\n var newVariable = createProcessVariable(\n element,\n mapping.target,\n containerElement\n );\n\n addVariableToList(processVariables, newVariable);\n });\n });\n\n return processVariables;\n}\n\n/**\n *\n * @param {ModdleElement} element\n * @param {string} [type] - optional\n *\n * @return {Array|undefined} collection of event definitions or none\n */\nfunction getEventDefinitions(element, type) {\n var eventDefinitions = element.eventDefinitions;\n\n if (!eventDefinitions || !type) {\n return eventDefinitions;\n }\n\n return minDash.filter(eventDefinitions, function(definition) {\n return is$2(definition, type);\n });\n}\n\n/**\n * Returns error event definitions for a given element.\n *\n * @param {ModdleElement} element\n *\n * @return {Array} collection of error event definitions\n */\nfunction getErrorEventDefinitions(element) {\n return getEventDefinitions(element, 'bpmn:ErrorEventDefinition');\n}\n\n/**\n * Returns escalation event definitions for a given element.\n *\n * @param {ModdleElement} element\n *\n * @return {Array} collection of escalation event definitions\n */\nfunction getEscalationEventDefinitions(element) {\n return getEventDefinitions(element, 'bpmn:EscalationEventDefinition');\n}\n\n\n// helper ////////////////\n\nfunction is$2(element, type) {\n return (\n element &&\n typeof element.$instanceOf === 'function' &&\n element.$instanceOf(type)\n );\n}\n\n/**\n * Retrieves process variables defined in event definitions, e.g.\n *\n * \n *\n * => Adds one variable \"variable1\" to the list.\n *\n * \n *\n * => Adds two variables \"variable2\" & \"variable3\" to the list.\n *\n */\nfunction extractEventDefinitionVariables(options) {\n var elements = options.elements,\n containerElement = options.containerElement,\n processVariables = options.processVariables;\n\n var addVariable = function(element, name) {\n var newVariable = createProcessVariable(\n element,\n name,\n containerElement\n );\n\n addVariableToList(processVariables, newVariable);\n };\n\n if (!minDash.isArray(elements)) {\n elements = [ elements ];\n }\n\n minDash.forEach(elements, function(element) {\n\n // (1) error event code + message variable\n var errorEventDefinitions = getErrorEventDefinitions(element);\n\n minDash.forEach(errorEventDefinitions, function(definition) {\n\n var errorCodeVariable = definition.get('errorCodeVariable'),\n errorMessageVariable = definition.get('errorMessageVariable');\n\n if (errorCodeVariable) {\n addVariable(element, errorCodeVariable);\n }\n\n if (errorMessageVariable) {\n addVariable(element, errorMessageVariable);\n }\n });\n\n // (2) escalation code variable\n var escalationEventDefinitions = getEscalationEventDefinitions(element);\n\n minDash.forEach(escalationEventDefinitions, function(definition) {\n\n var escalationCodeVariable = definition.get('escalationCodeVariable');\n\n if (escalationCodeVariable) {\n addVariable(element, escalationCodeVariable);\n }\n });\n\n });\n\n return processVariables;\n}\n\nvar extractors = [\n extractOutputParameters,\n extractResultVariables,\n extractFormFields,\n extractOutMappings,\n extractEventDefinitionVariables\n];\n\n/**\n * @typedef {Object} ProcessVariable\n * @property {string} name\n * @property {Array} origin\n * @property {ModdleElement} scope\n */\n\n// api /////////////////////////\n\n/**\n * Retrieves all process variables for a given container element.\n * @param {ModdleElement} containerElement\n *\n * @returns {Array}\n */\nfunction getProcessVariables(containerElement) {\n var processVariables = [];\n\n // (1) extract all flow elements inside the container\n var elements = selfAndAllFlowElements([containerElement], false);\n\n // (2) extract all variables from the extractors\n minDash.forEach(extractors, function(extractor) {\n extractor({\n elements: elements,\n containerElement: containerElement,\n processVariables: processVariables\n });\n });\n\n return processVariables;\n}\n\n/**\n * Retrieves all variables which are available in the given scope\n *\n * * Exclude variables which are only available in other scopes\n * * Exclude variables which are produced by the given element\n * * Include variables which are available in parent scopes\n *\n * @param {string} scope\n * @param {ModdleElement} rootElement element from where to extract all variables\n *\n * @returns {Array}\n */\nfunction getVariablesForScope(scope, rootElement) {\n\n var allVariables = getProcessVariables(rootElement);\n\n var scopeElement = getElement(scope, rootElement);\n\n // (1) get variables for given scope\n var scopeVariables = minDash.filter(allVariables, function(variable) {\n return variable.scope.id === scopeElement.id;\n });\n\n // (2) get variables for parent scopes\n var parents = getParents(scopeElement);\n\n var parentsScopeVariables = minDash.filter(allVariables, function(variable) {\n return minDash.find(parents, function(parent) {\n return parent.id === variable.scope.id;\n });\n });\n\n return combineArrays$1(scopeVariables, parentsScopeVariables);\n}\n\n// helpers ////////////////////\n\nfunction combineArrays$1(a, b) {\n return a.concat(b);\n}\n\nexports.getProcessVariables = getProcessVariables;\nexports.getVariablesForScope = getVariablesForScope;\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is,\n isEventSubProcess = require('../../../../../../process-builder/lib/base/BaseServices').isEventSubProcess;\n\nmodule.exports = function(group, element, bpmnFactory, conditionalEventDefinition, elementRegistry, translate) {\n\n var getValue = function(modelProperty) {\n return function(element) {\n var modelPropertyValue = conditionalEventDefinition.get('harlequin:' + modelProperty);\n var value = {};\n\n value[modelProperty] = modelPropertyValue;\n return value;\n };\n };\n\n var setValue = function(modelProperty) {\n return function(element, values) {\n var props = {};\n\n props['harlequin:' + modelProperty] = values[modelProperty] || undefined;\n\n return cmdHelper.updateBusinessObject(element, conditionalEventDefinition, props);\n };\n };\n\n group.entries.push(entryFactory.textField(translate, {\n id: 'variableName',\n label: translate('Variable Name'),\n modelProperty : 'variableName',\n\n get: getValue('variableName'),\n set: setValue('variableName')\n }));\n\n var isConditionalStartEvent =\n is(element, 'bpmn:StartEvent') && !isEventSubProcess(element.parent);\n\n if (!isConditionalStartEvent) {\n group.entries.push(entryFactory.textField(translate, {\n id: 'variableEvents',\n label: translate('Variable Events'),\n description: translate('Specify more than one variable change event as a comma separated list.'),\n modelProperty : 'variableEvents',\n\n get: getValue('variableEvents'),\n set: setValue('variableEvents')\n }));\n }\n};\n","'use strict';\n\nvar isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny,\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar processVariables = require('./implementation/ProcessVariables');\n\nmodule.exports = function(group, element, translate) {\n if (canHaveOverview(element)) {\n var processVariablesEntries = processVariables(element, translate);\n\n group.entries = group.entries.concat(processVariablesEntries);\n }\n};\n\n\n// helpers //////////\n\nfunction canHaveOverview(element) {\n var businessObject = getBusinessObject(element);\n\n return (\n isAny(element, ['bpmn:Process', 'bpmn:SubProcess']) ||\n (is(element, 'bpmn:Participant') && businessObject.get('processRef'))\n );\n}\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unassignedtasks.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar candidateStarter = require('./implementation/CandidateStarter');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n var businessObject = getBusinessObject(element);\n\n if (is(element, 'harlequin:Process') ||\n is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\n\n group.entries = group.entries.concat(candidateStarter(element, bpmnFactory, {\n getBusinessObject: function(element) {\n var bo = getBusinessObject(element);\n\n if (!is(bo, 'bpmn:Participant')) {\n return bo;\n }\n\n return bo.get('processRef');\n }\n }, translate));\n\n }\n};\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n entryFactory = require('../../../factory/EntryFactory'),\n cmdHelper = require('../../../helper/CmdHelper');\n\nvar forEach = require('lodash/forEach');\n\nfunction getLinkEventDefinition(element) {\n\n var bo = getBusinessObject(element);\n\n var linkEventDefinition = null;\n if (bo.eventDefinitions) {\n forEach(bo.eventDefinitions, function(eventDefinition) {\n if (is(eventDefinition, 'bpmn:LinkEventDefinition')) {\n linkEventDefinition = eventDefinition;\n }\n });\n }\n\n return linkEventDefinition;\n}\n\nmodule.exports = function(group, element, translate) {\n var linkEvents = [ 'bpmn:IntermediateThrowEvent', 'bpmn:IntermediateCatchEvent' ];\n\n forEach(linkEvents, function(event) {\n if (is(element, event)) {\n\n var linkEventDefinition = getLinkEventDefinition(element);\n\n if (linkEventDefinition) {\n var entry = entryFactory.textField(translate, {\n id: 'link-event',\n label: translate('Link Name'),\n modelProperty: 'link-name'\n });\n\n entry.get = function() {\n return { 'link-name': linkEventDefinition.get('name') };\n };\n\n entry.set = function(element, values) {\n var newProperties = {\n name: values['link-name']\n };\n return cmdHelper.updateBusinessObject(element, linkEventDefinition, newProperties);\n };\n\n group.entries.push(entry);\n }\n }\n });\n};\n\n","import Vue from 'vue';\nimport axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\nconst tenant = process.env.VUE_APP_TENANT;\nconst portalTenant = process.env.VUE_APP_PORTAL_TENANT;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n usersList: [],\n assignedUsers: [],\n availableUsers: [],\n allUsers: [],\n allUsersSpecial: [],\n deletedUser: '',\n remoteDeletedUser: '',\n addedUser: [],\n remoteAddedUser: [],\n remoteAddedPortal: [],\n updatedUser: [],\n updatedUserCreds: '',\n reassignList: [],\n teamMembers: [],\n userGroups: [],\n userErrorMsg: '',\n addedPortalUser: [],\n allPortalUsers: [],\n remoteUserTenants: [],\n userExists: false\n};\n\nconst getters = {\n usersList: (state) => state.usersList,\n assignedUsers: (state) => state.assignedUsers,\n availableUsers: (state) => state.availableUsers,\n allUsers: (state) => state.allUsers,\n allUsersSpecial: (state) => state.allUsersSpecial,\n reassignList: (state) => state.reassignList,\n teamMembers: (state) => state.teamMembers,\n userGroups: (state) => state.userGroups,\n userErrorMsg: (state) => state.userErrorMsg,\n allPortalUsers: (state) => state.allPortalUsers,\n remoteAddedUser: (state) => state.remoteAddedUser,\n remoteAddedPortal: (state) => state.remoteAddedPortal,\n remoteDeletedUser: (state) => state.remoteDeletedUser,\n remoteUserTenants: (state) => state.remoteUserTenants\n};\n\nconst actions = {\n getUserGroups({commit, state}) {\n state.userGroups = [];\n return axios.get(baseURL + '/group?memberOfTenant=' + tenant + '&member=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let userGroups = [];\n\n if(result.data.length > 0) {\n result.data.forEach(item => {\n userGroups.push(item.id);\n });\n }\n store.commit('setUserGroups', userGroups);\n commit('USER_GROUPS', userGroups); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getUsersInGroup({commit}, payload) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant + '&memberOfGroup=' + payload.groupId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.data.length > 0) {\n if(payload.callType == 'assignedTo') {\n commit('ASSIGNED_USERS', result.data); \n }else {\n commit('USERS_LIST', result.data); \n }\n }else {\n commit('USERS_LIST', []);\n commit('ASSIGNED_USERS', []); \n } \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getReassignUserList({commit}, payload) {\n let userList = [];\n const PromiseArr = [];\n for(let i = 0; i < payload.groupIds.length; i++) {\n PromiseArr.push(\n axios.get(baseURL + '/user?memberOfTenant=' + tenant + '&memberOfGroup=' + payload.groupIds[i], {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => new Promise(resolve =>\n resolve(result.data)))\n );\n }\n for(let j = 0; j < payload.userIds.length; j++) {\n PromiseArr.push(\n axios.get(baseURL + '/user?memberOfTenant=' + tenant + '&id=' + payload.userIds[j], {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => new Promise(resolve =>\n resolve(result.data)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item) {\n item.forEach(function(users) {\n let exists = false;\n userList.forEach(item => {\n if(item.val == users.id) {\n exists = true;\n }\n });\n if(!exists && users.id != payload.assignedTo) {\n userList.push({\"name\": users.firstName + ' ' + users.lastName, \"val\": users.id});\n }\n });\n });\n\n commit('REASSIGN_LIST', userList); \n });\n },\n userCheck({commit}, username) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n let userExists = false;\n \n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n if(username == result.data[i].id) {\n userExists = true;\n }\n }\n }\n \n commit('USER_EXISTS', userExists);\n return userExists;\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllUsers({commit}) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n\n const PromiseArr = [];\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n Vue.set(result.data[i], 'fullName', result.data[i].firstName + ' ' + result.data[i].lastName);\n PromiseArr.push(\n axios.get(baseURL + '/group?member=' + result.data[i].id + '&type=Role', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.data[0])))\n );\n }\n }\n \n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n Vue.set(result.data[index], 'role', item.id);\n Vue.set(result.data[index], 'roleName', item.name);\n });\n\n commit('ALL_USERS', result.data);\n });\n\n\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n // This function is used to marry users and their groups for JS queries within a task\n getAllUsersSpecial({commit}) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n\n const PromiseArr = [];\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n PromiseArr.push(\n axios.get(baseURL + '/group?memberOfTenant=' + tenant + '&member=' + result.data[i].id + '&type=Workflow', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.data)))\n );\n }\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n let userGroups = [];\n if(item.length > 0) {\n item.forEach(group => {\n userGroups.push({'groupId': group.id, 'groupName': group.name});\n });\n }\n Vue.set(result.data[index], 'groups', userGroups);\n });\n\n commit('ALL_USERS_SPECIAL', result.data);\n });\n\n\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteUserTenantCheck({commit}, payload) {\n let userTenantInfo = [];\n const PromiseArr = [];\n\n for(let i = 0; i < payload.tenants.length; i++) {\n PromiseArr.push(\n axios.get(payload.tenants[i].engineUrl + '/engine-rest/user?memberOfTenant=' + payload.tenants[i].tenantId + '&id=' + payload.userId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( resp => new Promise(resolve => \n resolve(resp.data)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n if(item.length > 0) {\n userTenantInfo.push({ 'id': payload.tenants[index].id, 'engineId': payload.tenants[index].engineId, 'tenantId': payload.tenants[index].tenantId, 'tenantName': payload.tenants[index].tenantName });\n }\n });\n commit('REMOTE_USER_TENANTS', userTenantInfo);\n });\n },\n remoteUserCheck({commit, state}, payload) {\n state.userExists = false;\n return axios.get(payload.enginePayload.engineUrl + '/engine-rest/user?id=' + payload.userPayload.profile.id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 200) {\n if(res.data.length > 0) {\n commit('USER_EXISTS', true);\n }else {\n commit('USER_EXISTS', false);\n }\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteUser({commit}, userId) {\n return axios.delete(baseURL + '/user/' + userId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('DELETED_USER', userId); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteDeleteUser({commit}, payload) {\n return axios.delete(payload.enginePayload.engineUrl + '/engine-rest/user/' + payload.userId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n commit('REMOTE_DELETED_USER', payload.userId);\n }else {\n commit('REMOTE_DELETED_USER', '');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n addUser({commit}, payload) {\n return axios.post(baseURL + '/user/create', payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n return axios.put(baseURL + '/tenant/' + tenant + '/user-members/' + payload.profile.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('ADDED_USER', payload); \n }).catch(error => {\n let msg = 'User creation failed. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n }\n }).catch(error => {\n let msg = 'User creation failed. Please make sure the password complies with the stated policy. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n },\n async remoteAddUser({commit, state}, payload) {\n let enginePayload = {};\n let engineName = '';\n let tenantName = '';\n\n for(let i = 0; i < payload.tenantSelected.length; i++) {\n let selectedId = payload.tenantSelected[i];\n\n for(let j = 0; j < payload.tenantInfo.length; j++) {\n if(selectedId == payload.tenantInfo[j].id) {\n let engineId = payload.tenantInfo[j].engineId;\n let tenantId = payload.tenantInfo[j].tenantId;\n tenantName = payload.tenantInfo[j].tenantName;\n\n for(let k = 0; k < payload.allHqConns.length; k++) {\n if(engineId == payload.allHqConns[k].ID) {\n let engineUrl = payload.allHqConns[k].URL;\n engineName = payload.allHqConns[k].ENGINE_NAME;\n\n enginePayload = { \n 'tenantId': tenantId, \n 'engineUrl': engineUrl\n };\n\n break;\n }\n }\n }\n }\n\n let remoteCheckPayload = {\n 'userPayload': payload.userPayload,\n 'enginePayload': enginePayload,\n 'engineName': engineName\n };\n\n let remoteRolePayload = {\n 'rolePayload': payload.rolePayload,\n 'enginePayload': enginePayload,\n 'engineName': engineName,\n 'tenantName': tenantName\n };\n \n await this.dispatch('remoteUserCheck', remoteCheckPayload).then( () => {\n if(!state.userExists) {\n return axios.post(enginePayload.engineUrl + '/engine-rest/user/create', payload.userPayload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n return axios.put(enginePayload.engineUrl + '/engine-rest/tenant/' + enginePayload.tenantId + '/user-members/' + payload.userPayload.profile.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res2 => {\n if(res2.status == 204) {\n this.dispatch('remoteAddUserToRole', remoteRolePayload);\n\n //If admin, give access to portal\n if(payload.rolePayload.id == 'adminRole') {\n this.dispatch('remoteAddUserToPortal', remoteCheckPayload);\n }\n\n let data = {\n 'msg': 'User ' + payload.userPayload.profile.id + ' successfully created on ' + engineName + '.',\n 'log': 'User ' + payload.userPayload.profile.id + ' created remotely on engine ' + engineName + ', tenant ' + tenantName + '.',\n 'success': true\n }\n commit('REMOTE_ADDED_USER', data); \n }else {\n let data = {\n 'msg': 'User ' + payload.userPayload.profile.id + ' could not be created on ' + engineName + '.',\n 'success': false\n }\n commit('REMOTE_ADDED_USER', data); \n }\n }).catch(error => {\n let msg = 'Remote user creation failed. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n }\n }).catch(error => {\n let msg = 'Remote user creation failed. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n }else {\n let msg = 'This user already exists on the target engine (' + engineName + ').';\n commit('USER_ERROR_MESSAGE', msg);\n }\n });\n }\n },\n remoteAddUserToPortal({commit}, payload) {\n return axios.put(payload.enginePayload.engineUrl + '/engine-rest/tenant/portal/user-members/' + payload.userPayload.profile.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n let data = {\n 'msg': 'User ' + payload.userPayload.profile.id + ' successfully added to Portal on ' + payload.engineName + '.',\n 'success': true\n }\n commit('REMOTE_ADDED_PORTAL', data); \n }else {\n let data = {\n 'msg': 'User ' + payload.userPayload.profile.id + ' could not be added to Portal on ' + payload.engineName + '.',\n 'success': false\n }\n commit('REMOTE_ADDED_PORTAL', data); \n }\n }).catch(error => {\n let msg = 'Failed to add remote user to tenant. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n },\n editUser({commit}, payload) {\n return axios.put(baseURL + '/user/' + payload.id + '/profile', payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n commit('UPDATED_USER', payload); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateUserCreds({commit}, payload) {\n return axios.put(baseURL + '/user/' + payload.userId + '/credentials', payload.credData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n commit('UPDATED_USER_CREDS', payload.userId); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteEditUser({commit}, payload) {\n return axios.put(payload.engineUrl + '/engine-rest/user/' + payload.userPayload.id + '/profile', payload.userPayload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n commit('UPDATED_USER', payload.userPayload); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n remoteUpdateUserCreds({commit}, payload) {\n return axios.put(payload.engineUrl + '/engine-rest/user/' + payload.userId + '/credentials', payload.credData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( res => {\n if(res.status == 204) {\n commit('UPDATED_USER_CREDS', payload.userId); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getUnassignedUsers({commit}) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let assignedUsers = this.getters.assignedUsers;\n let availableUsers = [];\n let found = false;\n\n for(let i = 0; i < result.data.length; i++) {\n for(let j = 0; j < assignedUsers.length; j++) {\n if(assignedUsers[j].id == result.data[i].id) {\n found = true;\n }\n }\n if(!found) {\n availableUsers.push(result.data[i]);\n }\n found = false;\n }\n\n commit('AVAILABLE_USERS', availableUsers); \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getTeamMembers({commit}) {\n return axios.get(baseURL + '/user?memberOfTenant=' + tenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('TEAM_MEMBERS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllPortalUsers({commit}) {\n return axios.get(baseURL + '/user?memberOfTenant=' + portalTenant, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n\n commit('ALL_PORTAL_USERS', result.data);\n\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n createPortalUser({commit}, payload) {\n return axios.post(baseURL + '/user/create', payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n return axios.put(baseURL + '/tenant/' + payload.targetPortal + '/user-members/' + payload.profile.id, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('ADDED_PORTAL_USER', payload); \n }).catch(error => {\n let msg = 'User creation failed. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n }\n }).catch(error => {\n let msg = 'User creation failed. Please make sure the password complies with the stated policy. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n },\n addUserToPortal({commit}, userId) {\n if(portalTenant != '') {\n return axios.put(baseURL + '/tenant/' + portalTenant + '/user-members/' + userId, {}, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('ADDED_USER', userId); \n }).catch(error => {\n let msg = 'Unable to add user to portal tenant. ' + error;\n commit('USER_ERROR_MESSAGE', msg);\n });\n }\n }\n};\n\nconst mutations = {\n USERS_LIST(state, payload) {\n state.usersList = payload;\n },\n ASSIGNED_USERS(state, payload) {\n state.assignedUsers = payload;\n },\n AVAILABLE_USERS(state, payload) {\n state.availableUsers = payload;\n },\n ALL_USERS(state, payload) {\n state.allUsers = payload;\n },\n ALL_USERS_SPECIAL(state, payload) {\n state.allUsersSpecial = payload;\n },\n DELETED_USER(state, payload) {\n state.deletedUser = payload;\n },\n REMOTE_DELETED_USER(state, payload) {\n state.remoteDeletedUser = payload;\n },\n ADDED_USER(state, payload) {\n state.addedUser = payload;\n },\n REMOTE_ADDED_USER(state, payload) {\n state.remoteAddedUser = payload;\n },\n REMOTE_ADDED_PORTAL(state, payload) {\n state.remoteAddedPortal = payload;\n },\n UPDATED_USER(state, payload) {\n state.updatedUser = payload;\n },\n UPDATED_USER_CREDS(state, payload) {\n state.updatedUserCreds = payload;\n },\n REASSIGN_LIST(state, payload) {\n state.reassignList = payload;\n },\n TEAM_MEMBERS(state, payload) {\n state.teamMembers = payload;\n },\n USER_GROUPS(state, payload) {\n state.userGroups = payload;\n },\n USER_ERROR_MESSAGE(state, payload) {\n state.userErrorMsg = payload;\n },\n ADDED_PORTAL_USER(state, payload) {\n state.addedPortalUser = payload;\n },\n ALL_PORTAL_USERS(state, payload) {\n state.allPortalUsers = payload;\n },\n REMOTE_USER_TENANTS(state, payload) {\n state.remoteUserTenants = payload;\n },\n USER_EXISTS(state, payload) {\n state.userExists = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n eventDefinitionHelper = require('../../../helper/EventDefinitionHelper'),\n error = require('./implementation/ErrorEventDefinition');\n\nvar forEach = require('lodash/forEach');\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var errorEvents = [\n 'bpmn:StartEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:EndEvent'\n ];\n\n forEach(errorEvents, function(event) {\n if (is(element, event)) {\n\n var errorEventDefinition = eventDefinitionHelper.getErrorEventDefinition(element);\n\n if (errorEventDefinition) {\n var isCatchingErrorEvent = is(element, 'bpmn:StartEvent') || is (element, 'bpmn:BoundaryEvent');\n\n var showErrorCodeVariable = isCatchingErrorEvent,\n showErrorMessageVariable = isCatchingErrorEvent;\n\n error(\n group,\n element,\n bpmnFactory,\n errorEventDefinition,\n showErrorCodeVariable,\n showErrorMessageVariable,\n translate);\n }\n }\n });\n};\n","'use strict';\n\nvar ElementHelper = {};\nmodule.exports = ElementHelper;\n\n/**\n * Creates a new element and set the parent to it\n *\n * @method ElementHelper#createElement\n *\n * @param {String} elementType of the new element\n * @param {Object} properties of the new element in key-value pairs\n * @param {moddle.object} parent of the new element\n * @param {BpmnFactory} factory which creates the new element\n *\n * @returns {djs.model.Base} element which is created\n */\nElementHelper.createElement = function(elementType, properties, parent, factory) {\n var element = factory.create(elementType, properties);\n element.$parent = parent;\n\n return element;\n};\n","'use strict';\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\n\nvar textField = function(translate, options, defaultParameters) {\n\n // Default action for the button next to the input-field\n var defaultButtonAction = function(element, inputNode) {\n var input = domQuery('input[name=\"' + options.modelProperty + '\"]', inputNode);\n input.value = '';\n\n return true;\n };\n\n // default method to determine if the button should be visible\n var defaultButtonShow = function(element, inputNode) {\n var input = domQuery('input[name=\"' + options.modelProperty + '\"]', inputNode);\n\n return input.value !== '';\n };\n\n\n var resource = defaultParameters,\n label = options.label || resource.id,\n dataValueLabel = options.dataValueLabel,\n buttonLabel = (options.buttonLabel || 'X'),\n actionName = (typeof options.buttonAction != 'undefined') ? options.buttonAction.name : 'clear',\n actionMethod = (typeof options.buttonAction != 'undefined') ? options.buttonAction.method : defaultButtonAction,\n showName = (typeof options.buttonShow != 'undefined') ? options.buttonShow.name : 'canClear',\n showMethod = (typeof options.buttonShow != 'undefined') ? options.buttonShow.method : defaultButtonShow,\n canBeDisabled = !!options.disabled && typeof options.disabled === 'function',\n canBeHidden = !!options.hidden && typeof options.hidden === 'function',\n description = options.description;\n\n resource.html =\n domify('' +\n '
' +\n '' +\n '' +\n '
');\n\n // add description below text input entry field\n if (description) {\n resource.html.appendChild(entryFieldDescription(translate, description, { show: canBeHidden && 'isHidden' }));\n }\n\n resource[actionName] = actionMethod;\n resource[showName] = showMethod;\n\n if (canBeDisabled) {\n resource.isDisabled = function() {\n return options.disabled.apply(resource, arguments);\n };\n }\n\n if (canBeHidden) {\n resource.isHidden = function() {\n return !options.hidden.apply(resource, arguments);\n };\n }\n\n resource.cssClasses = ['bpp-textfield'];\n\n return resource;\n};\n\nmodule.exports = textField;\n","'use strict';\n\nvar domify = require('min-dom').domify;\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\n\nvar textBox = function(translate, options, defaultParameters) {\n\n var resource = defaultParameters,\n label = options.label || resource.id,\n canBeShown = !!options.show && typeof options.show === 'function',\n description = options.description;\n\n resource.html =\n domify('' +\n '
' +\n '
' +\n '
');\n\n // add description below text box entry field\n if (description) {\n resource.html.appendChild(entryFieldDescription(translate, description, { show: canBeShown && 'isShown' }));\n }\n\n if (canBeShown) {\n resource.isShown = function() {\n return options.show.apply(resource, arguments);\n };\n }\n\n resource.cssClasses = ['bpp-textbox'];\n\n return resource;\n};\n\nmodule.exports = textBox;\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildprocess.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildForm.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../process-builder/lib/base/BaseServices').is;\n\nvar multiInstanceLoopCharacteristics = require('./implementation/MultiInstanceLoopCharacteristics');\n\nvar jobRetryTimeCycle = require('./implementation/JobRetryTimeCycle'),\n asyncContinuation = require('./implementation/AsyncContinuation');\n\n\nfunction getLoopCharacteristics(element) {\n var bo = getBusinessObject(element);\n return bo.loopCharacteristics;\n}\n\n\nfunction ensureMultiInstanceSupported(element) {\n var loopCharacteristics = getLoopCharacteristics(element);\n return !!loopCharacteristics && is(loopCharacteristics, 'harlequin:Collectable');\n}\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n if (!ensureMultiInstanceSupported(element)) {\n return;\n }\n\n // multi instance properties\n group.entries = group.entries.concat(multiInstanceLoopCharacteristics(element, bpmnFactory, translate));\n\n // async continuation ///////////////////////////////////////////////////////\n group.entries = group.entries.concat(asyncContinuation(element, bpmnFactory, {\n getBusinessObject: getLoopCharacteristics,\n idPrefix: 'multiInstance-',\n labelPrefix: translate('Multi Instance ')\n }, translate));\n\n\n // retry time cycle //////////////////////////////////////////////////////////\n group.entries = group.entries.concat(jobRetryTimeCycle(element, bpmnFactory, {\n getBusinessObject: getLoopCharacteristics,\n idPrefix: 'multiInstance-',\n labelPrefix: translate('Multi Instance ')\n }, translate));\n};\n","'use strict';\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is;\n\nvar assign = require('lodash/assign');\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject,\n hideResultVariable = options.hideResultVariable,\n id = options.id || 'resultVariable';\n\n\n var resultVariableEntry = entryFactory.textField(translate, {\n id: id,\n label: translate('Result Variable'),\n modelProperty: 'resultVariable',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return { resultVariable: bo.get('harlequin:resultVariable') };\n },\n\n set: function(element, values, node) {\n var bo = getBusinessObject(element);\n\n var resultVariable = values.resultVariable || undefined;\n\n var props = {\n 'harlequin:resultVariable': resultVariable\n };\n\n if (is(bo, 'harlequin:DmnCapable') && !resultVariable) {\n props = assign({ 'harlequin:mapDecisionResult': 'resultList' }, props);\n }\n\n return cmdHelper.updateBusinessObject(element, bo, props);\n },\n\n hidden: function(element, node) {\n if (typeof hideResultVariable === 'function') {\n return hideResultVariable.apply(resultVariableEntry, arguments);\n }\n }\n\n });\n\n return [ resultVariableEntry ];\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=style&index=0&lang=css&\"","var getVariablesForScope = require('../services/extractProcessVariables').getVariablesForScope;\n\nvar groupBy = require('min-dash').groupBy,\n flatten = require('min-dash').flatten,\n forEach = require('min-dash').forEach,\n keys = require('min-dash').keys,\n map = require('min-dash').map,\n sortBy = require('min-dash').sortBy;\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\n\nvar escapeHTML = require('../../../../Utils').escapeHTML;\n\nvar factory = require('../../../../factory/EntryFactory');\n\nvar entryFieldDescription = require('../../../../factory/EntryFieldDescription');\n\n\nmodule.exports = function(element, translate) {\n\n var entries = [];\n\n function createVariablesList(variables, scope) {\n var scopePrefix = scope ? scope + '-' : '';\n\n return flatten(map(variables, function(variable, idx) {\n\n var name = variable.name,\n origin = variable.origin,\n variableEntries = [];\n\n // title ///////////////////\n\n var collapsible = factory.collapsible({\n id: scopePrefix + 'variable- ' + idx + '-collapsible',\n title: escapeHTML(name),\n description: origin.toString(),\n open: false,\n get: function() {\n return {\n title: escapeHTML(name),\n description: origin.toString()\n };\n }\n });\n\n var isOpen = collapsible.isOpen;\n\n variableEntries.push(collapsible);\n\n // created in //////////////////\n\n var createdInHtml = '
' +\n '' + escapeHTML(translate('Created in')) + '' +\n createdInList(origin) +\n '
';\n\n variableEntries.push({\n id: scopePrefix + 'variable- ' + idx + '-created-in',\n html: createdInHtml,\n cssClasses: [\n 'bpp-process-variables',\n 'bpp-process-variables__created-in'\n ],\n show: function() {\n return isOpen();\n }\n });\n\n return variableEntries;\n }));\n }\n\n\n if (!canHaveProcessVariables(element)) {\n return entries;\n }\n\n var businessObject = getBusinessObject(element),\n rootElement = getRootElement(businessObject),\n scope = getScope(element);\n\n var variables = getVariablesForScope(scope, rootElement),\n sorted = sortByName(variables),\n withNames = populateElementNames(sorted),\n byScope = groupByScope(withNames);\n\n // (1) tab description entry\n var description = entryFieldDescription(translate, translate('Available process variables, identified in the diagram.'));\n\n entries.push({\n id: 'process-variables-description',\n html: description,\n cssClasses: [\n 'bpp-process-variables',\n 'bpp-process-variables__description'\n ]\n });\n\n // (2) empty list placeholder\n if (!withNames.length) {\n var placeholder = entryFieldDescription(translate, translate('No variables found.'));\n\n entries.push({\n id: 'process-variables-placeholder',\n html: placeholder\n });\n\n return entries;\n }\n\n if (keys(byScope).length > 1) {\n\n // (3a) multiple scopes variables lists\n\n // assumption: variables extractor fetches parent variables first\n forEach(reverse(keys(byScope)), function(scope) {\n var variables = byScope[scope];\n\n entries.push({\n id: scope + '-scope-title',\n html: '
' + escapeHTML(translate('Scope: ')) + scope + '
',\n cssClasses: [\n 'bpp-process-variables',\n 'bpp-process-variables__scope-title',\n 'bpp-collapsible-break'\n ]\n });\n\n entries = entries.concat(createVariablesList(variables, scope));\n });\n } else {\n\n // (3b) single scope variables list\n entries = entries.concat(createVariablesList(withNames));\n }\n\n\n return entries;\n};\n\n\n// helpers //////////\n\nfunction getRootElement(element) {\n var businessObject = getBusinessObject(element);\n\n if (is(businessObject, 'bpmn:Participant')) {\n return businessObject.processRef;\n }\n\n if (is(businessObject, 'bpmn:Process')) {\n return businessObject;\n }\n\n var parent = businessObject;\n\n while (parent.$parent && !is(parent, 'bpmn:Process')) {\n parent = parent.$parent;\n }\n\n return parent;\n}\n\nfunction getScope(element) {\n if (is(element, 'bpmn:Participant')) {\n return getBusinessObject(element).processRef.id;\n }\n\n return element.id;\n}\n\nfunction sortByName(variables) {\n return sortBy(variables, function(variable) {\n return variable.name;\n });\n}\n\nfunction populateElementNames(variables) {\n forEach(variables, function(variable) {\n var names = map(variable.origin, function(element) {\n return element.name || element.id;\n });\n\n variable.origin = names;\n variable.scope = variable.scope.name || variable.scope.id;\n });\n\n return variables;\n}\n\nfunction canHaveProcessVariables(element) {\n var businessObject = getBusinessObject(element);\n\n return (\n isAny(element, ['bpmn:Process', 'bpmn:SubProcess']) ||\n (is(element, 'bpmn:Participant') && businessObject.get('processRef'))\n );\n}\n\nfunction groupByScope(variables) {\n return groupBy(variables, 'scope');\n}\n\nfunction createdInList(origin) {\n var html = '';\n\n forEach(origin, function(o) {\n html += '

' + o + '

';\n });\n return html;\n}\n\nfunction reverse(array) {\n return map(array, function(a, i) {\n return array[array.length - 1 - i];\n });\n}","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var candidateStarterGroupsEntry = entryFactory.textField(translate, {\n id: 'candidateStarterGroups',\n label: translate('Candidate Starter Groups'),\n modelProperty: 'candidateStarterGroups',\n description: translate('Specify more than one group as a comma separated list.'),\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n var candidateStarterGroups = bo.get('harlequin:candidateStarterGroups');\n\n return {\n candidateStarterGroups: candidateStarterGroups ? candidateStarterGroups : ''\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:candidateStarterGroups': values.candidateStarterGroups || undefined\n });\n }\n\n });\n\n var candidateStarterUsersEntry = entryFactory.textField(translate, {\n id: 'candidateStarterUsers',\n label: translate('Candidate Starter Users'),\n modelProperty: 'candidateStarterUsers',\n description: translate('Specify more than one user as a comma separated list.'),\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n var candidateStarterUsers = bo.get('harlequin:candidateStarterUsers');\n\n return {\n candidateStarterUsers: candidateStarterUsers ? candidateStarterUsers : ''\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:candidateStarterUsers': values.candidateStarterUsers || undefined\n });\n }\n\n });\n\n return [\n candidateStarterGroupsEntry,\n candidateStarterUsersEntry\n ];\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('login')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"text-center\"},[_c('v-col',{attrs:{\"cols\":\"10\",\"md\":\"4\",\"sm\":\"8\",\"offset-md\":\"4\",\"offset-sm\":\"2\",\"offset\":\"1\"}},[_c('v-img',{staticClass:\"mx-auto\",attrs:{\"src\":_vm.upperLogo,\"alt\":\"Welcome to Harlequin\"}}),_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(\"Welcome To Harlequin | \"+_vm._s(_vm.serverName))]),_c('v-card-text',[_c('v-form',[_c('div',{staticClass:\"pt-5\"},[_vm._v(\"Please log in below\")]),((!_vm.samlEnabled && !_vm.msalEnabled) || _vm.hqadmin)?_c('v-text-field',{attrs:{\"prepend-icon\":'mdi-account',\"type\":'text',\"rules\":[_vm.rules.required],\"name\":\"username\",\"label\":\"Username\",\"autocomplete\":\"new-password\"},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}):_vm._e(),((!_vm.samlEnabled && !_vm.msalEnabled) || _vm.hqadmin)?_c('v-text-field',{attrs:{\"prepend-icon\":'mdi-lock',\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.required],\"name\":\"password\",\"label\":\"Password\",\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}):_vm._e(),(_vm.ssoLoginFailed)?_c('div',{staticClass:\"red--text\"},[_vm._v(_vm._s(_vm.ssoLoginError))]):_vm._e(),(_vm.loginFailed)?_c('div',{staticClass:\"red--text\"},[_vm._v(\"Username or password incorrect\")]):_vm._e(),(_vm.licenseExpired)?_c('div',{staticClass:\"red--text\"},[_vm._v(_vm._s(_vm.licenseError))]):_vm._e()],1)],1),_c('v-card-actions',[_c('v-col',{staticClass:\"text-center\"},[_c('v-btn',{attrs:{\"large\":\"\",\"dark\":\"\",\"color\":\"#f87723\",\"loading\":_vm.loggingIn},on:{\"click\":function($event){return _vm.login({value: _vm.value})}}},[_vm._v(\"Login\")])],1)],1),_c('v-col',{staticClass:\"text-center\"},[_c('div',[_c('a',{on:{\"click\":function($event){return _vm.requestReset()}}},[_vm._v(\"Forgotten Password\")])])])],1),_c('v-img',{staticClass:\"mx-auto rsl-logo\",attrs:{\"src\":_vm.lowerLogo,\"alt\":\"Welcome to Harlequin\"}})],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.resetDialog),callback:function ($$v) {_vm.resetDialog=$$v},expression:\"resetDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('GENERAL.PW_RESET_TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('GENERAL.PW_RESET_TEXT')))]),_c('v-form',{ref:\"resetRequestForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-text-field',{attrs:{\"prepend-icon\":'mdi-account',\"type\":'text',\"rules\":[_vm.rules.required],\"name\":\"username\",\"label\":\"Username\",\"autocomplete\":\"new-password\"},model:{value:(_vm.resetId),callback:function ($$v) {_vm.resetId=$$v},expression:\"resetId\"}})],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.resetDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmResetRequest()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./login.vue?vue&type=template&id=8d4affaa&\"\nimport script from \"./login.vue?vue&type=script&lang=js&\"\nexport * from \"./login.vue?vue&type=script&lang=js&\"\nimport style0 from \"./login.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCol,VDialog,VForm,VImg,VRow,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=3fc26012&\"\nimport script from \"./Login.vue?vue&type=script&lang=js&\"\nexport * from \"./Login.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('dashboard')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-container',{staticClass:\"width-override\"},[(_vm.showExpiryNotice)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"license-expiry\"},[_vm._v(_vm._s(_vm.$t('GENERAL.LICENSE_NOTICE'))+\" \"+_vm._s(_vm.expiryDate))])])],1):_vm._e(),_c('v-row',[(_vm.currentRole == 'adminRole')?_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',{staticClass:\"click-me\",on:{\"click\":function($event){return _vm.goTo('ProcessDesigner')}}},[_c('v-card-title',[_vm._v(\" Processes Deployed \")]),_c('v-card-subtitle',[_vm._v(\" Total number of deployed processes \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"#f87723\"}},[_vm._v(\"mdi-notebook-edit-outline\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.processCount))])],1)],1)],1):_vm._e(),(_vm.currentRole == 'adminRole' || _vm.currentRole == 'supervisorRole')?_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',{on:{\"click\":function($event){return _vm.goTo('AllTasks')}}},[_c('v-card-title',[_vm._v(\" Active Cases \")]),_c('v-card-subtitle',[_vm._v(\" Total number of cases in flight \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"#f87723\"}},[_vm._v(\"mdi-fast-forward\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.allTasksCount))])],1)],1)],1):_vm._e(),(_vm.currentRole == 'adminRole' || _vm.currentRole == 'supervisorRole' || _vm.currentRole == 'managerRole')?_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Total Follow Up \")]),_c('v-card-subtitle',[_vm._v(\" Total cases requiring follow up \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"warning\"}},[_vm._v(\"mdi-clock-time-four-outline\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.allTasksFollowUp))])],1)],1)],1):_vm._e(),(_vm.currentRole == 'adminRole' || _vm.currentRole == 'supervisorRole' || _vm.currentRole == 'managerRole')?_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Total Overdue \")]),_c('v-card-subtitle',[_vm._v(\" Total cases now overdue \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"error\"}},[_vm._v(\"mdi-clock-alert-outline\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.allTasksOverdue))])],1)],1)],1):_vm._e()],1),_c('v-row',[(_vm.currentRole == 'adminRole' || _vm.currentRole == 'supervisorRole' || _vm.currentRole == 'managerRole')?_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',{on:{\"click\":function($event){return _vm.goTo('TeamTasks')}}},[_c('v-card-title',[_vm._v(\" Team Tasks \")]),_c('v-card-subtitle',[_vm._v(\" Tasks assigned to your team \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"#f87723\"}},[_vm._v(\"mdi-account-group\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.teamTasksCount))])],1)],1)],1):_vm._e(),_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',{on:{\"click\":function($event){return _vm.goTo('MyTasks')}}},[_c('v-card-title',[_vm._v(\" My Tasks \")]),_c('v-card-subtitle',[_vm._v(\" Tasks assigned to you \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"#f87723\"}},[_vm._v(\"mdi-inbox-multiple\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.myTasksCount))])],1)],1)],1),_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Follow Up \")]),_c('v-card-subtitle',[_vm._v(\" Cases you need to follow up \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"warning\"}},[_vm._v(\"mdi-clock-time-four-outline\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.myTasksFollowUp))])],1)],1)],1),_c('v-col',{attrs:{\"sm\":\"6\",\"md\":\"3\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Overdue \")]),_c('v-card-subtitle',[_vm._v(\" Your cases now overdue \")]),_c('v-card-text',[_c('v-icon',{attrs:{\"x-large\":\"\",\"color\":\"error\"}},[_vm._v(\"mdi-clock-alert-outline\")]),_c('span',{staticClass:\"dash-counters\"},[_vm._v(_vm._s(_vm.myTasksOverdue))])],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard.vue?vue&type=template&id=4697a6b6&\"\nimport script from \"./dashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./dashboard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./dashboard.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardSubtitle,VCardText,VCardTitle,VCol,VContainer,VIcon,VRow})\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=9cdec7ce&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('startnewcase')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.START_CASE.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.availableProcesses,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.startProcess(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.START_CASE.BTNS.START'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.startDialog),callback:function ($$v) {_vm.startDialog=$$v},expression:\"startDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.startTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.startText))]),_c('v-text-field',{attrs:{\"label\":_vm.$t('CASES.FIELDS.CASE_LABEL')},model:{value:(_vm.caseLabel),callback:function ($$v) {_vm.caseLabel=$$v},expression:\"caseLabel\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.startDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmStart({processKey: _vm.processKey, version: _vm.version})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./startnewcase.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./startnewcase.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./startnewcase.vue?vue&type=template&id=c72c62fe&\"\nimport script from \"./startnewcase.vue?vue&type=script&lang=js&\"\nexport * from \"./startnewcase.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartNewCase.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartNewCase.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./StartNewCase.vue?vue&type=template&id=024b2f37&\"\nimport script from \"./StartNewCase.vue?vue&type=script&lang=js&\"\nexport * from \"./StartNewCase.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('runningcases')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.RUNNING_CASES.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.runningProcesses,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteInstance(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteText))]),_c('div',[_vm._v(_vm._s(_vm.deleteText2))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDelete({instanceId: _vm.instanceId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./runningcases.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./runningcases.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./runningcases.vue?vue&type=template&id=0c478a14&\"\nimport script from \"./runningcases.vue?vue&type=script&lang=js&\"\nexport * from \"./runningcases.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RunningCases.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RunningCases.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RunningCases.vue?vue&type=template&id=dc860762&\"\nimport script from \"./RunningCases.vue?vue&type=script&lang=js&\"\nexport * from \"./RunningCases.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('mytasks')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.TASKS.MY_TASKS_SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.myTasks,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"item-class\":_vm.setRowStyle,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.viewProcessMap(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.MAP'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openForm(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OPEN'))+\" \")]),(_vm.currentRole == 'adminRole' || _vm.currentRole =='supervisorRole' || _vm.currentRole == 'managerRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.reassignTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.REASSIGN'))+\" \")]):_vm._e()]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.reassignDialog),callback:function ($$v) {_vm.reassignDialog=$$v},expression:\"reassignDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.reassignTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.reassignText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.userText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.REASSIGN_TEXT_3')))]),_c('v-autocomplete',{attrs:{\"items\":_vm.reassignList,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.reassignDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmReassign({value: _vm.value})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false},model:{value:(_vm.processMapDialog),callback:function ($$v) {_vm.processMapDialog=$$v},expression:\"processMapDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.processMapTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcessMap()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.taskInfoDialog),callback:function ($$v) {_vm.taskInfoDialog=$$v},expression:\"taskInfoDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.taskInfoTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeTaskInfo()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.taskInfoDetails)}})])],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { is } from '../../base/BaseServices';\n\nfunction getLabelAttr(semantic) {\n if (isFlowElement(semantic) || isParticipant(semantic) || isLane(semantic) ||\n isSequenceFlow(semantic) || isMessageFlow(semantic) || isDataInput(semantic) ||\n isDataOutput(semantic)) {\n return 'name';\n }\n\n if (isTextAnnotation(semantic)) {\n return 'text';\n }\n\n if (isGroup(semantic)) {\n return 'categoryValueRef';\n }\n}\n\nfunction isFlowElement(semantic) {\n return is(semantic, 'bpmn:FlowElement');\n}\n\nfunction isParticipant(semantic) {\n return is(semantic, 'bpmn:Participant');\n}\n\nfunction isLane(semantic) {\n return is(semantic, 'bpmn:Lane');\n}\n\nfunction isSequenceFlow(semantic) {\n return is(semantic, 'bpmn:SequenceFlow');\n}\n\nfunction isMessageFlow(semantic) {\n return is(semantic, 'bpmn:MessageFlow');\n}\n\nfunction isDataInput(semantic) {\n return is(semantic, 'bpmn:DataInput');\n}\n\nfunction isDataOutput(semantic) {\n return is(semantic, 'bpmn:DataOutput');\n}\n\nfunction isTextAnnotation(semantic) {\n return is(semantic, 'bpmn:TextAnnotation');\n}\n\nfunction isGroup(semantic) {\n return is(semantic, 'bpmn:Group');\n}\n\n\nfunction getCategoryValue(semantic) {\n var categoryValueRef = semantic.categoryValueRef;\n\n return categoryValueRef ? categoryValueRef.value || '' : '';\n}\n\n\nexport function getLabel(element) {\n var semantic = element.businessObject,\n attr = getLabelAttr(semantic);\n\n if (attr === 'categoryValueRef') {\n return getCategoryValue(semantic);\n }\n\n return attr ? semantic[attr] || '' : '';\n}\n\n\nexport function setLabel(element, text, isExternal) {\n var semantic = element.businessObject,\n attr = getLabelAttr(semantic);\n\n if (attr === 'categoryValueRef') {\n semantic['categoryValueRef'].value = text;\n } else if (attr) {\n semantic[attr] = text;\n }\n\n return element;\n}","import {\n every,\n some\n} from 'min-dash';\n\nimport {\n componentsToPath\n} from 'diagram-js/lib/util/RenderUtil';\n\n\n// element utils //////////////////////\n\n/**\n * Checks if eventDefinition of the given element matches with semantic type.\n *\n * @return {boolean} true if element is of the given semantic type\n */\nexport function isTypedEvent(event, eventDefinitionType, filter) {\n\n function matches(definition, filter) {\n return every(filter, function(val, key) {\n // Use loose equality (==) for comparison\n return definition[key] == val;\n });\n }\n \n\n return some(event.eventDefinitions, function(definition) {\n return definition.$type === eventDefinitionType && matches(event, filter);\n });\n}\n\nexport function isThrowEvent(event) {\n const throwEventTypes = ['bpmn:IntermediateThrowEvent', 'bpmn:EndEvent'];\n return throwEventTypes.includes(event.$type);\n}\n\n\nexport function isCollection(element) {\n const { isCollection, dataObjectRef } = element;\n return isCollection || (dataObjectRef && dataObjectRef.isCollection);\n}\n\n\nexport function getDi(element) {\n return element.businessObject.di;\n}\n\nexport function getSemantic(element) {\n return element.businessObject;\n}\n\n\n// color access //////////////////////\n\nexport function getFillColor(element, defaultColor) {\n const bioCColor = getDi(element).get('bioc:fill');\n return bioCColor || defaultColor || 'white';\n}\n\n\nexport function getStrokeColor(element, defaultColor) {\n const bioCStroke = getDi(element).get('bioc:stroke');\n return bioCStroke || defaultColor || 'black';\n}\n\n\n// cropping path customizations //////////////////////\n\nexport function getCirclePath(shape) {\n const cx = shape.x + shape.width / 2;\n const cy = shape.y + shape.height / 2;\n const radius = shape.width / 2;\n\n const circlePath = [\n ['M', cx, cy],\n ['m', 0, -radius],\n ['a', radius, radius, 0, 1, 1, 0, 2 * radius],\n ['a', radius, radius, 0, 1, 1, 0, -2 * radius],\n ['z']\n ];\n\n return componentsToPath(circlePath);\n}\n\n\nexport function getRoundRectPath(shape, borderRadius) {\n const x = shape.x;\n const y = shape.y;\n const width = shape.width;\n const height = shape.height;\n\n const roundRectPath = [\n ['M', x + borderRadius, y],\n ['l', width - borderRadius * 2, 0],\n ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, borderRadius],\n ['l', 0, height - borderRadius * 2],\n ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, borderRadius],\n ['l', borderRadius * 2 - width, 0],\n ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, -borderRadius],\n ['l', 0, borderRadius * 2 - height],\n ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, -borderRadius],\n ['z']\n ];\n\n return componentsToPath(roundRectPath);\n}\n\n\nexport function getDiamondPath(shape) {\n const width = shape.width;\n const height = shape.height;\n const x = shape.x;\n const y = shape.y;\n const halfWidth = width / 2;\n const halfHeight = height / 2;\n\n const diamondPath = [\n ['M', x + halfWidth, y],\n ['l', halfWidth, halfHeight],\n ['l', -halfWidth, halfHeight],\n ['l', -halfWidth, -halfHeight],\n ['z']\n ];\n\n return componentsToPath(diamondPath);\n}\n\n\nexport function getRectPath(shape) {\n const x = shape.x;\n const y = shape.y;\n const width = shape.width;\n const height = shape.height;\n\n const rectPath = [\n ['M', x, y],\n ['l', width, 0],\n ['l', 0, height],\n ['l', -width, 0],\n ['z']\n ];\n\n return componentsToPath(rectPath);\n}","import inherits from 'inherits';\n\nimport {\n isObject,\n assign,\n forEach\n} from 'min-dash';\n\nimport BaseRenderer from 'diagram-js/lib/draw/BaseRenderer';\n\nimport {\n is,\n isExpanded,\n isEventSubProcess\n} from '../base/BaseServices';\n\nimport {\n getLabel\n} from '../components/labelElements/LabelService';\n\nimport {\n createLine\n} from 'diagram-js/lib/util/RenderUtil';\n\nimport {\n isTypedEvent,\n isThrowEvent,\n isCollection,\n getDi,\n getSemantic,\n getCirclePath,\n getRoundRectPath,\n getDiamondPath,\n getRectPath,\n getFillColor,\n getStrokeColor\n} from './ComposerService';\n\nimport {\n query as domQuery\n} from 'min-dom';\n\nimport {\n append as svgAppend,\n attr as svgAttr,\n create as svgCreate,\n classes as svgClasses\n} from 'tiny-svg';\n\nimport {\n rotate,\n transform,\n translate\n} from 'diagram-js/lib/util/SvgTransformUtil';\n\nimport Ids from 'ids';\n\nvar COMPOSER_IDS = new Ids();\n\nvar TASK_BORDER_RADIUS = 10;\nvar INNER_OUTER_DIST = 3;\n\nvar DEFAULT_FILL_OPACITY = .95,\n HIGH_FILL_OPACITY = .35;\n\nvar ELEMENT_LABEL_DISTANCE = 10;\n\nexport default function Composer(\n config, eventBus, styles, pathMap,\n canvas, textRenderer, priority) {\n\n BaseRenderer.call(this, eventBus, priority);\n\n var defaultFillColor = config && config.defaultFillColor,\n defaultStrokeColor = config && config.defaultStrokeColor;\n\n var rendererId = COMPOSER_IDS.next();\n\n var markers = {};\n\n var computeStyle = styles.computeStyle;\n\n function addMarker(id, options) {\n var attrs = assign({\n fill: 'black',\n strokeWidth: 1,\n strokeLinecap: 'round',\n strokeDasharray: 'none'\n }, options.attrs);\n\n var ref = options.ref || { x: 0, y: 0 };\n\n var scale = options.scale || 1;\n\n // fix for safari / chrome / firefox bug not correctly\n // resetting stroke dash array\n if (attrs.strokeDasharray === 'none') {\n attrs.strokeDasharray = [10000, 1];\n }\n\n var marker = svgCreate('marker');\n\n svgAttr(options.element, attrs);\n\n svgAppend(marker, options.element);\n\n svgAttr(marker, {\n id: id,\n viewBox: '0 0 20 20',\n refX: ref.x,\n refY: ref.y,\n markerWidth: 20 * scale,\n markerHeight: 20 * scale,\n orient: 'auto'\n });\n\n var defs = domQuery('defs', canvas._svg);\n\n if (!defs) {\n defs = svgCreate('defs');\n\n svgAppend(canvas._svg, defs);\n }\n\n svgAppend(defs, marker);\n\n markers[id] = marker;\n }\n\n function colorEscape(str) {\n\n // only allow characters and numbers\n return str.replace(/[^0-9a-zA-z]+/g, '_');\n }\n\n function marker(type, fill, stroke) {\n var id = type + '-' + colorEscape(fill) + '-' + colorEscape(stroke) + '-' + rendererId;\n\n if (!markers[id]) {\n createMarker(id, type, fill, stroke);\n }\n\n return 'url(#' + id + ')';\n }\n\n function createMarker(id, type, fill, stroke) {\n\n if (type === 'sequenceflow-end') {\n var sequenceflowEnd = svgCreate('path');\n svgAttr(sequenceflowEnd, { d: 'M 1 5 L 11 10 L 1 15 Z' });\n\n addMarker(id, {\n element: sequenceflowEnd,\n ref: { x: 11, y: 10 },\n scale: 0.5,\n attrs: {\n fill: stroke,\n stroke: stroke\n }\n });\n }\n\n if (type === 'messageflow-start') {\n var messageflowStart = svgCreate('circle');\n svgAttr(messageflowStart, { cx: 6, cy: 6, r: 3.5 });\n\n addMarker(id, {\n element: messageflowStart,\n attrs: {\n fill: fill,\n stroke: stroke\n },\n ref: { x: 6, y: 6 }\n });\n }\n\n if (type === 'messageflow-end') {\n var messageflowEnd = svgCreate('path');\n svgAttr(messageflowEnd, { d: 'm 1 5 l 0 -3 l 7 3 l -7 3 z' });\n\n addMarker(id, {\n element: messageflowEnd,\n attrs: {\n fill: fill,\n stroke: stroke,\n strokeLinecap: 'butt'\n },\n ref: { x: 8.5, y: 5 }\n });\n }\n\n if (type === 'association-start') {\n var associationStart = svgCreate('path');\n svgAttr(associationStart, { d: 'M 11 5 L 1 10 L 11 15' });\n\n addMarker(id, {\n element: associationStart,\n attrs: {\n fill: 'none',\n stroke: stroke,\n strokeWidth: 1.5\n },\n ref: { x: 1, y: 10 },\n scale: 0.5\n });\n }\n\n if (type === 'association-end') {\n var associationEnd = svgCreate('path');\n svgAttr(associationEnd, { d: 'M 1 5 L 11 10 L 1 15' });\n\n addMarker(id, {\n element: associationEnd,\n attrs: {\n fill: 'none',\n stroke: stroke,\n strokeWidth: 1.5\n },\n ref: { x: 12, y: 10 },\n scale: 0.5\n });\n }\n\n if (type === 'conditional-flow-marker') {\n var conditionalflowMarker = svgCreate('path');\n svgAttr(conditionalflowMarker, { d: 'M 0 10 L 8 6 L 16 10 L 8 14 Z' });\n\n addMarker(id, {\n element: conditionalflowMarker,\n attrs: {\n fill: fill,\n stroke: stroke\n },\n ref: { x: -1, y: 10 },\n scale: 0.5\n });\n }\n\n if (type === 'conditional-default-flow-marker') {\n var conditionaldefaultflowMarker = svgCreate('path');\n svgAttr(conditionaldefaultflowMarker, { d: 'M 6 4 L 10 16' });\n\n addMarker(id, {\n element: conditionaldefaultflowMarker,\n attrs: {\n stroke: stroke\n },\n ref: { x: 0, y: 10 },\n scale: 0.5\n });\n }\n }\n\n function drawCircle(parentGfx, width, height, offset, attrs) {\n\n if (isObject(offset)) {\n attrs = offset;\n offset = 0;\n }\n\n offset = offset || 0;\n\n attrs = computeStyle(attrs, {\n stroke: 'black',\n strokeWidth: 2,\n fill: 'white'\n });\n\n if (attrs.fill === 'none') {\n delete attrs.fillOpacity;\n }\n\n var cx = width / 2,\n cy = height / 2;\n\n var circle = svgCreate('circle');\n svgAttr(circle, {\n cx: cx,\n cy: cy,\n r: Math.round((width + height) / 4 - offset)\n });\n svgAttr(circle, attrs);\n\n svgAppend(parentGfx, circle);\n\n return circle;\n }\n\n function drawRect(parentGfx, width, height, r, offset, attrs) {\n\n if (isObject(offset)) {\n attrs = offset;\n offset = 0;\n }\n\n offset = offset || 0;\n\n attrs = computeStyle(attrs, {\n stroke: 'black',\n strokeWidth: 2,\n fill: 'white'\n });\n\n var rect = svgCreate('rect');\n svgAttr(rect, {\n x: offset,\n y: offset,\n width: width - offset * 2,\n height: height - offset * 2,\n rx: r,\n ry: r\n });\n svgAttr(rect, attrs);\n\n svgAppend(parentGfx, rect);\n\n return rect;\n }\n\n function drawDiamond(parentGfx, width, height, attrs) {\n\n var x_2 = width / 2;\n var y_2 = height / 2;\n\n var points = [{ x: x_2, y: 0 }, { x: width, y: y_2 }, { x: x_2, y: height }, { x: 0, y: y_2 }];\n\n var pointsString = points.map(function(point) {\n return point.x + ',' + point.y;\n }).join(' ');\n\n attrs = computeStyle(attrs, {\n stroke: 'black',\n strokeWidth: 2,\n fill: 'white'\n });\n\n var polygon = svgCreate('polygon');\n svgAttr(polygon, {\n points: pointsString\n });\n svgAttr(polygon, attrs);\n\n svgAppend(parentGfx, polygon);\n\n return polygon;\n }\n\n function drawLine(parentGfx, waypoints, attrs) {\n attrs = computeStyle(attrs, [ 'no-fill' ], {\n stroke: 'black',\n strokeWidth: 2,\n fill: 'none'\n });\n\n var line = createLine(waypoints, attrs);\n\n svgAppend(parentGfx, line);\n\n return line;\n }\n\n function drawPath(parentGfx, d, attrs) {\n\n attrs = computeStyle(attrs, [ 'no-fill' ], {\n strokeWidth: 2,\n stroke: 'black'\n });\n\n var path = svgCreate('path');\n svgAttr(path, { d: d });\n svgAttr(path, attrs);\n\n svgAppend(parentGfx, path);\n\n return path;\n }\n\n function drawMarker(type, parentGfx, path, attrs) {\n return drawPath(parentGfx, path, assign({ 'data-marker': type }, attrs));\n }\n\n function as(type) {\n return function(parentGfx, element) {\n return handlers[type](parentGfx, element);\n };\n }\n\n function renderer(type) {\n return handlers[type];\n }\n\n function renderEventContent(element, parentGfx) {\n\n var event = getSemantic(element);\n var isThrowing = isThrowEvent(event);\n\n if (event.eventDefinitions && event.eventDefinitions.length>1) {\n if (event.parallelMultiple) {\n return renderer('bpmn:ParallelMultipleEventDefinition')(parentGfx, element, isThrowing);\n }\n else {\n return renderer('bpmn:MultipleEventDefinition')(parentGfx, element, isThrowing);\n }\n }\n\n if (isTypedEvent(event, 'bpmn:MessageEventDefinition')) {\n return renderer('bpmn:MessageEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:TimerEventDefinition')) {\n return renderer('bpmn:TimerEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:ConditionalEventDefinition')) {\n return renderer('bpmn:ConditionalEventDefinition')(parentGfx, element);\n }\n\n if (isTypedEvent(event, 'bpmn:SignalEventDefinition')) {\n return renderer('bpmn:SignalEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:EscalationEventDefinition')) {\n return renderer('bpmn:EscalationEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:LinkEventDefinition')) {\n return renderer('bpmn:LinkEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:ErrorEventDefinition')) {\n return renderer('bpmn:ErrorEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:CancelEventDefinition')) {\n return renderer('bpmn:CancelEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:CompensateEventDefinition')) {\n return renderer('bpmn:CompensateEventDefinition')(parentGfx, element, isThrowing);\n }\n\n if (isTypedEvent(event, 'bpmn:TerminateEventDefinition')) {\n return renderer('bpmn:TerminateEventDefinition')(parentGfx, element, isThrowing);\n }\n\n return null;\n }\n\n function renderLabel(parentGfx, label, options) {\n\n options = assign({\n size: {\n width: 100\n }\n }, options);\n\n var text = textRenderer.createText(label || '', options);\n\n svgClasses(text).add('djs-label');\n\n svgAppend(parentGfx, text);\n\n return text;\n }\n\n function renderEmbeddedLabel(parentGfx, element, align) {\n var semantic = getSemantic(element);\n\n return renderLabel(parentGfx, semantic.name, {\n box: element,\n align: align,\n padding: 5,\n style: {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n });\n }\n\n function renderExternalLabel(parentGfx, element) {\n\n var box = {\n width: 90,\n height: 30,\n x: element.width / 2 + element.x,\n y: element.height / 2 + element.y\n };\n\n return renderLabel(parentGfx, getLabel(element), {\n box: box,\n fitBox: true,\n style: assign(\n {},\n textRenderer.getExternalStyle(),\n {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n )\n });\n }\n\n function renderLaneLabel(parentGfx, text, element) {\n var textBox = renderLabel(parentGfx, text, {\n box: {\n height: 30,\n width: element.height\n },\n align: 'center-middle',\n style: {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n });\n\n var top = -1 * element.height;\n\n transform(textBox, 0, -top, 270);\n }\n\n function createPathFromConnection(connection) {\n var waypoints = connection.waypoints;\n\n var pathData = 'm ' + waypoints[0].x + ',' + waypoints[0].y;\n for (var i = 1; i < waypoints.length; i++) {\n pathData += 'L' + waypoints[i].x + ',' + waypoints[i].y + ' ';\n }\n return pathData;\n }\n\n var handlers = this.handlers = {\n 'bpmn:Event': function(parentGfx, element, attrs) {\n\n if (!('fillOpacity' in attrs)) {\n attrs.fillOpacity = DEFAULT_FILL_OPACITY;\n }\n\n return drawCircle(parentGfx, element.width, element.height, attrs);\n },\n 'bpmn:StartEvent': function(parentGfx, element) {\n var attrs = {\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n var semantic = getSemantic(element);\n\n if (!semantic.isInterrupting) {\n attrs = {\n strokeDasharray: '6',\n strokeLinecap: 'round',\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n }\n\n var circle = renderer('bpmn:Event')(parentGfx, element, attrs);\n\n renderEventContent(element, parentGfx);\n\n return circle;\n },\n 'bpmn:MessageEventDefinition': function(parentGfx, element, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_MESSAGE', {\n xScaleFactor: 0.9,\n yScaleFactor: 0.9,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.235,\n my: 0.315\n }\n });\n\n var fill = isThrowing ? getStrokeColor(element, defaultStrokeColor) : getFillColor(element, defaultFillColor);\n var stroke = isThrowing ? getFillColor(element, defaultFillColor) : getStrokeColor(element, defaultStrokeColor);\n\n var messagePath = drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: stroke\n });\n\n return messagePath;\n },\n 'bpmn:TimerEventDefinition': function(parentGfx, element) {\n var circle = drawCircle(parentGfx, element.width, element.height, 0.2 * element.height, {\n strokeWidth: 2,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var pathData = pathMap.getScaledPath('EVENT_TIMER_WH', {\n xScaleFactor: 0.75,\n yScaleFactor: 0.75,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.5,\n my: 0.5\n }\n });\n\n drawPath(parentGfx, pathData, {\n strokeWidth: 2,\n strokeLinecap: 'square',\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n for (var i = 0;i < 12; i++) {\n\n var linePathData = pathMap.getScaledPath('EVENT_TIMER_LINE', {\n xScaleFactor: 0.75,\n yScaleFactor: 0.75,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.5,\n my: 0.5\n }\n });\n\n var width = element.width / 2;\n var height = element.height / 2;\n\n drawPath(parentGfx, linePathData, {\n strokeWidth: 1,\n strokeLinecap: 'square',\n transform: 'rotate(' + (i * 30) + ',' + height + ',' + width + ')',\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n }\n\n return circle;\n },\n 'bpmn:EscalationEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_ESCALATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.5,\n my: 0.2\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:ConditionalEventDefinition': function(parentGfx, event) {\n var pathData = pathMap.getScaledPath('EVENT_CONDITIONAL', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.5,\n my: 0.222\n }\n });\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:LinkEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_LINK', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.57,\n my: 0.263\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:ErrorEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_ERROR', {\n xScaleFactor: 1.1,\n yScaleFactor: 1.1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.2,\n my: 0.722\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:CancelEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_CANCEL_45', {\n xScaleFactor: 1.0,\n yScaleFactor: 1.0,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.638,\n my: -0.055\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n var path = drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n\n rotate(path, 45);\n\n return path;\n },\n 'bpmn:CompensateEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_COMPENSATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.22,\n my: 0.5\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:SignalEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_SIGNAL', {\n xScaleFactor: 0.9,\n yScaleFactor: 0.9,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.5,\n my: 0.2\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill,\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:MultipleEventDefinition': function(parentGfx, event, isThrowing) {\n var pathData = pathMap.getScaledPath('EVENT_MULTIPLE', {\n xScaleFactor: 1.1,\n yScaleFactor: 1.1,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.222,\n my: 0.36\n }\n });\n\n var fill = isThrowing ? getStrokeColor(event, defaultStrokeColor) : 'none';\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: fill\n });\n },\n 'bpmn:ParallelMultipleEventDefinition': function(parentGfx, event) {\n var pathData = pathMap.getScaledPath('EVENT_PARALLEL_MULTIPLE', {\n xScaleFactor: 1.2,\n yScaleFactor: 1.2,\n containerWidth: event.width,\n containerHeight: event.height,\n position: {\n mx: 0.458,\n my: 0.194\n }\n });\n\n return drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getStrokeColor(event, defaultStrokeColor),\n stroke: getStrokeColor(event, defaultStrokeColor)\n });\n },\n 'bpmn:EndEvent': function(parentGfx, element) {\n var circle = renderer('bpmn:Event')(parentGfx, element, {\n strokeWidth: 4,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n renderEventContent(element, parentGfx, true);\n\n return circle;\n },\n 'bpmn:TerminateEventDefinition': function(parentGfx, element) {\n var circle = drawCircle(parentGfx, element.width, element.height, 8, {\n strokeWidth: 4,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return circle;\n },\n 'bpmn:IntermediateEvent': function(parentGfx, element) {\n var outer = renderer('bpmn:Event')(parentGfx, element, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n /* inner */\n drawCircle(parentGfx, element.width, element.height, INNER_OUTER_DIST, {\n strokeWidth: 1,\n fill: getFillColor(element, 'none'),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n renderEventContent(element, parentGfx);\n\n return outer;\n },\n 'bpmn:IntermediateCatchEvent': as('bpmn:IntermediateEvent'),\n 'bpmn:IntermediateThrowEvent': as('bpmn:IntermediateEvent'),\n\n 'bpmn:Activity': function(parentGfx, element, attrs) {\n\n attrs = attrs || {};\n\n if (!('fillOpacity' in attrs)) {\n attrs.fillOpacity = DEFAULT_FILL_OPACITY;\n }\n\n return drawRect(parentGfx, element.width, element.height, TASK_BORDER_RADIUS, attrs);\n },\n\n 'bpmn:Task': function(parentGfx, element) {\n var attrs = {\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n var rect = renderer('bpmn:Activity')(parentGfx, element, attrs);\n\n renderEmbeddedLabel(parentGfx, element, 'center-middle');\n attachTaskMarkers(parentGfx, element);\n\n return rect;\n },\n 'bpmn:ServiceTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var pathDataBG = pathMap.getScaledPath('TASK_TYPE_SERVICE', {\n abspos: {\n x: 12,\n y: 18\n }\n });\n\n /* service bg */ drawPath(parentGfx, pathDataBG, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var fillPathData = pathMap.getScaledPath('TASK_TYPE_SERVICE_FILL', {\n abspos: {\n x: 17.2,\n y: 18\n }\n });\n\n /* service fill */ drawPath(parentGfx, fillPathData, {\n strokeWidth: 0,\n fill: getFillColor(element, defaultFillColor)\n });\n\n var pathData = pathMap.getScaledPath('TASK_TYPE_SERVICE', {\n abspos: {\n x: 17,\n y: 22\n }\n });\n\n /* service */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:UserTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var x = 15;\n var y = 12;\n\n var pathData = pathMap.getScaledPath('TASK_TYPE_USER_1', {\n abspos: {\n x: x,\n y: y\n }\n });\n\n /* user path */ drawPath(parentGfx, pathData, {\n strokeWidth: 0.5,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var pathData2 = pathMap.getScaledPath('TASK_TYPE_USER_2', {\n abspos: {\n x: x,\n y: y\n }\n });\n\n /* user2 path */ drawPath(parentGfx, pathData2, {\n strokeWidth: 0.5,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var pathData3 = pathMap.getScaledPath('TASK_TYPE_USER_3', {\n abspos: {\n x: x,\n y: y\n }\n });\n\n /* user3 path */ drawPath(parentGfx, pathData3, {\n strokeWidth: 0.5,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:ManualTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('TASK_TYPE_MANUAL', {\n abspos: {\n x: 17,\n y: 15\n }\n });\n\n /* manual path */ drawPath(parentGfx, pathData, {\n strokeWidth: 0.5, // 0.25,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:SendTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('TASK_TYPE_SEND', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: 21,\n containerHeight: 14,\n position: {\n mx: 0.285,\n my: 0.357\n }\n });\n\n /* send path */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getFillColor(element, defaultFillColor)\n });\n\n return task;\n },\n 'bpmn:ReceiveTask' : function(parentGfx, element) {\n var semantic = getSemantic(element);\n\n var task = renderer('bpmn:Task')(parentGfx, element);\n var pathData;\n\n if (semantic.instantiate) {\n drawCircle(parentGfx, 28, 28, 20 * 0.22, { strokeWidth: 1 });\n\n pathData = pathMap.getScaledPath('TASK_TYPE_INSTANTIATING_SEND', {\n abspos: {\n x: 7.77,\n y: 9.52\n }\n });\n } else {\n\n pathData = pathMap.getScaledPath('TASK_TYPE_SEND', {\n xScaleFactor: 0.9,\n yScaleFactor: 0.9,\n containerWidth: 21,\n containerHeight: 14,\n position: {\n mx: 0.3,\n my: 0.4\n }\n });\n }\n\n /* receive path */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:ScriptTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('TASK_TYPE_SCRIPT', {\n abspos: {\n x: 15,\n y: 20\n }\n });\n\n /* script path */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:BusinessRuleTask': function(parentGfx, element) {\n var task = renderer('bpmn:Task')(parentGfx, element);\n\n var headerPathData = pathMap.getScaledPath('TASK_TYPE_BUSINESS_RULE_HEADER', {\n abspos: {\n x: 8,\n y: 8\n }\n });\n\n var businessHeaderPath = drawPath(parentGfx, headerPathData);\n svgAttr(businessHeaderPath, {\n strokeWidth: 1,\n fill: getFillColor(element, '#aaaaaa'),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var headerData = pathMap.getScaledPath('TASK_TYPE_BUSINESS_RULE_MAIN', {\n abspos: {\n x: 8,\n y: 8\n }\n });\n\n var businessPath = drawPath(parentGfx, headerData);\n svgAttr(businessPath, {\n strokeWidth: 1,\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return task;\n },\n 'bpmn:SubProcess': function(parentGfx, element, attrs) {\n attrs = assign({\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n }, attrs);\n\n var rect = renderer('bpmn:Activity')(parentGfx, element, attrs);\n\n var expanded = isExpanded(element);\n\n if (isEventSubProcess(element)) {\n svgAttr(rect, {\n strokeDasharray: '1,2'\n });\n }\n\n renderEmbeddedLabel(parentGfx, element, expanded ? 'center-top' : 'center-middle');\n\n if (expanded) {\n attachTaskMarkers(parentGfx, element);\n } else {\n attachTaskMarkers(parentGfx, element, ['SubProcessMarker']);\n }\n\n return rect;\n },\n 'bpmn:AdHocSubProcess': function(parentGfx, element) {\n return renderer('bpmn:SubProcess')(parentGfx, element);\n },\n 'bpmn:Transaction': function(parentGfx, element) {\n var outer = renderer('bpmn:SubProcess')(parentGfx, element);\n\n var innerAttrs = styles.style([ 'no-fill', 'no-events' ], {\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n /* inner path */ drawRect(parentGfx, element.width, element.height, TASK_BORDER_RADIUS - 2, INNER_OUTER_DIST, innerAttrs);\n\n return outer;\n },\n 'bpmn:CallActivity': function(parentGfx, element) {\n return renderer('bpmn:SubProcess')(parentGfx, element, {\n strokeWidth: 5\n });\n },\n 'bpmn:Participant': function(parentGfx, element) {\n\n var attrs = {\n fillOpacity: DEFAULT_FILL_OPACITY,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n var lane = renderer('bpmn:Lane')(parentGfx, element, attrs);\n\n var expandedPool = isExpanded(element);\n\n if (expandedPool) {\n drawLine(parentGfx, [\n { x: 30, y: 0 },\n { x: 30, y: element.height }\n ], {\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n var text = getSemantic(element).name;\n renderLaneLabel(parentGfx, text, element);\n } else {\n\n // Collapsed pool draw text inline\n var text2 = getSemantic(element).name;\n renderLabel(parentGfx, text2, {\n box: element, align: 'center-middle',\n style: {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n });\n }\n\n var participantMultiplicity = !!(getSemantic(element).participantMultiplicity);\n\n if (participantMultiplicity) {\n renderer('ParticipantMultiplicityMarker')(parentGfx, element);\n }\n\n return lane;\n },\n 'bpmn:Lane': function(parentGfx, element, attrs) {\n var rect = drawRect(parentGfx, element.width, element.height, 0, assign({\n fill: getFillColor(element, defaultFillColor),\n fillOpacity: HIGH_FILL_OPACITY,\n stroke: getStrokeColor(element, defaultStrokeColor)\n }, attrs));\n\n var semantic = getSemantic(element);\n\n if (semantic.$type === 'bpmn:Lane') {\n var text = semantic.name;\n renderLaneLabel(parentGfx, text, element);\n }\n\n return rect;\n },\n 'bpmn:InclusiveGateway': function(parentGfx, element) {\n var diamond = renderer('bpmn:Gateway')(parentGfx, element);\n\n /* circle path */\n drawCircle(parentGfx, element.width, element.height, element.height * 0.24, {\n strokeWidth: 2.5,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return diamond;\n },\n 'bpmn:ExclusiveGateway': function(parentGfx, element) {\n var diamond = renderer('bpmn:Gateway')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('GATEWAY_EXCLUSIVE', {\n xScaleFactor: 0.4,\n yScaleFactor: 0.4,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.32,\n my: 0.3\n }\n });\n\n if ((getDi(element).isMarkerVisible)) {\n drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n }\n\n return diamond;\n },\n 'bpmn:ComplexGateway': function(parentGfx, element) {\n var diamond = renderer('bpmn:Gateway')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('GATEWAY_COMPLEX', {\n xScaleFactor: 0.5,\n yScaleFactor:0.5,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.46,\n my: 0.26\n }\n });\n\n /* complex path */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return diamond;\n },\n 'bpmn:ParallelGateway': function(parentGfx, element) {\n var diamond = renderer('bpmn:Gateway')(parentGfx, element);\n\n var pathData = pathMap.getScaledPath('GATEWAY_PARALLEL', {\n xScaleFactor: 0.6,\n yScaleFactor:0.6,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.46,\n my: 0.2\n }\n });\n\n /* parallel path */ drawPath(parentGfx, pathData, {\n strokeWidth: 1,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return diamond;\n },\n 'bpmn:EventBasedGateway': function(parentGfx, element) {\n\n var semantic = getSemantic(element);\n\n var diamond = renderer('bpmn:Gateway')(parentGfx, element);\n\n /* outer circle path */ drawCircle(parentGfx, element.width, element.height, element.height * 0.20, {\n strokeWidth: 1,\n fill: 'none',\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var type = semantic.eventGatewayType;\n var instantiate = !!semantic.instantiate;\n\n function drawEvent() {\n\n var pathData = pathMap.getScaledPath('GATEWAY_EVENT_BASED', {\n xScaleFactor: 0.18,\n yScaleFactor: 0.18,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.36,\n my: 0.44\n }\n });\n\n var attrs = {\n strokeWidth: 2,\n fill: getFillColor(element, 'none'),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n /* event path */ drawPath(parentGfx, pathData, attrs);\n }\n\n if (type === 'Parallel') {\n\n var pathData = pathMap.getScaledPath('GATEWAY_PARALLEL', {\n xScaleFactor: 0.4,\n yScaleFactor:0.4,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.474,\n my: 0.296\n }\n });\n\n var parallelPath = drawPath(parentGfx, pathData);\n svgAttr(parallelPath, {\n strokeWidth: 1,\n fill: 'none'\n });\n } else if (type === 'Exclusive') {\n\n if (!instantiate) {\n var innerCircle = drawCircle(parentGfx, element.width, element.height, element.height * 0.26);\n svgAttr(innerCircle, {\n strokeWidth: 1,\n fill: 'none',\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n }\n\n drawEvent();\n }\n\n\n return diamond;\n },\n 'bpmn:Gateway': function(parentGfx, element) {\n var attrs = {\n fill: getFillColor(element, defaultFillColor),\n fillOpacity: DEFAULT_FILL_OPACITY,\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n return drawDiamond(parentGfx, element.width, element.height, attrs);\n },\n 'bpmn:SequenceFlow': function(parentGfx, element) {\n var pathData = createPathFromConnection(element);\n\n var fill = getFillColor(element, defaultFillColor),\n stroke = getStrokeColor(element, defaultStrokeColor);\n\n var attrs = {\n strokeLinejoin: 'round',\n markerEnd: marker('sequenceflow-end', fill, stroke),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n var path = drawPath(parentGfx, pathData, attrs);\n\n var sequenceFlow = getSemantic(element);\n\n var source;\n\n if (element.source) {\n source = element.source.businessObject;\n\n // conditional flow marker\n if (sequenceFlow.conditionExpression && source.$instanceOf('bpmn:Activity')) {\n svgAttr(path, {\n markerStart: marker('conditional-flow-marker', fill, stroke)\n });\n }\n\n // default marker\n if (source.default && (source.$instanceOf('bpmn:Gateway') || source.$instanceOf('bpmn:Activity')) &&\n source.default === sequenceFlow) {\n svgAttr(path, {\n markerStart: marker('conditional-default-flow-marker', fill, stroke)\n });\n }\n }\n\n return path;\n },\n 'bpmn:Association': function(parentGfx, element, attrs) {\n\n var semantic = getSemantic(element);\n\n var fill = getFillColor(element, defaultFillColor),\n stroke = getStrokeColor(element, defaultStrokeColor);\n\n attrs = assign({\n strokeDasharray: '0.5, 5',\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n stroke: getStrokeColor(element, defaultStrokeColor)\n }, attrs || {});\n\n if (semantic.associationDirection === 'One' ||\n semantic.associationDirection === 'Both') {\n attrs.markerEnd = marker('association-end', fill, stroke);\n }\n\n if (semantic.associationDirection === 'Both') {\n attrs.markerStart = marker('association-start', fill, stroke);\n }\n\n return drawLine(parentGfx, element.waypoints, attrs);\n },\n 'bpmn:DataInputAssociation': function(parentGfx, element) {\n var fill = getFillColor(element, defaultFillColor),\n stroke = getStrokeColor(element, defaultStrokeColor);\n\n return renderer('bpmn:Association')(parentGfx, element, {\n markerEnd: marker('association-end', fill, stroke)\n });\n },\n 'bpmn:DataOutputAssociation': function(parentGfx, element) {\n var fill = getFillColor(element, defaultFillColor),\n stroke = getStrokeColor(element, defaultStrokeColor);\n\n return renderer('bpmn:Association')(parentGfx, element, {\n markerEnd: marker('association-end', fill, stroke)\n });\n },\n 'bpmn:MessageFlow': function(parentGfx, element) {\n\n var semantic = getSemantic(element),\n di = getDi(element);\n\n var fill = getFillColor(element, defaultFillColor),\n stroke = getStrokeColor(element, defaultStrokeColor);\n\n var pathData = createPathFromConnection(element);\n\n var attrs = {\n markerEnd: marker('messageflow-end', fill, stroke),\n markerStart: marker('messageflow-start', fill, stroke),\n strokeDasharray: '10, 12',\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n strokeWidth: '1.5px',\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n var path = drawPath(parentGfx, pathData, attrs);\n\n if (semantic.messageRef) {\n var midPoint = path.getPointAtLength(path.getTotalLength() / 2);\n\n var markerPathData = pathMap.getScaledPath('MESSAGE_FLOW_MARKER', {\n abspos: {\n x: midPoint.x,\n y: midPoint.y\n }\n });\n\n var messageAttrs = { strokeWidth: 1 };\n\n if (di.messageVisibleKind === 'initiating') {\n messageAttrs.fill = 'white';\n messageAttrs.stroke = 'black';\n } else {\n messageAttrs.fill = '#888';\n messageAttrs.stroke = 'white';\n }\n\n var message = drawPath(parentGfx, markerPathData, messageAttrs);\n\n var labelText = semantic.messageRef.name;\n var label = renderLabel(parentGfx, labelText, {\n align: 'center-top',\n fitBox: true,\n style: {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n });\n\n var messageBounds = message.getBBox(),\n labelBounds = label.getBBox();\n\n var translateX = midPoint.x - labelBounds.width / 2,\n translateY = midPoint.y + messageBounds.height / 2 + ELEMENT_LABEL_DISTANCE;\n\n transform(label, translateX, translateY, 0);\n\n }\n\n return path;\n },\n 'bpmn:DataObject': function(parentGfx, element) {\n var pathData = pathMap.getScaledPath('DATA_OBJECT_PATH', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.474,\n my: 0.296\n }\n });\n\n var elementObject = drawPath(parentGfx, pathData, {\n fill: getFillColor(element, defaultFillColor),\n fillOpacity: DEFAULT_FILL_OPACITY,\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var semantic = getSemantic(element);\n\n if (isCollection(semantic)) {\n renderDataItemCollection(parentGfx, element);\n }\n\n return elementObject;\n },\n 'bpmn:DataObjectReference': as('bpmn:DataObject'),\n 'bpmn:DataInput': function(parentGfx, element) {\n\n var arrowPathData = pathMap.getRawPath('DATA_ARROW');\n\n // page\n var elementObject = renderer('bpmn:DataObject')(parentGfx, element);\n\n /* input arrow path */ drawPath(parentGfx, arrowPathData, { strokeWidth: 1 });\n\n return elementObject;\n },\n 'bpmn:DataOutput': function(parentGfx, element) {\n var arrowPathData = pathMap.getRawPath('DATA_ARROW');\n\n // page\n var elementObject = renderer('bpmn:DataObject')(parentGfx, element);\n\n /* output arrow path */ drawPath(parentGfx, arrowPathData, {\n strokeWidth: 1,\n fill: 'black'\n });\n\n return elementObject;\n },\n 'bpmn:DataStoreReference': function(parentGfx, element) {\n var DATA_STORE_PATH = pathMap.getScaledPath('DATA_STORE', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0,\n my: 0.133\n }\n });\n\n var elementStore = drawPath(parentGfx, DATA_STORE_PATH, {\n strokeWidth: 2,\n fill: getFillColor(element, defaultFillColor),\n fillOpacity: DEFAULT_FILL_OPACITY,\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n return elementStore;\n },\n 'bpmn:BoundaryEvent': function(parentGfx, element) {\n\n var semantic = getSemantic(element),\n cancel = semantic.cancelActivity;\n\n var attrs = {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n };\n\n if (!cancel) {\n attrs.strokeDasharray = '6';\n attrs.strokeLinecap = 'round';\n }\n\n // apply fillOpacity\n var outerAttrs = assign({}, attrs, {\n fillOpacity: 1\n });\n\n // apply no-fill\n var innerAttrs = assign({}, attrs, {\n fill: 'none'\n });\n\n var outer = renderer('bpmn:Event')(parentGfx, element, outerAttrs);\n\n /* inner path */ drawCircle(parentGfx, element.width, element.height, INNER_OUTER_DIST, innerAttrs);\n\n renderEventContent(element, parentGfx);\n\n return outer;\n },\n 'bpmn:Group': function(parentGfx, element) {\n\n var group = drawRect(parentGfx, element.width, element.height, TASK_BORDER_RADIUS, {\n stroke: getStrokeColor(element, defaultStrokeColor),\n strokeWidth: 1,\n strokeDasharray: '8,3,1,3',\n fill: 'none',\n pointerEvents: 'none'\n });\n\n return group;\n },\n 'label': function(parentGfx, element) {\n return renderExternalLabel(parentGfx, element);\n },\n 'bpmn:TextAnnotation': function(parentGfx, element) {\n var style = {\n 'fill': 'none',\n 'stroke': 'none'\n };\n\n var textElement = drawRect(parentGfx, element.width, element.height, 0, 0, style);\n\n var textPathData = pathMap.getScaledPath('TEXT_ANNOTATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.0,\n my: 0.0\n }\n });\n\n drawPath(parentGfx, textPathData, {\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n var text = getSemantic(element).text || '';\n renderLabel(parentGfx, text, {\n box: element,\n align: 'left-top',\n padding: 5,\n style: {\n fill: getStrokeColor(element, defaultStrokeColor)\n }\n });\n\n return textElement;\n },\n 'ParticipantMultiplicityMarker': function(parentGfx, element) {\n var markerPath = pathMap.getScaledPath('MARKER_PARALLEL', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2) / element.width),\n my: (element.height - 15) / element.height\n }\n });\n\n drawMarker('participant-multiplicity', parentGfx, markerPath, {\n strokeWidth: 2,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n },\n 'SubProcessMarker': function(parentGfx, element) {\n var markerRect = drawRect(parentGfx, 14, 14, 0, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n\n // Process marker is placed in the middle of the box\n // therefore fixed values can be used here\n translate(markerRect, element.width / 2 - 7.5, element.height - 20);\n\n var markerPath = pathMap.getScaledPath('MARKER_SUB_PROCESS', {\n xScaleFactor: 1.5,\n yScaleFactor: 1.5,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: (element.width / 2 - 7.5) / element.width,\n my: (element.height - 20) / element.height\n }\n });\n\n drawMarker('sub-process', parentGfx, markerPath, {\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n },\n 'ParallelMarker': function(parentGfx, element, position) {\n var markerPath = pathMap.getScaledPath('MARKER_PARALLEL', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2 + position.parallel) / element.width),\n my: (element.height - 20) / element.height\n }\n });\n\n drawMarker('parallel', parentGfx, markerPath, {\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n },\n 'SequentialMarker': function(parentGfx, element, position) {\n var markerPath = pathMap.getScaledPath('MARKER_SEQUENTIAL', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2 + position.seq) / element.width),\n my: (element.height - 19) / element.height\n }\n });\n\n drawMarker('sequential', parentGfx, markerPath, {\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n },\n 'CompensationMarker': function(parentGfx, element, position) {\n var markerMath = pathMap.getScaledPath('MARKER_COMPENSATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2 + position.compensation) / element.width),\n my: (element.height - 13) / element.height\n }\n });\n\n drawMarker('compensation', parentGfx, markerMath, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n },\n 'LoopMarker': function(parentGfx, element, position) {\n var markerPath = pathMap.getScaledPath('MARKER_LOOP', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2 + position.loop) / element.width),\n my: (element.height - 7) / element.height\n }\n });\n\n drawMarker('loop', parentGfx, markerPath, {\n strokeWidth: 1,\n fill: getFillColor(element, defaultFillColor),\n stroke: getStrokeColor(element, defaultStrokeColor),\n strokeLinecap: 'round',\n strokeMiterlimit: 0.5\n });\n },\n 'AdhocMarker': function(parentGfx, element, position) {\n var markerPath = pathMap.getScaledPath('MARKER_ADHOC', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: ((element.width / 2 + position.adhoc) / element.width),\n my: (element.height - 15) / element.height\n }\n });\n\n drawMarker('adhoc', parentGfx, markerPath, {\n strokeWidth: 1,\n fill: getStrokeColor(element, defaultStrokeColor),\n stroke: getStrokeColor(element, defaultStrokeColor)\n });\n }\n };\n\n function attachTaskMarkers(parentGfx, element, taskMarkers) {\n var obj = getSemantic(element);\n\n var subprocess = taskMarkers && taskMarkers.indexOf('SubProcessMarker') !== -1;\n var position;\n\n if (subprocess) {\n position = {\n seq: -21,\n parallel: -22,\n compensation: -42,\n loop: -18,\n adhoc: 10\n };\n } else {\n position = {\n seq: -3,\n parallel: -6,\n compensation: -27,\n loop: 0,\n adhoc: 10\n };\n }\n\n forEach(taskMarkers, function(marker) {\n renderer(marker)(parentGfx, element, position);\n });\n\n if (obj.isForCompensation) {\n renderer('CompensationMarker')(parentGfx, element, position);\n }\n\n if (obj.$type === 'bpmn:AdHocSubProcess') {\n renderer('AdhocMarker')(parentGfx, element, position);\n }\n\n var loopCharacteristics = obj.loopCharacteristics,\n isSequential = loopCharacteristics && loopCharacteristics.isSequential;\n\n if (loopCharacteristics) {\n\n if (isSequential === undefined) {\n renderer('LoopMarker')(parentGfx, element, position);\n }\n\n if (isSequential === false) {\n renderer('ParallelMarker')(parentGfx, element, position);\n }\n\n if (isSequential === true) {\n renderer('SequentialMarker')(parentGfx, element, position);\n }\n }\n }\n\n function renderDataItemCollection(parentGfx, element) {\n\n var yPosition = (element.height - 18) / element.height;\n\n var pathData = pathMap.getScaledPath('DATA_OBJECT_COLLECTION_PATH', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.33,\n my: yPosition\n }\n });\n\n /* collection path */ drawPath(parentGfx, pathData, {\n strokeWidth: 2\n });\n }\n\n\n // extension API, use at your own risk\n this._drawPath = drawPath;\n\n}\n\n\ninherits(Composer, BaseRenderer);\n\nComposer.$inject = [\n 'config.bpmnRenderer',\n 'eventBus',\n 'styles',\n 'pathMap',\n 'canvas',\n 'textRenderer'\n];\n\n\nComposer.prototype.canRender = function(element) {\n return is(element, 'bpmn:BaseElement');\n};\n\nComposer.prototype.drawShape = function(parentGfx, element) {\n var type = element.type;\n var h = this.handlers[type];\n\n /* jshint -W040 */\n return h(parentGfx, element);\n};\n\nComposer.prototype.drawConnection = function(parentGfx, element) {\n var type = element.type;\n var h = this.handlers[type];\n\n /* jshint -W040 */\n return h(parentGfx, element);\n};\n\nComposer.prototype.getShapePath = function(element) {\n\n if (is(element, 'bpmn:Event')) {\n return getCirclePath(element);\n }\n\n if (is(element, 'bpmn:Activity')) {\n return getRoundRectPath(element, TASK_BORDER_RADIUS);\n }\n\n if (is(element, 'bpmn:Gateway')) {\n return getDiamondPath(element);\n }\n\n return getRectPath(element);\n};\n","import { assign } from 'min-dash';\n\nimport TextUtil from 'diagram-js/lib/util/Text';\n\nvar DEFAULT_FONT_SIZE = 12;\nvar LINE_HEIGHT_RATIO = 1.2;\n\nvar MIN_TEXT_ANNOTATION_HEIGHT = 30;\n\n\nexport default function TextComposer(config) {\n\n var defaultStyle = assign({\n fontFamily: 'Arial, sans-serif',\n fontSize: DEFAULT_FONT_SIZE,\n fontWeight: 'normal',\n lineHeight: LINE_HEIGHT_RATIO\n }, config && config.defaultStyle || {});\n\n var fontSize = parseInt(defaultStyle.fontSize, 10) - 1;\n\n var externalStyle = assign({}, defaultStyle, {\n fontSize: fontSize\n }, config && config.externalStyle || {});\n\n var textUtil = new TextUtil({\n style: defaultStyle\n });\n\n /**\n * Get the new bounds of an externally rendered,\n * layouted label.\n *\n * @param {Bounds} bounds\n * @param {string} text\n *\n * @return {Bounds}\n */\n this.getExternalLabelBounds = function (bounds, text) {\n var layoutedDimensions = textUtil.getDimensions(text, {\n box: {\n width: 90,\n height: 30,\n x: bounds.width / 2 + bounds.x,\n y: bounds.height / 2 + bounds.y\n },\n style: externalStyle\n });\n \n // Calculate label position\n var x = Math.round(bounds.x + bounds.width / 2 - layoutedDimensions.width / 2);\n var y = Math.round(bounds.y);\n \n // Resize label shape to fit label text\n var width = Math.ceil(layoutedDimensions.width);\n var height = Math.ceil(layoutedDimensions.height);\n \n return { x, y, width, height };\n };\n \n\n /**\n * Get the new bounds of text annotation.\n *\n * @param {Bounds} bounds\n * @param {string} text\n *\n * @return {Bounds}\n */\n this.getTextAnnotationBounds = function (bounds, text) {\n var layoutedDimensions = textUtil.getDimensions(text, {\n box: bounds,\n style: defaultStyle,\n align: 'left-top',\n padding: 5\n });\n \n // Ensure a minimum height for the text annotation\n var minHeight = Math.max(MIN_TEXT_ANNOTATION_HEIGHT, Math.round(layoutedDimensions.height));\n \n return {\n x: bounds.x,\n y: bounds.y,\n width: bounds.width,\n height: minHeight\n };\n };\n \n\n /**\n * Create a layouted text element.\n *\n * @param {string} text\n * @param {Object} [options]\n *\n * @return {SVGElement} rendered text\n */\n this.createText = function (text, options = {}) {\n return textUtil.createText(text, options);\n };\n \n\n /**\n * Get default text style.\n */\n this.getDefaultStyle = function() {\n return defaultStyle;\n };\n\n /**\n * Get the external text style.\n */\n this.getExternalStyle = function() {\n return externalStyle;\n };\n\n}\n\nTextComposer.$inject = [\n 'config.textRenderer'\n];","/**\n * Map containing SVG paths needed by BpmnRenderer.\n */\n\nexport default function PathMap() {\n\n /**\n * Contains a map of path elements\n *\n *

Path definition

\n * A parameterized path is defined like this:\n *
\n   * 'GATEWAY_PARALLEL': {\n   *   d: 'm {mx},{my} {e.x0},0 0,{e.x1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +\n          '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',\n   *   height: 17.5,\n   *   width:  17.5,\n   *   heightElements: [2.5, 7.5],\n   *   widthElements: [2.5, 7.5]\n   * }\n   * 
\n *

It's important to specify a correct height and width for the path as the scaling\n * is based on the ratio between the specified height and width in this object and the\n * height and width that is set as scale target (Note x,y coordinates will be scaled with\n * individual ratios).

\n *

The 'heightElements' and 'widthElements' array must contain the values that will be scaled.\n * The scaling is based on the computed ratios.\n * Coordinates on the y axis should be in the heightElement's array, they will be scaled using\n * the computed ratio coefficient.\n * In the parameterized path the scaled values can be accessed through the 'e' object in {} brackets.\n *

    \n *
  • The values for the y axis can be accessed in the path string using {e.y0}, {e.y1}, ....
  • \n *
  • The values for the x axis can be accessed in the path string using {e.x0}, {e.x1}, ....
  • \n *
\n * The numbers x0, x1 respectively y0, y1, ... map to the corresponding array index.\n *

\n */\n this.pathMap = {\n 'EVENT_MESSAGE': {\n d: 'm {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}',\n height: 36,\n width: 36,\n heightElements: [6, 14],\n widthElements: [10.5, 21]\n },\n 'EVENT_SIGNAL': {\n d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z',\n height: 36,\n width: 36,\n heightElements: [18],\n widthElements: [10, 20]\n },\n 'EVENT_ESCALATION': {\n d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z',\n height: 36,\n width: 36,\n heightElements: [20, 7],\n widthElements: [8]\n },\n 'EVENT_CONDITIONAL': {\n d: 'M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z ' +\n 'M {e.x2},{e.y3} l {e.x0},0 ' +\n 'M {e.x2},{e.y4} l {e.x0},0 ' +\n 'M {e.x2},{e.y5} l {e.x0},0 ' +\n 'M {e.x2},{e.y6} l {e.x0},0 ' +\n 'M {e.x2},{e.y7} l {e.x0},0 ' +\n 'M {e.x2},{e.y8} l {e.x0},0 ',\n height: 36,\n width: 36,\n heightElements: [8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5],\n widthElements: [10.5, 14.5, 12.5]\n },\n 'EVENT_LINK': {\n d: 'm {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z',\n height: 36,\n width: 36,\n heightElements: [4.4375, 6.75, 7.8125],\n widthElements: [9.84375, 13.5]\n },\n 'EVENT_ERROR': {\n d: 'm {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z',\n height: 36,\n width: 36,\n heightElements: [0.023, 8.737, 8.151, 16.564, 10.591, 8.714],\n widthElements: [0.085, 6.672, 6.97, 4.273, 5.337, 6.636]\n },\n 'EVENT_CANCEL_45': {\n d: 'm {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 ' +\n '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',\n height: 36,\n width: 36,\n heightElements: [4.75, 8.5],\n widthElements: [4.75, 8.5]\n },\n 'EVENT_COMPENSATION': {\n d: 'm {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z',\n height: 36,\n width: 36,\n heightElements: [6.5, 13, 0.4, 6.1],\n widthElements: [9, 9.3, 8.7]\n },\n 'EVENT_TIMER_WH': {\n d: 'M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ',\n height: 36,\n width: 36,\n heightElements: [10, 2],\n widthElements: [3, 7]\n },\n 'EVENT_TIMER_LINE': {\n d: 'M {mx},{my} ' +\n 'm {e.x0},{e.y0} l -{e.x1},{e.y1} ',\n height: 36,\n width: 36,\n heightElements: [10, 3],\n widthElements: [0, 0]\n },\n 'EVENT_MULTIPLE': {\n d:'m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z',\n height: 36,\n width: 36,\n heightElements: [6.28099, 12.56199],\n widthElements: [3.1405, 9.42149, 12.56198]\n },\n 'EVENT_PARALLEL_MULTIPLE': {\n d:'m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +\n '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',\n height: 36,\n width: 36,\n heightElements: [2.56228, 7.68683],\n widthElements: [2.56228, 7.68683]\n },\n 'GATEWAY_EXCLUSIVE': {\n d:'m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} ' +\n '{e.x4},{e.y1} {e.x2},0 {e.x1},{e.y3} {e.x0},{e.y3} ' +\n '{e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z',\n height: 17.5,\n width: 17.5,\n heightElements: [8.5, 6.5312, -6.5312, -8.5],\n widthElements: [6.5, -6.5, 3, -3, 5, -5]\n },\n 'GATEWAY_PARALLEL': {\n d:'m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 ' +\n '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',\n height: 30,\n width: 30,\n heightElements: [5, 12.5],\n widthElements: [5, 12.5]\n },\n 'GATEWAY_EVENT_BASED': {\n d:'m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z',\n height: 11,\n width: 11,\n heightElements: [-6, 6, 12, -12],\n widthElements: [9, -3, -12]\n },\n 'GATEWAY_COMPLEX': {\n d:'m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} ' +\n '{e.x2},0 -{e.x0},{e.y1} l {e.x1},{e.y2} {e.x0},-{e.y1} 0,{e.y0} {e.x3},0 0,-{e.y0} {e.x0},{e.y1} ' +\n '{e.x1},-{e.y2} -{e.x0},-{e.y1} {e.x2},0 0,-{e.y3} -{e.x2},0 {e.x0},-{e.y1} -{e.x1},-{e.y2} ' +\n '-{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z',\n height: 17.125,\n width: 17.125,\n heightElements: [4.875, 3.4375, 2.125, 3],\n widthElements: [3.4375, 2.125, 4.875, 3]\n },\n 'DATA_OBJECT_PATH': {\n d:'m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0',\n height: 61,\n width: 51,\n heightElements: [10, 50, 60],\n widthElements: [10, 40, 50, 60]\n },\n 'DATA_OBJECT_COLLECTION_PATH': {\n d: 'm{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10',\n height: 10,\n width: 10,\n heightElements: [],\n widthElements: []\n },\n 'DATA_ARROW': {\n d:'m 5,9 9,0 0,-3 5,5 -5,5 0,-3 -9,0 z',\n height: 61,\n width: 51,\n heightElements: [],\n widthElements: []\n },\n 'DATA_STORE': {\n d:'m {mx},{my} ' +\n 'l 0,{e.y2} ' +\n 'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 ' +\n 'l 0,-{e.y2} ' +\n 'c -{e.x0},-{e.y1} -{e.x1},-{e.y1} -{e.x2},0' +\n 'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0 ' +\n 'm -{e.x2},{e.y0}' +\n 'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0' +\n 'm -{e.x2},{e.y0}' +\n 'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0',\n height: 61,\n width: 61,\n heightElements: [7, 10, 45],\n widthElements: [2, 58, 60]\n },\n 'TEXT_ANNOTATION': {\n d: 'm {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0',\n height: 30,\n width: 10,\n heightElements: [30],\n widthElements: [10]\n },\n 'MARKER_SUB_PROCESS': {\n d: 'm{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0',\n height: 10,\n width: 10,\n heightElements: [],\n widthElements: []\n },\n 'MARKER_PARALLEL': {\n d: 'm{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10',\n height: 10,\n width: 10,\n heightElements: [],\n widthElements: []\n },\n 'MARKER_SEQUENTIAL': {\n d: 'm{mx},{my} m 0,3 l 10,0 m -10,3 l 10,0 m -10,3 l 10,0',\n height: 10,\n width: 10,\n heightElements: [],\n widthElements: []\n },\n 'MARKER_COMPENSATION': {\n d: 'm {mx},{my} 7,-5 0,10 z m 7.1,-0.3 6.9,-4.7 0,10 -6.9,-4.7 z',\n height: 10,\n width: 21,\n heightElements: [],\n widthElements: []\n },\n 'MARKER_LOOP': {\n d: 'm {mx},{my} c 3.526979,0 6.386161,-2.829858 6.386161,-6.320661 0,-3.490806 -2.859182,-6.320661 ' +\n '-6.386161,-6.320661 -3.526978,0 -6.38616,2.829855 -6.38616,6.320661 0,1.745402 ' +\n '0.714797,3.325567 1.870463,4.469381 0.577834,0.571908 1.265885,1.034728 2.029916,1.35457 ' +\n 'l -0.718163,-3.909793 m 0.718163,3.909793 -3.885211,0.802902',\n height: 13.9,\n width: 13.7,\n heightElements: [],\n widthElements: []\n },\n 'MARKER_ADHOC': {\n d: 'm {mx},{my} m 0.84461,2.64411 c 1.05533,-1.23780996 2.64337,-2.07882 4.29653,-1.97997996 2.05163,0.0805 ' +\n '3.85579,1.15803 5.76082,1.79107 1.06385,0.34139996 2.24454,0.1438 3.18759,-0.43767 0.61743,-0.33642 ' +\n '1.2775,-0.64078 1.7542,-1.17511 0,0.56023 0,1.12046 0,1.6807 -0.98706,0.96237996 -2.29792,1.62393996 ' +\n '-3.6918,1.66181996 -1.24459,0.0927 -2.46671,-0.2491 -3.59505,-0.74812 -1.35789,-0.55965 ' +\n '-2.75133,-1.33436996 -4.27027,-1.18121996 -1.37741,0.14601 -2.41842,1.13685996 -3.44288,1.96782996 z',\n height: 4,\n width: 15,\n heightElements: [],\n widthElements: []\n },\n 'TASK_TYPE_SEND': {\n d: 'm {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}',\n height: 14,\n width: 21,\n heightElements: [6, 14],\n widthElements: [10.5, 21]\n },\n 'TASK_TYPE_SCRIPT': {\n d: 'm {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 ' +\n 'c -10.969894,7.01868 6.997585,8.66524 -2.968967,14.938 z ' +\n 'm -7,-12 l 5,0 ' +\n 'm -4.5,3 l 4.5,0 ' +\n 'm -3,3 l 5,0' +\n 'm -4,3 l 5,0',\n height: 15,\n width: 12.6,\n heightElements: [6, 14],\n widthElements: [10.5, 21]\n },\n 'TASK_TYPE_USER_1': {\n d: 'm {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 ' +\n '-4.357,-4.62199999 -2.55199998,0 -4.28799998,2.06799999 -4.28799998,4.62199999 0,1.348 ' +\n '0.974,2.562 1.89599998,3.405 -0.52899998,0.187 -5.669,2.097 -5.794,4.7560005 v 6.718 ' +\n 'h 17 v -6.718 c 0,-2.2980005 -5.5279996,-4.5950005 -6.0509996,-4.7760005 z' +\n 'm -8,6 l 0,5.5 m 11,0 l 0,-5'\n },\n 'TASK_TYPE_USER_2': {\n d: 'm {mx},{my} m 2.162,1.009 c 0,2.4470005 -2.158,4.4310005 -4.821,4.4310005 ' +\n '-2.66499998,0 -4.822,-1.981 -4.822,-4.4310005 '\n },\n 'TASK_TYPE_USER_3': {\n d: 'm {mx},{my} m -6.9,-3.80 c 0,0 2.25099998,-2.358 4.27399998,-1.177 2.024,1.181 4.221,1.537 ' +\n '4.124,0.965 -0.098,-0.57 -0.117,-3.79099999 -4.191,-4.13599999 -3.57499998,0.001 ' +\n '-4.20799998,3.36699999 -4.20699998,4.34799999 z'\n },\n 'TASK_TYPE_MANUAL': {\n d: 'm {mx},{my} c 0.234,-0.01 5.604,0.008 8.029,0.004 0.808,0 1.271,-0.172 1.417,-0.752 0.227,-0.898 ' +\n '-0.334,-1.314 -1.338,-1.316 -2.467,-0.01 -7.886,-0.004 -8.108,-0.004 -0.014,-0.079 0.016,-0.533 0,-0.61 ' +\n '0.195,-0.042 8.507,0.006 9.616,0.002 0.877,-0.007 1.35,-0.438 1.353,-1.208 0.003,-0.768 -0.479,-1.09 ' +\n '-1.35,-1.091 -2.968,-0.002 -9.619,-0.013 -9.619,-0.013 v -0.591 c 0,0 5.052,-0.016 7.225,-0.016 ' +\n '0.888,-0.002 1.354,-0.416 1.351,-1.193 -0.006,-0.761 -0.492,-1.196 -1.361,-1.196 -3.473,-0.005 ' +\n '-10.86,-0.003 -11.0829995,-0.003 -0.022,-0.047 -0.045,-0.094 -0.069,-0.139 0.3939995,-0.319 ' +\n '2.0409995,-1.626 2.4149995,-2.017 0.469,-0.4870005 0.519,-1.1650005 0.162,-1.6040005 -0.414,-0.511 ' +\n '-0.973,-0.5 -1.48,-0.236 -1.4609995,0.764 -6.5999995,3.6430005 -7.7329995,4.2710005 -0.9,0.499 ' +\n '-1.516,1.253 -1.882,2.19 -0.37000002,0.95 -0.17,2.01 -0.166,2.979 0.004,0.718 -0.27300002,1.345 ' +\n '-0.055,2.063 0.629,2.087 2.425,3.312 4.859,3.318 4.6179995,0.014 9.2379995,-0.139 13.8569995,-0.158 ' +\n '0.755,-0.004 1.171,-0.301 1.182,-1.033 0.012,-0.754 -0.423,-0.969 -1.183,-0.973 -1.778,-0.01 ' +\n '-5.824,-0.004 -6.04,-0.004 10e-4,-0.084 0.003,-0.586 10e-4,-0.67 z'\n },\n 'TASK_TYPE_INSTANTIATING_SEND': {\n d: 'm {mx},{my} l 0,8.4 l 12.6,0 l 0,-8.4 z l 6.3,3.6 l 6.3,-3.6'\n },\n 'TASK_TYPE_SERVICE': {\n d: 'm {mx},{my} v -1.71335 c 0.352326,-0.0705 0.703932,-0.17838 1.047628,-0.32133 ' +\n '0.344416,-0.14465 0.665822,-0.32133 0.966377,-0.52145 l 1.19431,1.18005 1.567487,-1.57688 ' +\n '-1.195028,-1.18014 c 0.403376,-0.61394 0.683079,-1.29908 0.825447,-2.01824 l 1.622133,-0.01 ' +\n 'v -2.2196 l -1.636514,0.01 c -0.07333,-0.35153 -0.178319,-0.70024 -0.323564,-1.04372 ' +\n '-0.145244,-0.34406 -0.321407,-0.6644 -0.522735,-0.96217 l 1.131035,-1.13631 -1.583305,-1.56293 ' +\n '-1.129598,1.13589 c -0.614052,-0.40108 -1.302883,-0.68093 -2.022633,-0.82247 l 0.0093,-1.61852 ' +\n 'h -2.241173 l 0.0042,1.63124 c -0.353763,0.0736 -0.705369,0.17977 -1.049785,0.32371 -0.344415,0.14437 ' +\n '-0.665102,0.32092 -0.9635006,0.52046 l -1.1698628,-1.15823 -1.5667691,1.5792 1.1684265,1.15669 ' +\n 'c -0.4026573,0.61283 -0.68308,1.29797 -0.8247287,2.01713 l -1.6588041,0.003 v 2.22174 ' +\n 'l 1.6724648,-0.006 c 0.073327,0.35077 0.1797598,0.70243 0.3242851,1.04472 0.1452428,0.34448 ' +\n '0.3214064,0.6644 0.5227339,0.96066 l -1.1993431,1.19723 1.5840256,1.56011 1.1964668,-1.19348 ' +\n 'c 0.6140517,0.40346 1.3028827,0.68232 2.0233517,0.82331 l 7.19e-4,1.69892 h 2.226848 z ' +\n 'm 0.221462,-3.9957 c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 ' +\n '0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 ' +\n '0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z'\n },\n 'TASK_TYPE_SERVICE_FILL': {\n d: 'm {mx},{my} c -1.788948,0.7502 -3.8576,-0.0928 -4.6097055,-1.87438 -0.7521065,-1.78321 ' +\n '0.090598,-3.84627 1.8802645,-4.59604 1.78823,-0.74936 3.856881,0.0929 4.608987,1.87437 ' +\n '0.752106,1.78165 -0.0906,3.84612 -1.879546,4.59605 z'\n },\n 'TASK_TYPE_BUSINESS_RULE_HEADER': {\n d: 'm {mx},{my} 0,4 20,0 0,-4 z'\n },\n 'TASK_TYPE_BUSINESS_RULE_MAIN': {\n d: 'm {mx},{my} 0,12 20,0 0,-12 z' +\n 'm 0,8 l 20,0 ' +\n 'm -13,-4 l 0,8'\n },\n 'MESSAGE_FLOW_MARKER': {\n d: 'm {mx},{my} m -10.5 ,-7 l 0,14 l 21,0 l 0,-14 z l 10.5,6 l 10.5,-6'\n }\n };\n\n this.getRawPath = function getRawPath(pathId) {\n return this.pathMap[pathId].d;\n };\n\n /**\n * Scales the path to the given height and width.\n *

Use case

\n *

Use case is to scale the content of elements (event, gateways) based\n * on the element bounding box's size.\n *

\n *

Why not transform

\n *

Scaling a path with transform() will also scale the stroke and IE does not support\n * the option 'non-scaling-stroke' to prevent this.\n * Also there are use cases where only some parts of a path should be\n * scaled.

\n *\n * @param {string} pathId The ID of the path.\n * @param {Object} param

\n * Example param object scales the path to 60% size of the container (data.width, data.height).\n *

\n   *   {\n   *     xScaleFactor: 0.6,\n   *     yScaleFactor:0.6,\n   *     containerWidth: data.width,\n   *     containerHeight: data.height,\n   *     position: {\n   *       mx: 0.46,\n   *       my: 0.2,\n   *     }\n   *   }\n   *   
\n *
    \n *
  • targetpathwidth = xScaleFactor * containerWidth
  • \n *
  • targetpathheight = yScaleFactor * containerHeight
  • \n *
  • Position is used to set the starting coordinate of the path. M is computed:\n *
      \n *
    • position.x * containerWidth
    • \n *
    • position.y * containerHeight
    • \n *
    \n * Center of the container
     position: {\n   *       mx: 0.5,\n   *       my: 0.5,\n   *     }
    \n * Upper left corner of the container\n *
     position: {\n   *       mx: 0.0,\n   *       my: 0.0,\n   *     }
    \n *
  • \n *
\n *

\n *\n */\n this.getScaledPath = function getScaledPath(pathId, param) {\n const rawPath = this.pathMap[pathId];\n \n // positioning\n // compute the start point of the path\n let mx, my;\n \n if (param.abspos) {\n mx = param.abspos.x;\n my = param.abspos.y;\n } else {\n mx = param.containerWidth * param.position.mx;\n my = param.containerHeight * param.position.my;\n }\n \n const coordinates = {}; // map for the scaled coordinates\n if (param.position) {\n // path\n const heightRatio = (param.containerHeight / rawPath.height) * param.yScaleFactor;\n const widthRatio = (param.containerWidth / rawPath.width) * param.xScaleFactor;\n \n // Apply height ratio\n for (let heightIndex = 0; heightIndex < rawPath.heightElements.length; heightIndex++) {\n coordinates['y' + heightIndex] = rawPath.heightElements[heightIndex] * heightRatio;\n }\n \n // Apply width ratio\n for (let widthIndex = 0; widthIndex < rawPath.widthElements.length; widthIndex++) {\n coordinates['x' + widthIndex] = rawPath.widthElements[widthIndex] * widthRatio;\n }\n }\n \n // Apply value to raw path\n const path = format(rawPath.d, { mx, my, e: coordinates });\n return path;\n }; \n}\n\n// helpers //////////////////////\n\n// copied from https://github.com/adobe-webplatform/Snap.svg/blob/master/src/svg.js\nvar tokenRegex = /\\{([^}]+)\\}/g,\n objNotationRegex = /(?:(?:^|\\.)(.+?)(?=\\[|\\.|$|\\()|\\[('|\")(.+?)\\2\\])(\\(\\))?/g; // matches .xxxxx or [\"xxxxx\"] to run over object properties\n\n function replacer(all, key, obj) {\n let result = obj;\n \n key.replace(objNotationRegex, function (all, name, quote, quotedName, isFunc) {\n name = name || quotedName;\n if (result) {\n if (name in result) {\n result = result[name];\n }\n typeof result === 'function' && isFunc && (result = result());\n }\n });\n \n result = (result == null || result === obj ? all : result) + '';\n \n return result;\n }\n \n\nfunction format(str, obj) {\n return String(str).replace(tokenRegex, function(all, key) {\n return replacer(all, key, obj);\n });\n}\n","import Composer from './Composer';\nimport TextComposer from './TextComposer';\n\nimport PathMap from './PathMap';\n\nexport default {\n __init__: [ 'bpmnRenderer' ],\n bpmnRenderer: [ 'type', Composer ],\n textRenderer: [ 'type', TextComposer ],\n pathMap: [ 'type', PathMap ]\n};\n","export function elementToString(e) {\n if (!e) {\n return '';\n }\n\n return '<' + e.$type + (e.id ? ' id=\"' + e.id : '') + '\" />';\n}","import {\n assign\n} from 'min-dash';\n\nimport {\n is,\n isLabelExternal,\n getExternalLabelBounds,\n isExpanded\n} from '../base/BaseServices';\n\nimport {\n getMid\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n getLabel\n} from '../components/labelElements/LabelService';\n\nimport {\n elementToString\n} from './ImportService';\n\n\nfunction elementData(semantic, attrs) {\n return assign({\n id: semantic.id,\n type: semantic.$type,\n businessObject: semantic\n }, attrs);\n}\n\nfunction getWaypoints(bo, source, target) {\n\n var waypoints = bo.di.waypoint;\n\n if (!waypoints || waypoints.length < 2) {\n return [ getMid(source), getMid(target) ];\n }\n\n return waypoints.map(function(p) {\n return { x: p.x, y: p.y };\n });\n}\n\nfunction notYetDrawn(translate, semantic, refSemantic, property) {\n return new Error(translate('element {element} referenced by {referenced}#{property} not yet drawn', {\n element: elementToString(refSemantic),\n referenced: elementToString(semantic),\n property: property\n }));\n}\n\n\n/**\n * An importer that adds bpmn elements to the canvas\n *\n * @param {EventBus} eventBus\n * @param {Canvas} canvas\n * @param {ElementFactory} elementFactory\n * @param {ElementRegistry} elementRegistry\n * @param {Function} translate\n * @param {TextRenderer} textRenderer\n */\nexport default function Import(\n eventBus, canvas, elementFactory,\n elementRegistry, translate, textRenderer) {\n\n this._eventBus = eventBus;\n this._canvas = canvas;\n this._elementFactory = elementFactory;\n this._elementRegistry = elementRegistry;\n this._translate = translate;\n this._textRenderer = textRenderer;\n}\n\nImport.$inject = [\n 'eventBus',\n 'canvas',\n 'elementFactory',\n 'elementRegistry',\n 'translate',\n 'textRenderer'\n];\n\n\n/**\n * Add bpmn element (semantic) to the canvas onto the\n * specified parent shape.\n */\nImport.prototype.add = function(semantic, parentElement) {\n\n var di = semantic.di,\n element,\n translate = this._translate,\n hidden;\n\n var parentIndex;\n\n // ROOT ELEMENT\n // handle the special case that we deal with a\n // invisible root element (process or collaboration)\n if (is(di, 'bpmndi:BPMNPlane')) {\n\n // add a virtual element (not being drawn)\n element = this._elementFactory.createRoot(elementData(semantic));\n\n this._canvas.setRootElement(element);\n }\n\n // SHAPE\n else if (is(di, 'bpmndi:BPMNShape')) {\n\n var collapsed = !isExpanded(semantic),\n isFrame = isFrameElement(semantic);\n hidden = parentElement && (parentElement.hidden || parentElement.collapsed);\n\n var bounds = semantic.di.bounds;\n\n element = this._elementFactory.createShape(elementData(semantic, {\n collapsed: collapsed,\n hidden: hidden,\n x: Math.round(bounds.x),\n y: Math.round(bounds.y),\n width: Math.round(bounds.width),\n height: Math.round(bounds.height),\n isFrame: isFrame\n }));\n\n if (is(semantic, 'bpmn:BoundaryEvent')) {\n this._attachBoundary(semantic, element);\n }\n\n // insert lanes behind other flow nodes (cf. #727)\n if (is(semantic, 'bpmn:Lane')) {\n parentIndex = 0;\n }\n\n if (is(semantic, 'bpmn:DataStoreReference')) {\n\n // check whether data store is inside our outside of its semantic parent\n if (!isPointInsideBBox(parentElement, getMid(bounds))) {\n parentElement = this._canvas.getRootElement();\n }\n }\n\n this._canvas.addShape(element, parentElement, parentIndex);\n }\n\n // CONNECTION\n else if (is(di, 'bpmndi:BPMNEdge')) {\n\n var source = this._getSource(semantic),\n target = this._getTarget(semantic);\n\n hidden = parentElement && (parentElement.hidden || parentElement.collapsed);\n\n element = this._elementFactory.createConnection(elementData(semantic, {\n hidden: hidden,\n source: source,\n target: target,\n waypoints: getWaypoints(semantic, source, target)\n }));\n\n if (is(semantic, 'bpmn:DataAssociation')) {\n\n // render always on top; this ensures DataAssociations\n // are rendered correctly across different \"hacks\" people\n // love to model such as cross participant / sub process\n // associations\n parentElement = null;\n }\n\n // insert sequence flows behind other flow nodes (cf. #727)\n if (is(semantic, 'bpmn:SequenceFlow')) {\n parentIndex = 0;\n }\n\n this._canvas.addConnection(element, parentElement, parentIndex);\n } else {\n throw new Error(translate('unknown di {di} for element {semantic}', {\n di: elementToString(di),\n semantic: elementToString(semantic)\n }));\n }\n\n // (optional) LABEL\n if (isLabelExternal(semantic) && getLabel(element)) {\n this.addLabel(semantic, element);\n }\n\n\n this._eventBus.fire('bpmnElement.added', { element: element });\n\n return element;\n};\n\n\n/**\n * Attach the boundary element to the given host\n *\n * @param {ModdleElement} boundarySemantic\n * @param {djs.model.Base} boundaryElement\n */\nImport.prototype._attachBoundary = function(boundarySemantic, boundaryElement) {\n var translate = this._translate;\n var hostSemantic = boundarySemantic.attachedToRef;\n\n if (!hostSemantic) {\n throw new Error(translate('missing {semantic}#attachedToRef', {\n semantic: elementToString(boundarySemantic)\n }));\n }\n\n var host = this._elementRegistry.get(hostSemantic.id),\n attachers = host && host.attachers;\n\n if (!host) {\n throw notYetDrawn(translate, boundarySemantic, hostSemantic, 'attachedToRef');\n }\n\n // wire element.host <> host.attachers\n boundaryElement.host = host;\n\n if (!attachers) {\n host.attachers = attachers = [];\n }\n\n if (attachers.indexOf(boundaryElement) === -1) {\n attachers.push(boundaryElement);\n }\n};\n\n\n/**\n * add label for an element\n */\nImport.prototype.addLabel = function(semantic, element) {\n var bounds,\n text,\n label;\n\n bounds = getExternalLabelBounds(semantic, element);\n\n text = getLabel(element);\n\n if (text) {\n\n // get corrected bounds from actual layouted text\n bounds = this._textRenderer.getExternalLabelBounds(bounds, text);\n }\n\n label = this._elementFactory.createLabel(elementData(semantic, {\n id: semantic.id + '_label',\n labelTarget: element,\n type: 'label',\n hidden: element.hidden || !getLabel(element),\n x: Math.round(bounds.x),\n y: Math.round(bounds.y),\n width: Math.round(bounds.width),\n height: Math.round(bounds.height)\n }));\n\n return this._canvas.addShape(label, element.parent);\n};\n\n/**\n * Return the drawn connection end based on the given side.\n *\n * @throws {Error} if the end is not yet drawn\n */\nImport.prototype._getEnd = function(semantic, side) {\n\n var element,\n refSemantic,\n type = semantic.$type,\n translate = this._translate;\n\n refSemantic = semantic[side + 'Ref'];\n\n // handle mysterious isMany DataAssociation#sourceRef\n if (side === 'source' && type === 'bpmn:DataInputAssociation') {\n refSemantic = refSemantic && refSemantic[0];\n }\n\n // fix source / target for DataInputAssociation / DataOutputAssociation\n if (side === 'source' && type === 'bpmn:DataOutputAssociation' ||\n side === 'target' && type === 'bpmn:DataInputAssociation') {\n\n refSemantic = semantic.$parent;\n }\n\n element = refSemantic && this._getElement(refSemantic);\n\n if (element) {\n return element;\n }\n\n if (refSemantic) {\n throw notYetDrawn(translate, semantic, refSemantic, side + 'Ref');\n } else {\n throw new Error(translate('{semantic}#{side} Ref not specified', {\n semantic: elementToString(semantic),\n side: side\n }));\n }\n};\n\nImport.prototype._getSource = function(semantic) {\n return this._getEnd(semantic, 'source');\n};\n\nImport.prototype._getTarget = function(semantic) {\n return this._getEnd(semantic, 'target');\n};\n\n\nImport.prototype._getElement = function(semantic) {\n return this._elementRegistry.get(semantic.id);\n};\n\n\n// helpers ////////////////////\n\nfunction isPointInsideBBox(bbox, point) {\n var x = point.x,\n y = point.y;\n\n return x >= bbox.x &&\n x <= bbox.x + bbox.width &&\n y >= bbox.y &&\n y <= bbox.y + bbox.height;\n}\n\nfunction isFrameElement(semantic) {\n return is(semantic, 'bpmn:Group');\n}","import translate from 'diagram-js/lib/i18n/translate';\n\nimport Import from './Import';\n\nexport default {\n __depends__: [\n translate\n ],\n bpmnImporter: [ 'type', Import ]\n};","import ComposeModule from '../compose';\nimport ImportModule from '../import';\n\nexport default {\n __depends__: [\n ComposeModule,\n ImportModule\n ]\n};","import {\n filter,\n find,\n forEach\n} from 'min-dash';\n\nimport Refs from 'object-refs';\n\nimport {\n elementToString\n} from './ImportService';\n\nvar diRefs = new Refs(\n { name: 'bpmnElement', enumerable: true },\n { name: 'di', configurable: true }\n);\n\n/**\n * Returns true if an element has the given meta-model type\n *\n * @param {ModdleElement} element\n * @param {string} type\n *\n * @return {boolean}\n */\nfunction is(element, type) {\n return element.$instanceOf(type);\n}\n\n\n/**\n * Find a suitable display candidate for definitions where the DI does not\n * correctly specify one.\n */\nfunction findDisplayCandidate(definitions) {\n return find(definitions.rootElements, function(e) {\n return is(e, 'bpmn:Process') || is(e, 'bpmn:Collaboration');\n });\n}\n\n\nexport default function TreeTraversal(handler, translate) {\n\n // list of containers already walked\n var handledElements = {};\n\n // list of elements to handle deferred to ensure\n // prerequisites are drawn\n var deferred = [];\n\n // Helpers //////////////////////\n\n function contextual(fn, ctx) {\n return function(e) {\n fn(e, ctx);\n };\n }\n\n function handled(element) {\n handledElements[element.id] = element;\n }\n\n function isHandled(element) {\n return handledElements[element.id];\n }\n\n function visit(element, ctx) {\n\n var gfx = element.gfx;\n\n // avoid multiple rendering of elements\n if (gfx) {\n throw new Error(\n translate('already rendered {element}', { element: elementToString(element) })\n );\n }\n\n // call handler\n return handler.element(element, ctx);\n }\n\n function visitRoot(element, diagram) {\n return handler.root(element, diagram);\n }\n\n function visitIfDi(element, ctx) {\n\n try {\n var gfx = element.di && visit(element, ctx);\n\n handled(element);\n\n return gfx;\n } catch (e) {\n logError(e.message, { element: element, error: e });\n\n console.error(translate('failed to import {element}', { element: elementToString(element) }));\n console.error(e);\n }\n }\n\n function logError(message, context) {\n handler.error(message, context);\n }\n\n // DI handling //////////////////////\n\n function registerDi(di) {\n var bpmnElement = di.bpmnElement;\n\n if (bpmnElement) {\n if (bpmnElement.di) {\n logError(\n translate('multiple DI elements defined for {element}', {\n element: elementToString(bpmnElement)\n }),\n { element: bpmnElement }\n );\n } else {\n diRefs.bind(bpmnElement, 'di');\n bpmnElement.di = di;\n }\n } else {\n logError(\n translate('no bpmnElement referenced in {element}', {\n element: elementToString(di)\n }),\n { element: di }\n );\n }\n }\n\n function handleDiagram(diagram) {\n handlePlane(diagram.plane);\n }\n\n function handlePlane(plane) {\n registerDi(plane);\n\n forEach(plane.planeElement, handlePlaneElement);\n }\n\n function handlePlaneElement(planeElement) {\n registerDi(planeElement);\n }\n\n\n // Semantic handling //////////////////////\n\n /**\n * Handle definitions and return the rendered diagram (if any)\n *\n * @param {ModdleElement} definitions to walk and import\n * @param {ModdleElement} [diagram] specific diagram to import and display\n *\n * @throws {Error} if no diagram to display could be found\n */\n function handleDefinitions(definitions, diagram) {\n\n // make sure we walk the correct bpmnElement\n\n var diagrams = definitions.diagrams;\n\n if (diagram && diagrams.indexOf(diagram) === -1) {\n throw new Error(translate('diagram not part of bpmn:Definitions'));\n }\n\n if (!diagram && diagrams && diagrams.length) {\n diagram = diagrams[0];\n }\n\n // no diagram -> nothing to import\n if (!diagram) {\n throw new Error(translate('no diagram to display'));\n }\n\n // load DI from selected diagram only\n handleDiagram(diagram);\n\n\n var plane = diagram.plane;\n\n if (!plane) {\n throw new Error(translate(\n 'no plane for {element}',\n { element: elementToString(diagram) }\n ));\n }\n\n var rootElement = plane.bpmnElement;\n\n // ensure we default to a suitable display candidate (process or collaboration),\n // even if non is specified in DI\n if (!rootElement) {\n rootElement = findDisplayCandidate(definitions);\n\n if (!rootElement) {\n throw new Error(translate('no process or collaboration to display'));\n } else {\n\n logError(\n translate('correcting missing bpmnElement on {plane} to {rootElement}', {\n plane: elementToString(plane),\n rootElement: elementToString(rootElement)\n })\n );\n\n // correct DI on the fly\n plane.bpmnElement = rootElement;\n registerDi(plane);\n }\n }\n\n\n var ctx = visitRoot(rootElement, plane);\n\n if (is(rootElement, 'bpmn:Process')) {\n handleProcess(rootElement, ctx);\n } else if (is(rootElement, 'bpmn:Collaboration')) {\n handleCollaboration(rootElement, ctx);\n\n // force drawing of everything not yet drawn that is part of the target DI\n handleUnhandledProcesses(definitions.rootElements, ctx);\n } else {\n throw new Error(\n translate('unsupported bpmnElement for {plane}: {rootElement}', {\n plane: elementToString(plane),\n rootElement: elementToString(rootElement)\n })\n );\n }\n\n // handle all deferred elements\n handleDeferred(deferred);\n }\n\n function handleDeferred() {\n\n var fn;\n\n // drain deferred until empty\n while (deferred.length) {\n fn = deferred.shift();\n\n fn();\n }\n }\n\n function handleProcess(process, context) {\n handleFlowElementsContainer(process, context);\n handleIoSpecification(process.ioSpecification, context);\n\n handleArtifacts(process.artifacts, context);\n\n // log process handled\n handled(process);\n }\n\n function handleUnhandledProcesses(rootElements, ctx) {\n\n // walk through all processes that have not yet been drawn and draw them\n // if they contain lanes with DI information.\n // we do this to pass the free-floating lane test cases in the MIWG test suite\n var processes = filter(rootElements, function(e) {\n return !isHandled(e) && is(e, 'bpmn:Process') && e.laneSets;\n });\n\n processes.forEach(contextual(handleProcess, ctx));\n }\n\n function handleMessageFlow(messageFlow, context) {\n visitIfDi(messageFlow, context);\n }\n\n function handleMessageFlows(messageFlows, context) {\n forEach(messageFlows, contextual(handleMessageFlow, context));\n }\n\n function handleDataAssociation(association, context) {\n visitIfDi(association, context);\n }\n\n function handleDataInput(dataInput, context) {\n visitIfDi(dataInput, context);\n }\n\n function handleDataOutput(dataOutput, context) {\n visitIfDi(dataOutput, context);\n }\n\n function handleArtifact(artifact, context) {\n\n // bpmn:TextAnnotation\n // bpmn:Group\n // bpmn:Association\n\n visitIfDi(artifact, context);\n }\n\n function handleArtifacts(artifacts, context) {\n\n forEach(artifacts, function(e) {\n if (is(e, 'bpmn:Association')) {\n deferred.push(function() {\n handleArtifact(e, context);\n });\n } else {\n handleArtifact(e, context);\n }\n });\n }\n\n function handleIoSpecification(ioSpecification, context) {\n\n if (!ioSpecification) {\n return;\n }\n\n forEach(ioSpecification.dataInputs, contextual(handleDataInput, context));\n forEach(ioSpecification.dataOutputs, contextual(handleDataOutput, context));\n }\n\n function handleSubProcess(subProcess, context) {\n handleFlowElementsContainer(subProcess, context);\n handleArtifacts(subProcess.artifacts, context);\n }\n\n function handleFlowNode(flowNode, context) {\n var childCtx = visitIfDi(flowNode, context);\n\n if (is(flowNode, 'bpmn:SubProcess')) {\n handleSubProcess(flowNode, childCtx || context);\n }\n\n if (is(flowNode, 'bpmn:Activity')) {\n handleIoSpecification(flowNode.ioSpecification, context);\n }\n\n // defer handling of associations\n // affected types:\n //\n // * bpmn:Activity\n // * bpmn:ThrowEvent\n // * bpmn:CatchEvent\n //\n deferred.push(function() {\n forEach(flowNode.dataInputAssociations, contextual(handleDataAssociation, context));\n forEach(flowNode.dataOutputAssociations, contextual(handleDataAssociation, context));\n });\n }\n\n function handleSequenceFlow(sequenceFlow, context) {\n visitIfDi(sequenceFlow, context);\n }\n\n function handleDataElement(dataObject, context) {\n visitIfDi(dataObject, context);\n }\n\n function handleLane(lane, context) {\n\n deferred.push(function() {\n\n var newContext = visitIfDi(lane, context);\n\n if (lane.childLaneSet) {\n handleLaneSet(lane.childLaneSet, newContext || context);\n }\n\n wireFlowNodeRefs(lane);\n });\n }\n\n function handleLaneSet(laneSet, context) {\n forEach(laneSet.lanes, contextual(handleLane, context));\n }\n\n function handleLaneSets(laneSets, context) {\n forEach(laneSets, contextual(handleLaneSet, context));\n }\n\n function handleFlowElementsContainer(container, context) {\n handleFlowElements(container.flowElements, context);\n\n if (container.laneSets) {\n handleLaneSets(container.laneSets, context);\n }\n }\n\n function handleFlowElements(flowElements, context) {\n forEach(flowElements, function(e) {\n if (is(e, 'bpmn:SequenceFlow')) {\n deferred.push(function() {\n handleSequenceFlow(e, context);\n });\n } else if (is(e, 'bpmn:BoundaryEvent')) {\n deferred.unshift(function() {\n handleFlowNode(e, context);\n });\n } else if (is(e, 'bpmn:FlowNode')) {\n handleFlowNode(e, context);\n } else if (is(e, 'bpmn:DataObject')) {\n\n // SKIP (assume correct referencing via DataObjectReference)\n } else if (is(e, 'bpmn:DataStoreReference')) {\n handleDataElement(e, context);\n } else if (is(e, 'bpmn:DataObjectReference')) {\n handleDataElement(e, context);\n } else {\n logError(\n translate('unrecognized flowElement {element} in context {context}', {\n element: elementToString(e),\n context: (context ? elementToString(context.businessObject) : 'null')\n }),\n { element: e, context: context }\n );\n }\n });\n }\n\n function handleParticipant(participant, context) {\n var newCtx = visitIfDi(participant, context);\n\n var process = participant.processRef;\n if (process) {\n handleProcess(process, newCtx || context);\n }\n }\n\n function handleCollaboration(collaboration) {\n\n forEach(collaboration.participants, contextual(handleParticipant));\n\n handleArtifacts(collaboration.artifacts);\n\n // handle message flows latest in the process\n deferred.push(function() {\n handleMessageFlows(collaboration.messageFlows);\n });\n }\n\n\n function wireFlowNodeRefs(lane) {\n\n // wire the virtual flowNodeRefs <-> relationship\n forEach(lane.flowNodeRef, function(flowNode) {\n var lanes = flowNode.get('lanes');\n\n if (lanes) {\n lanes.push(lane);\n }\n });\n }\n\n // API //////////////////////\n\n return {\n handleDeferred: handleDeferred,\n handleDefinitions: handleDefinitions,\n handleSubProcess: handleSubProcess,\n registerDi: registerDi\n };\n}","import TreeTraversal from './TreeTraversal';\n\n\n/**\n * The importBpmnDiagram result.\n *\n * @typedef {Object} ImportDiagramResult\n *\n * @property {Array} warnings\n */\n\n/**\n* The importBpmnDiagram error.\n*\n* @typedef {Error} ImportDiagramError\n*\n* @property {Array} warnings\n*/\n\n/**\n * Import the definitions into a diagram.\n *\n * Errors and warnings are reported through the specified callback.\n *\n * @param {djs.Diagram} diagram\n * @param {ModdleElement} definitions\n * @param {ModdleElement} [bpmnDiagram] the diagram to be rendered\n * (if not provided, the first one will be rendered)\n *\n * Returns {Promise}\n */\nexport function importDiagram(diagram, definitions, bpmnDiagram) {\n\n var importer,\n eventBus,\n translate;\n\n var error,\n warnings = [];\n\n /**\n * Walk the diagram semantically, importing (=drawing)\n * all elements you encounter.\n *\n * @param {ModdleElement} definitions\n * @param {ModdleElement} bpmnDiagram\n */\n function render(definitions, bpmnDiagram) {\n\n var visitor = {\n\n root: function(element) {\n return importer.add(element);\n },\n\n element: function(element, parentShape) {\n return importer.add(element, parentShape);\n },\n\n error: function(message, context) {\n warnings.push({ message: message, context: context });\n }\n };\n\n var walker = new TreeTraversal(visitor, translate);\n\n // traverse BPMN 2.0 document model,\n // starting at definitions\n walker.handleDefinitions(definitions, bpmnDiagram);\n }\n\n return new Promise(function(resolve, reject) {\n try {\n importer = diagram.get('bpmnImporter');\n eventBus = diagram.get('eventBus');\n translate = diagram.get('translate');\n\n eventBus.fire('import.render.start', { definitions: definitions });\n\n render(definitions, bpmnDiagram);\n\n eventBus.fire('import.render.complete', {\n error: error,\n warnings: warnings\n });\n\n return resolve({ warnings: warnings });\n } catch (e) {\n\n e.warnings = warnings;\n return reject(e);\n }\n });\n}\n","import {\n assign,\n find,\n isNumber,\n omit\n} from 'min-dash';\n\nimport {\n domify,\n query as domQuery,\n remove as domRemove\n} from 'min-dom';\n\nimport {\n innerSVG\n} from 'tiny-svg';\n\nimport Diagram from 'diagram-js';\nimport BpmnModdle from 'bpmn-moddle';\n\nimport inherits from 'inherits';\n\nimport {\n importDiagram\n} from '../import/ImportDiagram';\n\nimport {\n wrapForCompatibility\n} from './BaseServices';\n\nexport default function BaseViewer(options) {\n\n options = assign({}, DEFAULT_OPTIONS, options);\n\n this._moddle = this._createModdle(options);\n\n this._container = this._createContainer(options);\n\n this._init(this._container, this._moddle, options);\n}\n\ninherits(BaseViewer, Diagram);\n\nBaseViewer.prototype.importXML = wrapForCompatibility(function importXML(xml, bpmnDiagram) {\n\n var self = this;\n\n function ParseCompleteEvent(data) {\n\n var event = self.get('eventBus').createEvent(data);\n\n Object.defineProperty(event, 'context', {\n enumerable: true,\n get: function() {\n\n console.warn(new Error(\n 'import.parse.complete is deprecated ' +\n 'and will be removed in future library versions'\n ));\n\n return {\n warnings: data.warnings,\n references: data.references,\n elementsById: data.elementsById\n };\n }\n });\n\n return event;\n }\n\n return new Promise(function(resolve, reject) {\n\n xml = self._emit('import.parse.start', { xml: xml }) || xml;\n\n self._moddle.fromXML(xml, 'bpmn:Definitions').then(function(result) {\n var definitions = result.rootElement;\n var references = result.references;\n var parseWarnings = result.warnings;\n var elementsById = result.elementsById;\n\n definitions = self._emit('import.parse.complete', ParseCompleteEvent({\n error: null,\n definitions: definitions,\n elementsById: elementsById,\n references: references,\n warnings: parseWarnings\n })) || definitions;\n\n self.importDefinitions(definitions, bpmnDiagram).then(function(result) {\n var allWarnings = [].concat(parseWarnings, result.warnings || []);\n\n self._emit('import.done', { error: null, warnings: allWarnings });\n\n return resolve({ warnings: allWarnings });\n }).catch(function(err) {\n var allWarnings = [].concat(parseWarnings, err.warnings || []);\n\n self._emit('import.done', { error: err, warnings: allWarnings });\n\n return reject(addWarningsToError(err, allWarnings));\n });\n }).catch(function(err) {\n\n self._emit('import.parse.complete', {\n error: err\n });\n\n err = checkValidationError(err);\n\n self._emit('import.done', { error: err, warnings: err.warnings });\n\n return reject(err);\n });\n });\n});\n\nBaseViewer.prototype.importDefinitions = wrapForCompatibility(function importDefinitions(definitions, bpmnDiagram) {\n\n var self = this;\n\n return new Promise(function(resolve, reject) {\n\n self._setDefinitions(definitions);\n\n self.open(bpmnDiagram).then(function(result) {\n\n var warnings = result.warnings;\n\n return resolve({ warnings: warnings });\n }).catch(function(err) {\n\n return reject(err);\n });\n });\n});\n\nBaseViewer.prototype.open = wrapForCompatibility(function open(bpmnDiagramOrId) {\n\n var definitions = this._definitions;\n var bpmnDiagram = bpmnDiagramOrId;\n\n var self = this;\n\n return new Promise(function(resolve, reject) {\n if (!definitions) {\n var err1 = new Error('no XML imported');\n\n return reject(addWarningsToError(err1, []));\n }\n\n if (typeof bpmnDiagramOrId === 'string') {\n bpmnDiagram = findBPMNDiagram(definitions, bpmnDiagramOrId);\n\n if (!bpmnDiagram) {\n var err2 = new Error('BPMNDiagram <' + bpmnDiagramOrId + '> not found');\n\n return reject(addWarningsToError(err2, []));\n }\n }\n\n try {\n self.clear();\n } catch (error) {\n\n return reject(addWarningsToError(error, []));\n }\n\n importDiagram(self, definitions, bpmnDiagram).then(function(result) {\n\n var warnings = result.warnings;\n\n return resolve({ warnings: warnings });\n }).catch(function(err) {\n\n return reject(err);\n });\n });\n});\n\nBaseViewer.prototype.saveXML = wrapForCompatibility(function saveXML(options) {\n\n options = options || {};\n\n var self = this;\n\n var definitions = this._definitions;\n\n return new Promise(function(resolve) {\n\n if (!definitions) {\n return resolve({\n error: new Error('no definitions loaded')\n });\n }\n\n definitions = self._emit('saveXML.start', {\n definitions: definitions\n }) || definitions;\n\n self._moddle.toXML(definitions, options).then(function(result) {\n\n var xml = result.xml;\n\n xml = self._emit('saveXML.serialized', {\n xml: xml\n }) || xml;\n\n return resolve({\n xml: xml\n });\n });\n }).catch(function(error) {\n return { error: error };\n }).then(function(result) {\n\n self._emit('saveXML.done', result);\n\n var error = result.error;\n\n if (error) {\n return Promise.reject(error);\n }\n\n return result;\n });\n});\n\nBaseViewer.prototype.saveSVG = wrapForCompatibility(function saveSVG(options) {\n\n options = options || {};\n\n var self = this;\n\n return new Promise(function(resolve, reject) {\n\n self._emit('saveSVG.start');\n\n var svg, err;\n\n try {\n var canvas = self.get('canvas');\n\n var contentNode = canvas.getDefaultLayer(),\n defsNode = domQuery('defs', canvas._svg);\n\n var contents = innerSVG(contentNode),\n defs = defsNode ? '' + innerSVG(defsNode) + '' : '';\n\n var bbox = contentNode.getBBox();\n\n svg =\n '\\n' +\n '\\n' +\n '\\n' +\n '' +\n defs + contents +\n '';\n } catch (e) {\n err = e;\n }\n\n self._emit('saveSVG.done', {\n error: err,\n svg: svg\n });\n\n if (!err) {\n return resolve({ svg: svg });\n }\n\n return reject(err);\n });\n});\n\nBaseViewer.prototype._setDefinitions = function(definitions) {\n this._definitions = definitions;\n};\n\nBaseViewer.prototype.getModules = function() {\n return this._modules;\n};\n\nBaseViewer.prototype.clear = function() {\n if (!this.getDefinitions()) {\n\n return;\n }\n\n this.get('elementRegistry').forEach(function(element) {\n var bo = element.businessObject;\n\n if (bo && bo.di) {\n delete bo.di;\n }\n });\n\n Diagram.prototype.clear.call(this);\n};\n\nBaseViewer.prototype.destroy = function() {\n\n Diagram.prototype.destroy.call(this);\n\n domRemove(this._container);\n};\n\nBaseViewer.prototype.on = function(event, priority, callback, target) {\n return this.get('eventBus').on(event, priority, callback, target);\n};\n\nBaseViewer.prototype.off = function(event, callback) {\n this.get('eventBus').off(event, callback);\n};\n\nBaseViewer.prototype.attachTo = function(parentNode) {\n\n if (!parentNode) {\n throw new Error('parentNode required');\n }\n\n this.detach();\n\n if (parentNode.get && parentNode.constructor.prototype.jquery) {\n parentNode = parentNode.get(0);\n }\n\n if (typeof parentNode === 'string') {\n parentNode = domQuery(parentNode);\n }\n\n parentNode.appendChild(this._container);\n\n this._emit('attach', {});\n\n this.get('canvas').resized();\n};\n\nBaseViewer.prototype.getDefinitions = function() {\n return this._definitions;\n};\n\nBaseViewer.prototype.detach = function() {\n\n var container = this._container,\n parentNode = container.parentNode;\n\n if (!parentNode) {\n return;\n }\n\n this._emit('detach', {});\n\n parentNode.removeChild(container);\n};\n\nBaseViewer.prototype._init = function(container, moddle, options) {\n\n var baseModules = options.modules || this.getModules(),\n additionalModules = options.additionalModules || [],\n staticModules = [\n {\n bpmnjs: [ 'value', this ],\n moddle: [ 'value', moddle ]\n }\n ];\n\n var diagramModules = [].concat(staticModules, baseModules, additionalModules);\n\n var diagramOptions = assign(omit(options, [ 'additionalModules' ]), {\n canvas: assign({}, options.canvas, { container: container }),\n modules: diagramModules\n });\n\n Diagram.call(this, diagramOptions);\n\n if (options && options.container) {\n this.attachTo(options.container);\n }\n};\n\nBaseViewer.prototype._emit = function(type, event) {\n return this.get('eventBus').fire(type, event);\n};\n\nBaseViewer.prototype._createContainer = function(options) {\n\n var container = domify('
');\n\n assign(container.style, {\n width: ensureUnit(options.width),\n height: ensureUnit(options.height),\n position: options.position\n });\n\n return container;\n};\n\nBaseViewer.prototype._createModdle = function(options) {\n var moddleOptions = assign({}, this._moddleExtensions, options.moddleExtensions);\n\n return new BpmnModdle(moddleOptions);\n};\n\nBaseViewer.prototype._modules = [];\n\n/* Helpers */\n\nfunction addWarningsToError(err, warningsAry) {\n err.warnings = warningsAry;\n return err;\n}\n\nfunction checkValidationError(err) {\n var pattern = /unparsable content <([^>]+)> detected([\\s\\S]*)$/;\n var match = pattern.exec(err.message);\n\n if (match) {\n err.message =\n 'unparsable content <' + match[1] + '> detected; ' +\n 'this may indicate an invalid BPMN 2.0 diagram file' + match[2];\n }\n\n return err;\n}\n\nvar DEFAULT_OPTIONS = {\n width: '100%',\n height: '100%',\n position: 'relative'\n};\n\nfunction ensureUnit(val) {\n return val + (isNumber(val) ? 'px' : '');\n}\n\nfunction findBPMNDiagram(definitions, diagramId) {\n if (!diagramId) {\n return null;\n }\n\n return find(definitions.diagrams, function(element) {\n return element.id === diagramId;\n }) || null;\n}\n","import inherits from 'inherits';\n\nimport CoreModule from './base';\nimport TranslateModule from 'diagram-js/lib/i18n/translate';\nimport SelectionModule from 'diagram-js/lib/features/selection';\nimport OverlaysModule from 'diagram-js/lib/features/overlays';\n\nimport BaseViewer from './base/BaseViewer';\n\nexport default function Viewer(options) {\n BaseViewer.call(this, options);\n}\n\ninherits(Viewer, BaseViewer);\n\nViewer.prototype._modules = [\n CoreModule,\n TranslateModule,\n SelectionModule,\n OverlaysModule\n];\n\nViewer.prototype._moddleExtensions = {};","import inherits from 'inherits';\n\nimport Viewer from './Viewer';\n\nimport KeyboardMoveModule from 'diagram-js/lib/navigation/keyboard-move';\nimport MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas';\nimport ZoomScrollModule from 'diagram-js/lib/navigation/zoomscroll';\n\nexport default function NavViewer(options) {\n Viewer.call(this, options);\n}\n\ninherits(NavViewer, Viewer);\n\nNavViewer.prototype._navigationModules = [\n KeyboardMoveModule,\n MoveCanvasModule,\n ZoomScrollModule\n];\n\nNavViewer.prototype._modules = [].concat(\n Viewer.prototype._modules,\n NavViewer.prototype._navigationModules\n);","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./mytasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./mytasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./mytasks.vue?vue&type=template&id=718045fc&\"\nimport script from \"./mytasks.vue?vue&type=script&lang=js&\"\nexport * from \"./mytasks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./mytasks.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MyTasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MyTasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MyTasks.vue?vue&type=template&id=0ec7dda3&\"\nimport script from \"./MyTasks.vue?vue&type=script&lang=js&\"\nexport * from \"./MyTasks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('teamtasks')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.TASKS.TEAM_TASKS_SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.teamTasks,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"item-class\":_vm.setRowStyle,\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.viewProcessMap(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.MAP'))+\" \")]):_vm._e(),(row.item.assignee == null)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.claimTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.reassignTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.REASSIGN'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.claim),callback:function ($$v) {_vm.claim=$$v},expression:\"claim\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.claimTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.claimText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.claim = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClaim({taskId: _vm.taskId})}}},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.reassignDialog),callback:function ($$v) {_vm.reassignDialog=$$v},expression:\"reassignDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.reassignTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.reassignText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.userText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.REASSIGN_TEXT_3')))]),_c('v-autocomplete',{attrs:{\"items\":_vm.reassignList,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.reassignDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmReassign({value: _vm.value})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false},model:{value:(_vm.processMapDialog),callback:function ($$v) {_vm.processMapDialog=$$v},expression:\"processMapDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.processMapTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcessMap()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.taskInfoDialog),callback:function ($$v) {_vm.taskInfoDialog=$$v},expression:\"taskInfoDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.taskInfoTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeTaskInfo()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.taskInfoDetails)}})])],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./teamtasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./teamtasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./teamtasks.vue?vue&type=template&id=0ea10da4&\"\nimport script from \"./teamtasks.vue?vue&type=script&lang=js&\"\nexport * from \"./teamtasks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./teamtasks.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamTasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TeamTasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TeamTasks.vue?vue&type=template&id=1a6fae3f&\"\nimport script from \"./TeamTasks.vue?vue&type=script&lang=js&\"\nexport * from \"./TeamTasks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('unassignedtasks')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.TASKS.UNASSIGNED_TASKS_SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.unassignedTasks,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"item-class\":_vm.setRowStyle,\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.viewProcessMap(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.MAP'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.claimTask(row.item, false)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.claimTask(row.item, true)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM_OPEN'))+\" \")]),(_vm.currentRole == 'adminRole' || _vm.currentRole =='supervisorRole' || _vm.currentRole == 'managerRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.reassignTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.REASSIGN'))+\" \")]):_vm._e()]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.claim),callback:function ($$v) {_vm.claim=$$v},expression:\"claim\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.claimTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.claimText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.claim = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClaim({taskId: _vm.taskId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.reassignDialog),callback:function ($$v) {_vm.reassignDialog=$$v},expression:\"reassignDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.reassignTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.reassignText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.userText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.REASSIGN_TEXT_3')))]),_c('v-autocomplete',{attrs:{\"items\":_vm.reassignList,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.reassignDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmReassign({value: _vm.value})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false},model:{value:(_vm.processMapDialog),callback:function ($$v) {_vm.processMapDialog=$$v},expression:\"processMapDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.processMapTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcessMap()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.taskInfoDialog),callback:function ($$v) {_vm.taskInfoDialog=$$v},expression:\"taskInfoDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.taskInfoTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeTaskInfo()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.taskInfoDetails)}})])],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unassignedtasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./unassignedtasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./unassignedtasks.vue?vue&type=template&id=ad35a822&\"\nimport script from \"./unassignedtasks.vue?vue&type=script&lang=js&\"\nexport * from \"./unassignedtasks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./unassignedtasks.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnassignedTasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnassignedTasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./UnassignedTasks.vue?vue&type=template&id=01af44d7&\"\nimport script from \"./UnassignedTasks.vue?vue&type=script&lang=js&\"\nexport * from \"./UnassignedTasks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('alltasks')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.TASKS.ALL_TASKS_SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\",\"disabled\":_vm.selected.length == 0},on:{\"click\":function($event){return _vm.bulkReassign(_vm.selected)}}},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.BTNS.BULK_REASSIGN')))])],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.filteredItems,\"item-class\":_vm.setRowStyle,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"show-select\":\"\",\"single-select\":_vm.singleSelect,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},on:{\"item-selected\":_vm.setFilter,\"toggle-select-all\":_vm.selectAllCheck},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.viewProcessMap(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.MAP'))+\" \")]):_vm._e(),(row.item.assignee == null && row.item.canClaim)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.claimTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.reassignTask(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.TASKS.BTNS.REASSIGN'))+\" \")])]}}]),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.claim),callback:function ($$v) {_vm.claim=$$v},expression:\"claim\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.claimTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.claimText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.claim = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClaim({taskId: _vm.taskId})}}},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.BTNS.CLAIM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.reassignDialog),callback:function ($$v) {_vm.reassignDialog=$$v},expression:\"reassignDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.reassignTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.reassignText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.userText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.REASSIGN_TEXT_3')))]),_c('v-autocomplete',{attrs:{\"items\":_vm.reassignList,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.reassignDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmReassign({value: _vm.value})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.bulkReassignDialog),callback:function ($$v) {_vm.bulkReassignDialog=$$v},expression:\"bulkReassignDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.bulkReassignTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.bulkReassignText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('CASES.TASKS.BULK_REASSIGN_TEXT_3')))]),_c('v-autocomplete',{attrs:{\"items\":_vm.reassignList,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.bulkReassignDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmBulkReassign(_vm.selected, {value: _vm.value})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false},model:{value:(_vm.processMapDialog),callback:function ($$v) {_vm.processMapDialog=$$v},expression:\"processMapDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.processMapTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcessMap()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.taskInfoDialog),callback:function ($$v) {_vm.taskInfoDialog=$$v},expression:\"taskInfoDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.taskInfoTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeTaskInfo()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.taskInfoDetails)}})])],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./alltasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./alltasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./alltasks.vue?vue&type=template&id=3342e686&\"\nimport script from \"./alltasks.vue?vue&type=script&lang=js&\"\nexport * from \"./alltasks.vue?vue&type=script&lang=js&\"\nimport style0 from \"./alltasks.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AllTasks.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AllTasks.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AllTasks.vue?vue&type=template&id=30b15d5a&\"\nimport script from \"./AllTasks.vue?vue&type=script&lang=js&\"\nexport * from \"./AllTasks.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('historiccases')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('CASES.HISTORIC.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.clearDates()}}},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.BTNS.CLEAR_DATES')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.selected.length == 0},on:{\"click\":function($event){return _vm.bulkDelete(_vm.selected)}}},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.BTNS.BULK_DELETE')))])],1),_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"md\":\"6\"}},[_c('v-dialog',{ref:\"histStartedBefore\",attrs:{\"return-value\":_vm.startedBefore,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.startedBefore=$event},\"update:return-value\":function($event){_vm.startedBefore=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('CASES.HISTORIC.FIELDS.STARTED_BEFORE'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedStartedBefore),callback:function ($$v) {_vm.computedStartedBefore=$$v},expression:\"computedStartedBefore\"}},'v-text-field',attrs,false),on))]}}]),model:{value:(_vm.histStartedBefore),callback:function ($$v) {_vm.histStartedBefore=$$v},expression:\"histStartedBefore\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.startedBefore),callback:function ($$v) {_vm.startedBefore=$$v},expression:\"startedBefore\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.histStartedBefore = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.histStartedBefore.save(_vm.startedBefore)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"md\":\"6\"}},[_c('v-dialog',{ref:\"histStartedAfter\",attrs:{\"return-value\":_vm.startedAfter,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.startedAfter=$event},\"update:return-value\":function($event){_vm.startedAfter=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('CASES.HISTORIC.FIELDS.STARTED_AFTER'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedStartedAfter),callback:function ($$v) {_vm.computedStartedAfter=$$v},expression:\"computedStartedAfter\"}},'v-text-field',attrs,false),on))]}}]),model:{value:(_vm.histStartedAfter),callback:function ($$v) {_vm.histStartedAfter=$$v},expression:\"histStartedAfter\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.startedAfter),callback:function ($$v) {_vm.startedAfter=$$v},expression:\"startedAfter\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.histStartedAfter = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.histStartedAfter.save(_vm.startedAfter)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1)],1),_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"md\":\"6\"}},[_c('v-dialog',{ref:\"histFinishedBefore\",attrs:{\"return-value\":_vm.finishedBefore,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.finishedBefore=$event},\"update:return-value\":function($event){_vm.finishedBefore=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('CASES.HISTORIC.FIELDS.FINISHED_BEFORE'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedFinishedBefore),callback:function ($$v) {_vm.computedFinishedBefore=$$v},expression:\"computedFinishedBefore\"}},'v-text-field',attrs,false),on))]}}]),model:{value:(_vm.histFinishedBefore),callback:function ($$v) {_vm.histFinishedBefore=$$v},expression:\"histFinishedBefore\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.finishedBefore),callback:function ($$v) {_vm.finishedBefore=$$v},expression:\"finishedBefore\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.histFinishedBefore = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.histFinishedBefore.save(_vm.finishedBefore)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"5\",\"md\":\"5\"}},[_c('v-dialog',{ref:\"histFinishedAfter\",attrs:{\"return-value\":_vm.finishedAfter,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.finishedAfter=$event},\"update:return-value\":function($event){_vm.finishedAfter=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('CASES.HISTORIC.FIELDS.FINISHED_AFTER'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedFinishedAfter),callback:function ($$v) {_vm.computedFinishedAfter=$$v},expression:\"computedFinishedAfter\"}},'v-text-field',attrs,false),on))]}}]),model:{value:(_vm.histFinishedAfter),callback:function ($$v) {_vm.histFinishedAfter=$$v},expression:\"histFinishedAfter\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.finishedAfter),callback:function ($$v) {_vm.finishedAfter=$$v},expression:\"finishedAfter\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.histFinishedAfter = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.histFinishedAfter.save(_vm.finishedAfter)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"1\",\"md\":\"2\"}},[_c('v-btn',{staticClass:\"mt-3\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.refreshProcesses()}}},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.BTNS.REFRESH'))+\" \")])],1)],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.items,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"id\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading,\"show-select\":\"\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.viewInstance(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.VIEW'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteInstance(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}]),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5 warning-text\"},[_vm._v(_vm._s(_vm.deleteText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDelete({instanceId: _vm.instanceId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.bulkDeleteDialog),callback:function ($$v) {_vm.bulkDeleteDialog=$$v},expression:\"bulkDeleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.bulkDeleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5 warning-text\"},[_vm._v(_vm._s(_vm.bulkDeleteText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.bulkDeleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmBulkDelete(_vm.selected)}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./historiccases.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./historiccases.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./historiccases.vue?vue&type=template&id=deabecac&\"\nimport script from \"./historiccases.vue?vue&type=script&lang=js&\"\nexport * from \"./historiccases.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDataTable,VDatePicker,VDialog,VRow,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HistoricCases.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HistoricCases.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HistoricCases.vue?vue&type=template&id=716ea231&\"\nimport script from \"./HistoricCases.vue?vue&type=script&lang=js&\"\nexport * from \"./HistoricCases.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('viewtask')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-container',{staticClass:\"width-override\"},[(_vm.formCount == 1)?_c('v-form',{ref:\"theForm\",attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":_vm.deployedForm.forms[0]},on:{\"input\":_vm.handleInput}}),_c('v-spacer'),(_vm.filesAvailable && _vm.showUploadedFiles)?_c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.showFiles = !_vm.showFiles}}},[(!_vm.showFiles)?_c('span',[_vm._v(_vm._s(_vm.$t('CASES.TASKS.VIEW_TASK.BTNS.SHOW_FILES')))]):_vm._e(),(_vm.showFiles)?_c('span',[_vm._v(_vm._s(_vm.$t('CASES.TASKS.VIEW_TASK.BTNS.HIDE_FILES')))]):_vm._e()])],1),(_vm.showFiles)?_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.caseFiles,\"items-per-page\":10,\"item-key\":\"ITEM_ID\",\"sort-by\":\"CREATED\",\"sort-desc\":true,\"loading-text\":\"Loading... Please wait\"},scopedSlots:_vm._u([{key:\"item.FILE_URL\",fn:function(row){return [_c('a',{attrs:{\"href\":row.item.FILE_URL,\"target\":\"_blank\"}},[_vm._v(_vm._s(row.item.FILE_URL))])]}},{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DOWNLOAD'))+\" \")]):_vm._e(),(!row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OPEN'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}],null,false,105377226)}):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteFileDialog),callback:function ($$v) {_vm.deleteFileDialog=$$v},expression:\"deleteFileDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteFileTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteFileDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteFile()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1):_vm._e(),_c('div',{attrs:{\"id\":\"marker\"}}),_c('v-row',{staticClass:\"custom-margin\",attrs:{\"align\":\"center\",\"justify\":\"space-around\"}},[_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveForm(_vm.formModel, 'close')}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")]),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"loading\":_vm.loading,\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.submitForm(_vm.formModel)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SUBMIT'))+\" \")])],1)],1):_vm._e(),(_vm.formCount > 1)?_c('v-stepper',{staticClass:\"grey lighten-2\",model:{value:(_vm.s1),callback:function ($$v) {_vm.s1=$$v},expression:\"s1\"}},[_c('v-stepper-items',_vm._l((_vm.deployedForm.forms),function(form){return _c('v-stepper-content',{key:form.group0.step,attrs:{\"step\":form.group0.step}},[_c('v-form',{ref:\"theForm\",refInFor:true,attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":form},on:{\"input\":_vm.handleInput}}),_c('v-spacer'),(_vm.filesAvailable && _vm.showUploadedFiles)?_c('v-card',{staticClass:\"grey lighten-2\",attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.showFiles = !_vm.showFiles}}},[(!_vm.showFiles)?_c('span',[_vm._v(_vm._s(_vm.$t('CASES.TASKS.VIEW_TASK.BTNS.SHOW_FILES')))]):_vm._e(),(_vm.showFiles)?_c('span',[_vm._v(_vm._s(_vm.$t('CASES.TASKS.VIEW_TASK.BTNS.HIDE_FILES')))]):_vm._e()])],1),(_vm.showFiles)?_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.caseFiles,\"items-per-page\":10,\"item-key\":\"ITEM_ID\",\"sort-by\":\"CREATED\",\"sort-desc\":true,\"loading-text\":\"Loading... Please wait\"},scopedSlots:_vm._u([{key:\"item.FILE_URL\",fn:function(row){return [_c('a',{attrs:{\"href\":row.item.FILE_URL,\"target\":\"_blank\"}},[_vm._v(_vm._s(row.item.FILE_URL))])]}},{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DOWNLOAD'))+\" \")]):_vm._e(),(!row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OPEN'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}],null,true)}):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteFileDialog),callback:function ($$v) {_vm.deleteFileDialog=$$v},expression:\"deleteFileDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteFileTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteFileDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteFile()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1):_vm._e(),_c('div',{attrs:{\"id\":\"marker2\"}}),_c('v-row',{staticClass:\"custom-margin\",attrs:{\"align\":\"center\",\"justify\":\"space-around\"}},[(_vm.s1 <= _vm.formCount && _vm.s1 > 1 && _vm.currentPage != -1 && _vm.startPage != _vm.s1)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.backClick()}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.BACK'))+\" \")]):_vm._e(),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveForm(_vm.formModel, 'close')}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")]),(_vm.s1 < _vm.formCount && _vm.s1 != _vm.finalPage)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.continueForm(_vm.formModel)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CONTINUE'))+\" \")]):_vm._e(),(_vm.s1 == _vm.formCount || _vm.s1 == _vm.finalPage)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"loading\":_vm.loading,\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.submitForm(_vm.formModel)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SUBMIT'))+\" \")]):_vm._e()],1)],1)],1)}),1)],1):_vm._e()],1),_c('v-snackbar',{attrs:{\"timeout\":_vm.snackTimeout,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [(!_vm.isErrorSnack)?_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")]):_vm._e(),(_vm.isErrorSnack)?_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.saveForm(_vm.formModel, 'close')}}},'v-btn',attrs,false),[_vm._v(\" Close \")]):_vm._e()]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtask.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtask.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./viewtask.vue?vue&type=template&id=62bcbb5f&\"\nimport script from \"./viewtask.vue?vue&type=script&lang=js&\"\nexport * from \"./viewtask.vue?vue&type=script&lang=js&\"\nimport style0 from \"./viewtask.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperContent } from 'vuetify/lib/components/VStepper';\nimport { VStepperItems } from 'vuetify/lib/components/VStepper';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VContainer,VDataTable,VDialog,VForm,VRow,VSnackbar,VSpacer,VStepper,VStepperContent,VStepperItems,VToolbar})\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewTask.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewTask.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ViewTask.vue?vue&type=template&id=79087e7a&\"\nimport script from \"./ViewTask.vue?vue&type=script&lang=js&\"\nexport * from \"./ViewTask.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('viewcasehistory')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',{staticClass:\"ml-10\"},[_c('div',{staticClass:\"text-h5\"},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.TITLE'))+\" \"+_vm._s(_vm.historicCaseId)+\" (\"+_vm._s(_vm.processDefinitionKey)+\")\")]),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.obfuscate()}}},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.BTNS.OBFUSCATE_DATA')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.close}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},_vm._l((_vm.historicTasks),function(task){return _c('v-tab',{key:task.id},[_vm._v(\" \"+_vm._s(task.name)+\" \")])}),1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},_vm._l((_vm.historicTasks),function(task){return _c('v-tab-item',{key:task.id},[_c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-text',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_c('div',{staticClass:\"text-h5\"},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.TASK_INFO_TITLE')))])])],1),_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.FIELDS.TASK_START'))+\" \")]),_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(task.startTime)+\" \")])],1),_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.FIELDS.TASK_END'))+\" \")]),_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(task.endTime)+\" \")])],1),_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.FIELDS.TASK_ASSIGNED'))+\" \")]),_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(task.assignee)+\" \")])],1),(task.due !== null)?_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.FIELDS.TASK_DUE'))+\" \")]),_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(task.due)+\" \")])],1):_vm._e(),(task.followUp !== null)?_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.FIELDS.TASK_FOLLOW_UP'))+\" \")]),_c('v-col',{staticClass:\"col-md-3\"},[_vm._v(\" \"+_vm._s(task.followUp)+\" \")])],1):_vm._e(),_c('v-row',[_c('v-col',{staticClass:\"col-md-3\"},[_c('div',{staticClass:\"text-h5\"},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.TASK_VAR_TITLE')))])])],1),_c('v-row',{staticClass:\"col-md-12\"},[_c('v-data-table',{staticClass:\"col-md-12\",attrs:{\"headers\":_vm.historicHeaders,\"items\":_vm.historicVars[task.id],\"item-key\":\"id\",\"sort-by\":\"time\",\"items-per-page\":15,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading}})],1)],1)],1)],1)],1)}),1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false},model:{value:(_vm.obfuscateDialog),callback:function ($$v) {_vm.obfuscateDialog=$$v},expression:\"obfuscateDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.obfuscateTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.obfuscateText))]),_c('v-data-table',{attrs:{\"headers\":_vm.obfuscateHeaders,\"items\":_vm.obfuscateItems,\"item-key\":\"id\",\"show-select\":\"\"},model:{value:(_vm.obfuscateData),callback:function ($$v) {_vm.obfuscateData=$$v},expression:\"obfuscateData\"}})],1),_c('v-card-actions',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.cancelObfuscation()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"color\":\"error\",\"disabled\":_vm.obfuscateData.length == 0},on:{\"click\":function($event){return _vm.confirmObfuscation()}}},[_vm._v(_vm._s(_vm.$t('CASES.HISTORIC.VIEW_CASE.BTNS.OBFUSCATE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false},model:{value:(_vm.obfuscateConfirmDialog),callback:function ($$v) {_vm.obfuscateConfirmDialog=$$v},expression:\"obfuscateConfirmDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.obfuscateConfirmTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.obfuscateConfirmText))])]),_c('v-card-actions',[_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.obfuscateConfirmClose()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewcasehistory.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewcasehistory.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./viewcasehistory.vue?vue&type=template&id=2a960374&\"\nimport script from \"./viewcasehistory.vue?vue&type=script&lang=js&\"\nexport * from \"./viewcasehistory.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDialog,VRow,VSpacer,VTab,VTabItem,VTabs,VTabsItems,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewCaseHistory.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewCaseHistory.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ViewCaseHistory.vue?vue&type=template&id=fa133bbe&\"\nimport script from \"./ViewCaseHistory.vue?vue&type=script&lang=js&\"\nexport * from \"./ViewCaseHistory.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('admin')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.USERS'))+\" \")]),_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.GROUPS'))+\" \")]),(_vm.theCurrentRole == 'adminRole')?_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.SETTINGS'))+\" \")]):_vm._e(),_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.CONNECTIONS'))+\" \")]),_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.API_VAULT'))+\" \")]),(_vm.theCurrentRole == 'adminRole')?_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.LDAP_SSO'))+\" \")]):_vm._e(),(_vm.theCurrentRole == 'adminRole')?_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.OPS_LOG'))+\" \")]):_vm._e(),_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.ERROR_LOG'))+\" \")]),(_vm.theCurrentRole == 'adminRole')?_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.TABS.LICENSE'))+\" \")]):_vm._e()],1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.USERS.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.USERS.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchUsers),callback:function ($$v) {_vm.searchUsers=$$v},expression:\"searchUsers\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.addUser()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.USERS.BTNS.ADD_USER')))])],1),_c('v-data-table',{staticClass:\"elevation-1 user-list\",attrs:{\"headers\":_vm.userHeaders,\"items\":_vm.allUsers,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchUsers,\"item-key\":\"id\",\"sort-by\":_vm.usersSortBy,\"sort-desc\":_vm.usersSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingUsers},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.id != 'hqadmin')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editUser(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]):_vm._e(),(row.item.id != 'hqadmin' && row.item.id != _vm.theCurrentUser)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteUser(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")]):_vm._e()]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editUserDialog),callback:function ($$v) {_vm.editUserDialog=$$v},expression:\"editUserDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editUserTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editUserText))]),_c('div',{staticClass:\"pt-5 red--text pb-4\"},[_vm._v(_vm._s(_vm.passwordPolicy))]),_c('v-form',{ref:\"editUserForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.USERNAME'),\"rules\":[_vm.rules.required],\"disabled\":true},model:{value:(_vm.userId),callback:function ($$v) {_vm.userId=$$v},expression:\"userId\"}},[_vm._v(_vm._s(_vm.userId))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.EMAIL'),\"rules\":[_vm.rules.required, _vm.rules.email]},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}},[_vm._v(_vm._s(_vm.email))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.FIRSTNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.firstName),callback:function ($$v) {_vm.firstName=$$v},expression:\"firstName\"}},[_vm._v(_vm._s(_vm.firstName))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.LASTNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.lastName),callback:function ($$v) {_vm.lastName=$$v},expression:\"lastName\"}},[_vm._v(_vm._s(_vm.lastName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allRoles,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.ROLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.role),callback:function ($$v) {_vm.role=$$v},expression:\"role\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.password]},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"onpaste\":\"return false\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.CONFIRM_PASS'),\"append-icon\":_vm.showPass2 ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass2 ? 'text' : 'password',\"rules\":_vm.password1 != '' ? [_vm.rules.required, _vm.rules.password, _vm.rules.passMatch] : []},on:{\"click:append\":function($event){_vm.showPass2 = !_vm.showPass2}},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}})],1)],1),(_vm.remoteUserTenants.length > 0)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.USERS.EDIT_USER.MULTI_INSTANCE_TOGGLE')))]),_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.USERS.EDIT_USER.MULTI_INSTANCE_LABEL')},model:{value:(_vm.updateAllInstances),callback:function ($$v) {_vm.updateAllInstances=$$v},expression:\"updateAllInstances\"}})],1)],1)],1):_vm._e(),(_vm.allHqConns.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.USERS.EDIT_USER.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.tenantInfo),function(tenant){return _c('div',{key:tenant.id},[(tenant.engineId == item.ID)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()],1)})],2)})],2):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditUser()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditUser({userId: _vm.userId, email: _vm.email, firstName: _vm.firstName, lastName: _vm.lastName, role: _vm.role, password1: _vm.password1, password2: _vm.password2})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteUserDialog),callback:function ($$v) {_vm.deleteUserDialog=$$v},expression:\"deleteUserDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteUserTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteUserText))]),(_vm.allHqConns.length > 0 && _vm.remoteUserTenants.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.USERS.DELETE_USER.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.remoteUserTenants),function(tenant){return _c('div',{key:tenant.id},[(tenant.engineId == item.ID)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()],1)})],2)})],2):_vm._e()]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteUserDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteUser({userId: _vm.userId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addUserDialog),callback:function ($$v) {_vm.addUserDialog=$$v},expression:\"addUserDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addUserTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addUserText))]),_c('div',{staticClass:\"pt-5 red--text pb-4\"},[_vm._v(_vm._s(_vm.passwordPolicy))]),_c('v-form',{ref:\"addUserForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.USERNAME'),\"autocomplete\":\"username\",\"rules\":[_vm.rules.required]},model:{value:(_vm.userId),callback:function ($$v) {_vm.userId=$$v},expression:\"userId\"}},[_vm._v(_vm._s(_vm.userId))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.EMAIL'),\"rules\":[_vm.rules.required, _vm.rules.email]},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}},[_vm._v(_vm._s(_vm.email))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.FIRSTNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.firstName),callback:function ($$v) {_vm.firstName=$$v},expression:\"firstName\"}},[_vm._v(_vm._s(_vm.firstName))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.LASTNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.lastName),callback:function ($$v) {_vm.lastName=$$v},expression:\"lastName\"}},[_vm._v(_vm._s(_vm.lastName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allRoles,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.ROLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.role),callback:function ($$v) {_vm.role=$$v},expression:\"role\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.required, _vm.rules.password],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"onpaste\":\"return false\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.CONFIRM_PASS'),\"append-icon\":_vm.showPass2 ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass2 ? 'text' : 'password',\"rules\":[_vm.rules.required, _vm.rules.password, _vm.rules.passMatch],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass2 = !_vm.showPass2}},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}})],1)],1),(_vm.allHqConns.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.USERS.ADD_USER.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.tenantInfo),function(tenant){return _c('div',{key:tenant.id},[(tenant.engineId == item.ID)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()],1)})],2)})],2):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddUser()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddUser({userId: _vm.userId, email: _vm.email, firstName: _vm.firstName, lastName: _vm.lastName, role: _vm.role, password1: _vm.password1})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addRemoteUserDialog),callback:function ($$v) {_vm.addRemoteUserDialog=$$v},expression:\"addRemoteUserDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addRemoteUserTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.addRemoteUserText)}}),_c('v-form',{ref:\"addRemoteUserForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.required, _vm.rules.password]},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"onpaste\":\"return false\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.CONFIRM_PASS'),\"append-icon\":_vm.showPass2 ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass2 ? 'text' : 'password',\"rules\":_vm.password1 != '' ? [_vm.rules.required, _vm.rules.password, _vm.rules.passMatch] : []},on:{\"click:append\":function($event){_vm.showPass2 = !_vm.showPass2}},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddRemoteUser()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddRemoteUser({password1: _vm.password1})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.removeRemoteUserDialog),callback:function ($$v) {_vm.removeRemoteUserDialog=$$v},expression:\"removeRemoteUserDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.removeRemoteUserTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.removeRemoteUserText)}})]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.removeRemoteUserDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmRemoveRemoteUser()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)],1)],1)],1)],1),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.GROUPS.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.GROUPS.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchGroups),callback:function ($$v) {_vm.searchGroups=$$v},expression:\"searchGroups\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.addGroup()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.BTNS.ADD_GROUP')))])],1),_c('v-data-table',{staticClass:\"elevation-1 group-list\",attrs:{\"headers\":_vm.groupHeaders,\"items\":_vm.allGroups,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchGroups,\"item-key\":\"id\",\"sort-by\":_vm.groupsSortBy,\"sort-desc\":_vm.groupsSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingGroups},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editGroup(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.addRemoveUsers(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.GROUPS.BTNS.ADD_REMOVE_USERS'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteGroup(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editGroupDialog),callback:function ($$v) {_vm.editGroupDialog=$$v},expression:\"editGroupDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editGroupTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editGroupText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.GROUPS.FIELDS.ID'),\"disabled\":\"\"},model:{value:(_vm.groupId),callback:function ($$v) {_vm.groupId=$$v},expression:\"groupId\"}},[_vm._v(_vm._s(_vm.groupId))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.GROUPS.FIELDS.NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.groupName),callback:function ($$v) {_vm.groupName=$$v},expression:\"groupName\"}},[_vm._v(_vm._s(_vm.groupName))])],1)],1),(_vm.remoteGroupTenants.length > 0)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.EDIT_GROUP.MULTI_INSTANCE_TOGGLE')))]),_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.GROUPS.EDIT_GROUP.MULTI_INSTANCE_LABEL')},model:{value:(_vm.updateAllInstances),callback:function ($$v) {_vm.updateAllInstances=$$v},expression:\"updateAllInstances\"}})],1)],1)],1):_vm._e(),(_vm.allHqConns.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.EDIT_GROUP.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.tenantInfo),function(tenant){return _c('v-col',{key:tenant.id,attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[(tenant.engineId == item.ID)?_c('div',[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()])})],2)})],2):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditGroup()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditGroup({groupId: _vm.groupId, groupName: _vm.groupName})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteGroupDialog),callback:function ($$v) {_vm.deleteGroupDialog=$$v},expression:\"deleteGroupDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteGroupTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteGroupText))]),(_vm.allHqConns.length > 0 && _vm.remoteGroupTenants.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.DELETE_GROUP.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.remoteGroupTenants),function(tenant){return _c('div',{key:tenant.id},[(tenant.engineId == item.ID)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\"}},[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()],1)})],2)})],2):_vm._e()]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteGroupDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteGroup({groupId: _vm.groupId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addGroupDialog),callback:function ($$v) {_vm.addGroupDialog=$$v},expression:\"addGroupDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addGroupTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addGroupText))]),_c('v-form',{ref:\"addGroupForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.GROUPS.FIELDS.ID'),\"disabled\":\"\"},model:{value:(_vm.groupId),callback:function ($$v) {_vm.groupId=$$v},expression:\"groupId\"}},[_vm._v(_vm._s(_vm.groupId))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.GROUPS.FIELDS.NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.groupName),callback:function ($$v) {_vm.groupName=$$v},expression:\"groupName\"}},[_vm._v(_vm._s(_vm.groupName))])],1)],1),(_vm.allHqConns.length > 0)?_c('div',[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.ADD_GROUP.MULTI_INSTANCE')))]),_vm._l((_vm.allHqConns),function(item){return _c('v-row',{key:item.ID},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('div',{staticClass:\"engine-name text-subtitle-1\"},[_vm._v(_vm._s(item.ENGINE_NAME))])]),_vm._l((_vm.tenantInfo),function(tenant){return _c('v-col',{key:tenant.id,attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[(tenant.engineId == item.ID)?_c('div',[_c('v-checkbox',{staticClass:\"tenant-info\",attrs:{\"label\":tenant.tenantName,\"value\":tenant.id,\"hide-details\":\"\"},model:{value:(_vm.tenantSelected),callback:function ($$v) {_vm.tenantSelected=$$v},expression:\"tenantSelected\"}})],1):_vm._e()])})],2)})],2):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddGroup()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddGroup({groupId: _vm.groupId, groupName: _vm.groupName})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addRemoveUsersDialog),callback:function ($$v) {_vm.addRemoveUsersDialog=$$v},expression:\"addRemoveUsersDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addRemoveUsersTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addRemoveUsersText))]),(_vm.remoteGroupTenants.length > 0)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pt-5 pb-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.MULTI_INSTANCE_TOGGLE')))]),_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.MULTI_INSTANCE_LABEL')},model:{value:(_vm.updateAllInstances),callback:function ($$v) {_vm.updateAllInstances=$$v},expression:\"updateAllInstances\"}})],1)],1)],1):_vm._e()]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.AVAILABLE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\",\"disabled\":_vm.availableSelected.length == 0},on:{\"click\":function($event){return _vm.addUsersToGroup({availableSelected: _vm.availableSelected})}}},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.BTNS.ADD_USERS')))])],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.addRemoveUsersHeaders,\"items\":_vm.availableUsers,\"items-per-page\":10,\"item-key\":\"id\",\"sort-by\":\"lastName\",\"sort-desc\":false,\"loading-text\":\"Loading... Please wait\",\"show-select\":\"\"},model:{value:(_vm.availableSelected),callback:function ($$v) {_vm.availableSelected=$$v},expression:\"availableSelected\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.ASSIGNED'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\",\"disabled\":_vm.assignedSelected.length == 0},on:{\"click\":function($event){return _vm.removeUsersFromGroup({assignedSelected: _vm.assignedSelected})}}},[_vm._v(_vm._s(_vm.$t('ADMIN.GROUPS.ADD_REMOVE_USERS.BTNS.REMOVE_USERS')))])],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.addRemoveUsersHeaders,\"items\":_vm.assignedUsers,\"items-per-page\":10,\"item-key\":\"id\",\"sort-by\":\"lastName\",\"sort-desc\":false,\"loading-text\":\"Loading... Please wait\",\"show-select\":\"\"},model:{value:(_vm.assignedSelected),callback:function ($$v) {_vm.assignedSelected=$$v},expression:\"assignedSelected\"}})],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddRemoveUsers()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1)],1)],1)],1)],1),(_vm.theCurrentRole == 'adminRole')?_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.ADMIN_SUPPORT.TITLE'))+\" \")]),_c('v-form',[_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.ADMIN_SUPPORT.DESC'))+\" \")]),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.SETTINGS.ADMIN_SUPPORT.FIELDS.EMAIL')},model:{value:(_vm.supportEmailAddress),callback:function ($$v) {_vm.supportEmailAddress=$$v},expression:\"supportEmailAddress\"}})],1)],1),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveSupportEmail()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.PROCESS_CONTROL.TITLE'))+\" \")]),_c('v-form',[_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.PROCESS_CONTROL.DESC'))+\" \")]),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"warning\",\"label\":_vm.$t('ADMIN.SETTINGS.PROCESS_CONTROL.UNDEPLOY_LABEL')},on:{\"change\":function($event){return _vm.toggleUndeploy()}},model:{value:(_vm.enableUndeploy),callback:function ($$v) {_vm.enableUndeploy=$$v},expression:\"enableUndeploy\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"warning\",\"label\":_vm.$t('ADMIN.SETTINGS.PROCESS_CONTROL.DELETION_LABEL')},on:{\"change\":function($event){return _vm.toggleDeletion()}},model:{value:(_vm.enableDeletion),callback:function ($$v) {_vm.enableDeletion=$$v},expression:\"enableDeletion\"}})],1)],1)],1)],1)],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.TITLE'))+\" \")]),_c('v-form',{key:_vm.mailFormKey},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.MSG')},on:{\"change\":function($event){return _vm.toggleMailType()}},model:{value:(_vm.isMSG),callback:function ($$v) {_vm.isMSG=$$v},expression:\"isMSG\"}})],1)],1),(!_vm.isMSG)?_c('v-row',[_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailHost\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.HOST')},model:{value:(_vm.serverDetails.emailHost),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailHost\", $$v)},expression:\"serverDetails.emailHost\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailPort\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.PORT')},model:{value:(_vm.serverDetails.emailPort),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailPort\", $$v)},expression:\"serverDetails.emailPort\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailSender\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.SENDER')},model:{value:(_vm.serverDetails.emailSender),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailSender\", $$v)},expression:\"serverDetails.emailSender\"}})],1)],1):_vm._e(),(!_vm.isMSG)?_c('v-row',[_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailUsername\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.USERNAME')},model:{value:(_vm.serverDetails.emailUsername),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailUsername\", $$v)},expression:\"serverDetails.emailUsername\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"name\":\"emailPassword\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.PASS')},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.serverDetails.emailPassword),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailPassword\", $$v)},expression:\"serverDetails.emailPassword\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.TLS_LABEL')},model:{value:(_vm.serverDetails.emailTls),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailTls\", $$v)},expression:\"serverDetails.emailTls\"}})],1)],1):_vm._e(),(_vm.isMSG)?_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailGraphClientId\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.GRAPH_CLIENT_ID')},model:{value:(_vm.serverDetails.emailGraphClientId),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailGraphClientId\", $$v)},expression:\"serverDetails.emailGraphClientId\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'password',\"name\":\"emailGraphClientSecret\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.GRAPH_CLIENT_SECRET')},model:{value:(_vm.serverDetails.emailGraphClientSecret),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailGraphClientSecret\", $$v)},expression:\"serverDetails.emailGraphClientSecret\"}})],1)],1):_vm._e(),(_vm.isMSG)?_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailGraphEmailId\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.GRAPH_EMAIL_ID')},model:{value:(_vm.serverDetails.emailGraphEmailId),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailGraphEmailId\", $$v)},expression:\"serverDetails.emailGraphEmailId\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"emailGraphTenantId\",\"label\":_vm.$t('ADMIN.SETTINGS.EMAIL_SERVER.FIELDS.GRAPH_TENANT_ID')},model:{value:(_vm.serverDetails.emailGraphTenantId),callback:function ($$v) {_vm.$set(_vm.serverDetails, \"emailGraphTenantId\", $$v)},expression:\"serverDetails.emailGraphTenantId\"}})],1)],1):_vm._e(),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveEmailServer()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.TITLE'))+\" \")]),_c('v-form',[_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.LOCAL'))+\" \")]),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.LOCAL_LABEL'),\"disabled\":_vm.disableLocal},on:{\"change\":function($event){return _vm.toggleStorage('local')}},model:{value:(_vm.storageDetails.localEnabled),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"localEnabled\", $$v)},expression:\"storageDetails.localEnabled\"}})],1)],1),_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.OFFICE365'))+\" \")]),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.OFFICE365_LABEL'),\"disabled\":_vm.disableOffice},on:{\"change\":function($event){return _vm.toggleStorage('office')}},model:{value:(_vm.storageDetails.officeEnabled),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeEnabled\", $$v)},expression:\"storageDetails.officeEnabled\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"officeTenantId\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.FIELDS.TENANT_ID')},model:{value:(_vm.storageDetails.officeTenantId),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeTenantId\", $$v)},expression:\"storageDetails.officeTenantId\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"officeClientId\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.FIELDS.CLIENT_ID')},model:{value:(_vm.storageDetails.officeClientId),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeClientId\", $$v)},expression:\"storageDetails.officeClientId\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"officeClientSecret\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.FIELDS.CLIENT_SECRET')},model:{value:(_vm.storageDetails.officeClientSecret),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeClientSecret\", $$v)},expression:\"storageDetails.officeClientSecret\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"officeGroupName\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.FIELDS.GROUP_NAME')},model:{value:(_vm.storageDetails.officeGroupName),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeGroupName\", $$v)},expression:\"storageDetails.officeGroupName\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"name\":\"officeUploadPath\",\"label\":_vm.$t('ADMIN.SETTINGS.FILE_STORAGE.FIELDS.UPLOAD_PATH')},model:{value:(_vm.storageDetails.officeUploadPath),callback:function ($$v) {_vm.$set(_vm.storageDetails, \"officeUploadPath\", $$v)},expression:\"storageDetails.officeUploadPath\"}})],1)],1),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveStorageDetails()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)],1)],1)],1)],1):_vm._e(),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.CONNECTIONS.ENGINES.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.CONNECTIONS.ENGINES.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchHqConns),callback:function ($$v) {_vm.searchHqConns=$$v},expression:\"searchHqConns\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.refreshRemoteTenants()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.CONNECTIONS.ENGINES.BTNS.REFRESH_TENANTS')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.addHqConnection()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.CONNECTIONS.ENGINES.BTNS.ADD_CONNECTION')))])],1),_c('v-data-table',{staticClass:\"elevation-1 conn-list\",attrs:{\"headers\":_vm.hqConnHeaders,\"items\":_vm.allHqConns,\"items-per-page\":10,\"search\":_vm.searchHqConns,\"item-key\":\"ID\",\"sort-by\":_vm.hqConnSortBy,\"sort-desc\":_vm.hqConnSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingConns},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editHqConnection(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteHqConnection(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editHqConnDialog),callback:function ($$v) {_vm.editHqConnDialog=$$v},expression:\"editHqConnDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editHqConnTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editHqConnText))]),_c('v-form',{ref:\"editHqConnForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.ENGINES.FIELDS.ENGINE_URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.hqUrl),callback:function ($$v) {_vm.hqUrl=$$v},expression:\"hqUrl\"}},[_vm._v(_vm._s(_vm.hqUrl))])],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.ENGINES.FIELDS.ENGINE_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.hqName),callback:function ($$v) {_vm.hqName=$$v},expression:\"hqName\"}},[_vm._v(_vm._s(_vm.hqName))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditHqConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditHqConnection({hqUrl: _vm.hqUrl, hqName: _vm.hqName})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteHqConnDialog),callback:function ($$v) {_vm.deleteHqConnDialog=$$v},expression:\"deleteHqConnDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteHqConnTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteHqConnText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteHqConnDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteHqConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addHqConnDialog),callback:function ($$v) {_vm.addHqConnDialog=$$v},expression:\"addHqConnDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addHqConnTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addHqConnText))]),_c('v-form',{ref:\"addHqConnForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.ENGINES.FIELDS.ENGINE_URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.hqUrl),callback:function ($$v) {_vm.hqUrl=$$v},expression:\"hqUrl\"}},[_vm._v(_vm._s(_vm.hqUrl))])],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.ENGINES.FIELDS.ENGINE_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.hqName),callback:function ($$v) {_vm.hqName=$$v},expression:\"hqName\"}},[_vm._v(_vm._s(_vm.hqName))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddHqConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddHqConnection({hqUrl: _vm.hqUrl, hqName: _vm.hqName})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)],1),_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.CONNECTIONS.DATABASES.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchExternalDbs),callback:function ($$v) {_vm.searchExternalDbs=$$v},expression:\"searchExternalDbs\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.addDbConnection()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.CONNECTIONS.DATABASES.BTNS.ADD_CONNECTION')))])],1),_c('v-data-table',{staticClass:\"elevation-1 ext-list\",attrs:{\"headers\":_vm.extDbHeaders,\"items\":_vm.allExtDbs,\"items-per-page\":10,\"search\":_vm.searchExternalDbs,\"item-key\":\"ID\",\"sort-by\":_vm.extDbSortBy,\"sort-desc\":_vm.extDbSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingExts},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editDbConnection(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteDbConnection(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editDbDialog),callback:function ($$v) {_vm.editDbDialog=$$v},expression:\"editDbDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editDbTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editDbText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.CONN_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbConnType),callback:function ($$v) {_vm.dbConnType=$$v},expression:\"dbConnType\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.DB_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbName),callback:function ($$v) {_vm.dbName=$$v},expression:\"dbName\"}},[_vm._v(_vm._s(_vm.dbName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.SERVER_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbIpAddr),callback:function ($$v) {_vm.dbIpAddr=$$v},expression:\"dbIpAddr\"}},[_vm._v(_vm._s(_vm.dbIpAddr))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.SERVER_PORT'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbPort),callback:function ($$v) {_vm.dbPort=$$v},expression:\"dbPort\"}},[_vm._v(_vm._s(_vm.dbPort))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.USERNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbUser),callback:function ($$v) {_vm.dbUser=$$v},expression:\"dbUser\"}},[_vm._v(_vm._s(_vm.dbUser))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.required]},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.dbPass),callback:function ($$v) {_vm.dbPass=$$v},expression:\"dbPass\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditDbConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditDbConnection({dbConnType: _vm.dbConnType, dbName: _vm.dbName, dbIpAddr: _vm.dbIpAddr, dbPort: _vm.dbPort, dbUser: _vm.dbUser, dbPass: _vm.dbPass})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteDbDialog),callback:function ($$v) {_vm.deleteDbDialog=$$v},expression:\"deleteDbDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteDbTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteDbText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDbDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteDbConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addDbDialog),callback:function ($$v) {_vm.addDbDialog=$$v},expression:\"addDbDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addDbTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addDbText))]),_c('v-form',{ref:\"addDbForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.CONN_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbConnType),callback:function ($$v) {_vm.dbConnType=$$v},expression:\"dbConnType\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.DB_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbName),callback:function ($$v) {_vm.dbName=$$v},expression:\"dbName\"}},[_vm._v(_vm._s(_vm.dbName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.SERVER_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbIpAddr),callback:function ($$v) {_vm.dbIpAddr=$$v},expression:\"dbIpAddr\"}},[_vm._v(_vm._s(_vm.dbIpAddr))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.SERVER_PORT'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbPort),callback:function ($$v) {_vm.dbPort=$$v},expression:\"dbPort\"}},[_vm._v(_vm._s(_vm.dbPort))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.USERNAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.dbUser),callback:function ($$v) {_vm.dbUser=$$v},expression:\"dbUser\"}},[_vm._v(_vm._s(_vm.dbUser))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.CONNECTIONS.DATABASES.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.required]},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.dbPass),callback:function ($$v) {_vm.dbPass=$$v},expression:\"dbPass\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddDbConnection()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddDbConnection({dbConnType: _vm.dbConnType, dbName: _vm.dbName, dbIpAddr: _vm.dbIpAddr, dbPort: _vm.dbPort, dbUser: _vm.dbUser, dbPass: _vm.dbPass})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.connCheckDialog),callback:function ($$v) {_vm.connCheckDialog=$$v},expression:\"connCheckDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('ADMIN.CONNECTIONS.DATABASES.CONNECTION_CHECK.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.CONNECTIONS.DATABASES.CONNECTION_CHECK.DESC')))]),_c('v-btn',{attrs:{\"small\":\"\",\"color\":_vm.loadingCheckColour,\"width\":\"100%\",\"loading\":_vm.loadingCheck}},[_vm._v(_vm._s(_vm.connCheckStatus))])],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.connCheckDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1)],1)],1)],1)],1),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.API_VAULT.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.API_VAULT.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchApis),callback:function ($$v) {_vm.searchApis=$$v},expression:\"searchApis\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.addApi()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.API_VAULT.BTNS.ADD_API')))])],1),_c('v-data-table',{staticClass:\"elevation-1 api-list\",attrs:{\"headers\":_vm.apiHeadings,\"items\":_vm.allApis,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchApis,\"item-key\":\"id\",\"sort-by\":_vm.apisSortBy,\"sort-desc\":_vm.apisSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingApis},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editApi(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteApi(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editApiDialog),callback:function ($$v) {_vm.editApiDialog=$$v},expression:\"editApiDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editApiTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editApiText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.FRIENDLY_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiName),callback:function ($$v) {_vm.apiName=$$v},expression:\"apiName\"}},[_vm._v(_vm._s(_vm.apiName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allAuthTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.AUTH_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiAuthType),callback:function ($$v) {_vm.apiAuthType=$$v},expression:\"apiAuthType\"}})],1)],1),(_vm.apiAuthType == 'basic')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.USERNAME')},model:{value:(_vm.basicUser),callback:function ($$v) {_vm.basicUser=$$v},expression:\"basicUser\"}},[_vm._v(_vm._s(_vm.basicUser))])],1)],1):_vm._e(),(_vm.apiAuthType == 'basic')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.PASS'),\"type\":\"password\"},model:{value:(_vm.basicPass),callback:function ($$v) {_vm.basicPass=$$v},expression:\"basicPass\"}},[_vm._v(_vm._s(_vm.basicPass))])],1)],1):_vm._e(),(_vm.apiAuthType == 'apiKey')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.API_KEY')},model:{value:(_vm.apiKey),callback:function ($$v) {_vm.apiKey=$$v},expression:\"apiKey\"}},[_vm._v(_vm._s(_vm.apiKey))])],1)],1):_vm._e(),(_vm.apiAuthType == 'apiKey')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.API_VALUE'),\"type\":\"password\"},model:{value:(_vm.apiValue),callback:function ($$v) {_vm.apiValue=$$v},expression:\"apiValue\"}},[_vm._v(_vm._s(_vm.apiValue))])],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allGrantTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.GRANT_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiGrantType),callback:function ($$v) {_vm.apiGrantType=$$v},expression:\"apiGrantType\"}})],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.CLIENT_ID'),\"type\":\"password\",\"rules\":[_vm.rules.required]},model:{value:(_vm.apiClientId),callback:function ($$v) {_vm.apiClientId=$$v},expression:\"apiClientId\"}},[_vm._v(_vm._s(_vm.apiClientId))])],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.CLIENT_SECRET'),\"type\":\"password\",\"rules\":[_vm.rules.required]},model:{value:(_vm.apiClientSecret),callback:function ($$v) {_vm.apiClientSecret=$$v},expression:\"apiClientSecret\"}},[_vm._v(_vm._s(_vm.apiClientSecret))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.ENDPOINT_URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiEndpoint),callback:function ($$v) {_vm.apiEndpoint=$$v},expression:\"apiEndpoint\"}},[_vm._v(_vm._s(_vm.apiEndpoint))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditApi()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditApi({apiId: _vm.apiId, apiName: _vm.apiName, apiAuthType: _vm.apiAuthType, basicUser: _vm.basicUser, basicPass: _vm.basicPass, apiKey: _vm.apiKey, apiValue: _vm.apiValue, apiGrantType: _vm.apiGrantType, apiClientId: _vm.apiClientId, apiClientSecret: _vm.apiClientSecret, apiEndpoint: _vm.apiEndpoint, apiHeaders: _vm.apiHeaders})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteApiDialog),callback:function ($$v) {_vm.deleteApiDialog=$$v},expression:\"deleteApiDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteApiTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteApiText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteApiDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteApi({apiId: _vm.apiId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addApiDialog),callback:function ($$v) {_vm.addApiDialog=$$v},expression:\"addApiDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addApiTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addApiText))]),_c('v-form',{ref:\"addApiForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.FRIENDLY_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiName),callback:function ($$v) {_vm.apiName=$$v},expression:\"apiName\"}},[_vm._v(_vm._s(_vm.apiName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allAuthTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.AUTH_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiAuthType),callback:function ($$v) {_vm.apiAuthType=$$v},expression:\"apiAuthType\"}})],1)],1),(_vm.apiAuthType == 'basic')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.USERNAME'),\"autocomplete\":\"new-password\"},model:{value:(_vm.basicUser),callback:function ($$v) {_vm.basicUser=$$v},expression:\"basicUser\"}},[_vm._v(_vm._s(_vm.basicUser))])],1)],1):_vm._e(),(_vm.apiAuthType == 'basic')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.PASS'),\"type\":\"password\",\"autocomplete\":\"new-password\"},model:{value:(_vm.basicPass),callback:function ($$v) {_vm.basicPass=$$v},expression:\"basicPass\"}},[_vm._v(_vm._s(_vm.basicPass))])],1)],1):_vm._e(),(_vm.apiAuthType == 'apiKey')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.API_KEY'),\"autocomplete\":\"new-password\"},model:{value:(_vm.apiKey),callback:function ($$v) {_vm.apiKey=$$v},expression:\"apiKey\"}},[_vm._v(_vm._s(_vm.apiKey))])],1)],1):_vm._e(),(_vm.apiAuthType == 'apiKey')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.API_VALUE'),\"type\":\"password\",\"autocomplete\":\"new-password\"},model:{value:(_vm.apiValue),callback:function ($$v) {_vm.apiValue=$$v},expression:\"apiValue\"}},[_vm._v(_vm._s(_vm.apiValue))])],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allGrantTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.GRANT_TYPE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiGrantType),callback:function ($$v) {_vm.apiGrantType=$$v},expression:\"apiGrantType\"}})],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.CLIENT_ID'),\"type\":\"password\",\"autocomplete\":\"new-password\",\"rules\":[_vm.rules.required]},model:{value:(_vm.apiClientId),callback:function ($$v) {_vm.apiClientId=$$v},expression:\"apiClientId\"}},[_vm._v(_vm._s(_vm.apiClientId))])],1)],1):_vm._e(),(_vm.apiAuthType == 'oAuth2')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.CLIENT_SECRET'),\"type\":\"password\",\"autocomplete\":\"new-password\",\"rules\":[_vm.rules.required]},model:{value:(_vm.apiClientSecret),callback:function ($$v) {_vm.apiClientSecret=$$v},expression:\"apiClientSecret\"}},[_vm._v(_vm._s(_vm.apiClientSecret))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.API_VAULT.FIELDS.ENDPOINT_URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiEndpoint),callback:function ($$v) {_vm.apiEndpoint=$$v},expression:\"apiEndpoint\"}},[_vm._v(_vm._s(_vm.apiEndpoint))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddApi()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddApi({apiName: _vm.apiName, apiAuthType: _vm.apiAuthType, basicUser: _vm.basicUser, basicPass: _vm.basicPass, apiKey: _vm.apiKey, apiValue: _vm.apiValue, apiGrantType: _vm.apiGrantType, apiClientId: _vm.apiClientId, apiClientSecret: _vm.apiClientSecret, apiEndpoint: _vm.apiEndpoint, apiHeaders: _vm.apiHeaders})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)],1)],1)],1)],1),(_vm.theCurrentRole == 'adminRole')?_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.TITLE'))+\" \")]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.TOGGLE')},on:{\"change\":function($event){return _vm.toggleLdap()}},model:{value:(_vm.ssoDetails.ldapEnabled),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapEnabled\", $$v)},expression:\"ssoDetails.ldapEnabled\"}})],1),_c('v-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[(_vm.showLdap)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"depressed\":\"\",\"color\":\"warning\",\"loading\":_vm.loadingLdapGroups},on:{\"click\":function($event){return _vm.ldapSelect('groups')}}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.BTNS.SYNC_GROUPS')))]):_vm._e(),(_vm.showLdap)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"depressed\":\"\",\"color\":\"warning\",\"loading\":_vm.loadingLdapUsers},on:{\"click\":function($event){return _vm.ldapSelect('users')}}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.BTNS.SYNC_USERS')))]):_vm._e(),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveSsoDetails()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1),_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.DESC'))+\" \")]),(_vm.showLdap)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.SERVER_ADDRESS'),\"autocomplete\":\"new-password\"},model:{value:(_vm.ssoDetails.ldapServer),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapServer\", $$v)},expression:\"ssoDetails.ldapServer\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'number',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.SERVER_PORT')},model:{value:(_vm.ssoDetails.ldapPort),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapPort\", $$v)},expression:\"ssoDetails.ldapPort\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.ADMIN_USER_DN'),\"autocomplete\":\"new-password\"},model:{value:(_vm.ssoDetails.ldapUsername),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapUsername\", $$v)},expression:\"ssoDetails.ldapUsername\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'password',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.ADMIN_PASS'),\"autocomplete\":\"new-password\"},model:{value:(_vm.ssoDetails.ldapPassword),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapPassword\", $$v)},expression:\"ssoDetails.ldapPassword\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.BASE_DN'),\"autocomplete\":\"new-password\"},model:{value:(_vm.ssoDetails.ldapBaseDn),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapBaseDn\", $$v)},expression:\"ssoDetails.ldapBaseDn\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.USER_IDENTIFIER')},model:{value:(_vm.ssoDetails.ldapIdentifier),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapIdentifier\", $$v)},expression:\"ssoDetails.ldapIdentifier\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.USERS_CN')},model:{value:(_vm.ssoDetails.ldapUsersCn),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapUsersCn\", $$v)},expression:\"ssoDetails.ldapUsersCn\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.GROUPS_CN')},model:{value:(_vm.ssoDetails.ldapGroupsCn),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapGroupsCn\", $$v)},expression:\"ssoDetails.ldapGroupsCn\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.TLS_LABEL')},model:{value:(_vm.ssoDetails.ldapTls),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapTls\", $$v)},expression:\"ssoDetails.ldapTls\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.LOGIN_TOGGLE'),\"disabled\":_vm.disableLdapLogin},on:{\"change\":function($event){return _vm.toggleSso('ldap')}},model:{value:(_vm.ssoDetails.ldapLoginEnabled),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"ldapLoginEnabled\", $$v)},expression:\"ssoDetails.ldapLoginEnabled\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.AUTO_SYNC')},model:{value:(_vm.ldapAutoSync),callback:function ($$v) {_vm.ldapAutoSync=$$v},expression:\"ldapAutoSync\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[(_vm.ldapAutoSync)?_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.FIELDS.AUTO_SYNC_TIME'),\"placeholder\":\"* * * * *\",\"rules\":[_vm.rules.required]},model:{value:(_vm.ldapAutoSyncTime),callback:function ($$v) {_vm.ldapAutoSyncTime=$$v},expression:\"ldapAutoSyncTime\"}}):_vm._e()],1)],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1200\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.ldapSelectGroupsDialog),callback:function ($$v) {_vm.ldapSelectGroupsDialog=$$v},expression:\"ldapSelectGroupsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_GROUPS.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_GROUPS.DESC')))])]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_GROUPS.AVAILABLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_GROUPS.AVAILABLE_SEARCH'),\"single-line\":\"\",\"hide-details\":\"\",\"clearable\":\"\"},model:{value:(_vm.ldapTreeSearch),callback:function ($$v) {_vm.ldapTreeSearch=$$v},expression:\"ldapTreeSearch\"}})],1),_c('v-sheet',{staticClass:\"rounded\",attrs:{\"elevation\":\"1\"}},[_c('v-treeview',{attrs:{\"selectable\":\"\",\"items\":_vm.availableLdapTree,\"item-key\":\"id\",\"item-text\":\"name\",\"search\":_vm.ldapTreeSearch,\"open-on-click\":\"\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.children)?_c('v-icon',[_vm._v(_vm._s((\"mdi-\" + (item.id === 1 ? 'home-variant' : 'folder-network'))))]):_vm._e(),(!item.children && item.id != 1)?_c('v-icon',[_vm._v(_vm._s(\"mdi-account-multiple\"))]):_vm._e()]}}],null,false,108886837),model:{value:(_vm.availableLdapGroupsSelected),callback:function ($$v) {_vm.availableLdapGroupsSelected=$$v},expression:\"availableLdapGroupsSelected\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelLdapSelect()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmLdapSelectGroups({availableLdapGroupsSelected: _vm.availableLdapGroupsSelected})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1200\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.ldapSelectUsersDialog),callback:function ($$v) {_vm.ldapSelectUsersDialog=$$v},expression:\"ldapSelectUsersDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_USERS.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_USERS.DESC')))])]),_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_USERS.AVAILABLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.LDAP_SSO.LDAP.SYNC_USERS.AVAILABLE_SEARCH'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.ldapUserSearch),callback:function ($$v) {_vm.ldapUserSearch=$$v},expression:\"ldapUserSearch\"}})],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.ldapUsersHeaders,\"items\":_vm.availableLdapUsers,\"items-per-page\":10,\"search\":_vm.ldapUserSearch,\"item-key\":\"distinguishedName\",\"sort-by\":\"sn\",\"sort-desc\":false,\"loading-text\":\"Loading... Please wait\",\"show-select\":\"\"},model:{value:(_vm.availableLdapUsersSelected),callback:function ($$v) {_vm.availableLdapUsersSelected=$$v},expression:\"availableLdapUsersSelected\"}})],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelLdapSelect()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmLdapSelectUsers({availableLdapUsersSelected: _vm.availableLdapUsersSelected})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1200\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.ldapSyncingDialog),callback:function ($$v) {_vm.ldapSyncingDialog=$$v},expression:\"ldapSyncingDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.LDAP_SYNC.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",attrs:{\"loading\":_vm.loadingLdapSync}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.LDAP.LDAP_SYNC.DESC')))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.ldapSyncingDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))])],1)],1)]],2)],1)],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.TITLE'))+\" \")]),_c('v-form',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.MSAL.TOGGLE'),\"disabled\":_vm.disableMsal},on:{\"change\":function($event){return _vm.toggleSso('msal')}},model:{value:(_vm.ssoDetails.msalEnabled),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"msalEnabled\", $$v)},expression:\"ssoDetails.msalEnabled\"}})],1),_c('v-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[(_vm.ssoDetails.msalEnabled)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"depressed\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.msalDialog = !_vm.msalDialog}}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.BTNS.HELP')))]):_vm._e(),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveSsoDetails()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1),_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.DESC'))+\" \")]),(_vm.ssoDetails.msalEnabled)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.MSAL.FIELDS.CLIENT_ID')},model:{value:(_vm.ssoDetails.msalClientId),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"msalClientId\", $$v)},expression:\"ssoDetails.msalClientId\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.MSAL.FIELDS.AUTHORITY')},model:{value:(_vm.ssoDetails.msalAuthority),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"msalAuthority\", $$v)},expression:\"ssoDetails.msalAuthority\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.MSAL.FIELDS.REDIRECT_URI')},model:{value:(_vm.ssoDetails.msalRedirectUri),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"msalRedirectUri\", $$v)},expression:\"ssoDetails.msalRedirectUri\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.MSAL.AUTH_STATE_LABEL')},model:{value:(_vm.ssoDetails.msalAuthState),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"msalAuthState\", $$v)},expression:\"ssoDetails.msalAuthState\"}})],1)],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.msalDialog),callback:function ($$v) {_vm.msalDialog=$$v},expression:\"msalDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.DESC')))]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_1'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_2'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_3'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_4'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_5'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_6'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_7'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_8'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_9'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_10'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_11'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_12'))}}),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.$t('ADMIN.LDAP_SSO.MSAL.HELP_TEXT.HELP_TEXT_13'))}})]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.msalDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1)],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.SAML.TITLE'))+\" \")]),_c('v-form',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.TOGGLE'),\"disabled\":_vm.disableSaml},on:{\"change\":function($event){return _vm.toggleSso('saml')}},model:{value:(_vm.ssoDetails.samlEnabled),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlEnabled\", $$v)},expression:\"ssoDetails.samlEnabled\"}})],1),_c('v-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\"}},[_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveSsoDetails()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1),_c('v-card-subtitle',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LDAP_SSO.SAML.DESC'))+\" \")]),(_vm.ssoDetails.samlEnabled)?_c('div',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-card-subtitle',[_c('b',[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.SAML.SP_TITLE')))])]),_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.SP_ENTITY_ID'),\"disabled\":\"\"},model:{value:(_vm.ssoDetails.samlSpId),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlSpId\", $$v)},expression:\"ssoDetails.samlSpId\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-card-subtitle',[_c('b',[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.SAML.IP_TITLE')))])]),_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_ENTITY_ID')},model:{value:(_vm.ssoDetails.samlIpId),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpId\", $$v)},expression:\"ssoDetails.samlIpId\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.SP_REPLY_URL'),\"disabled\":\"\"},model:{value:(_vm.ssoDetails.samlSpAcs),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlSpAcs\", $$v)},expression:\"ssoDetails.samlSpAcs\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_SOS')},model:{value:(_vm.ssoDetails.samlIpSos),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpSos\", $$v)},expression:\"ssoDetails.samlIpSos\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.SP_SLS'),\"disabled\":\"\"},model:{value:(_vm.ssoDetails.samlSpSls),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlSpSls\", $$v)},expression:\"ssoDetails.samlSpSls\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_SLS')},model:{value:(_vm.ssoDetails.samlIpSls),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpSls\", $$v)},expression:\"ssoDetails.samlIpSls\"}})],1)],1),_c('v-card-subtitle',[_c('b',[_vm._v(_vm._s(_vm.$t('ADMIN.LDAP_SSO.SAML.CFG_TITLE')))])]),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_EMAIL_ATTR')},model:{value:(_vm.ssoDetails.samlIpEmailAttr),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpEmailAttr\", $$v)},expression:\"ssoDetails.samlIpEmailAttr\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_FIRSTNAME_ATTR')},model:{value:(_vm.ssoDetails.samlIpFirstAttr),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpFirstAttr\", $$v)},expression:\"ssoDetails.samlIpFirstAttr\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.IP_LASTNAME_ATTR')},model:{value:(_vm.ssoDetails.samlIpLastAttr),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlIpLastAttr\", $$v)},expression:\"ssoDetails.samlIpLastAttr\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-select',{attrs:{\"items\":_vm.sigAlgorithms,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.SIG_ALG_LABEL')},model:{value:(_vm.ssoDetails.samlSigAlg),callback:function ($$v) {_vm.$set(_vm.ssoDetails, \"samlSigAlg\", $$v)},expression:\"ssoDetails.samlSigAlg\"}})],1),_c('v-col',{staticClass:\"pt-8\",attrs:{\"md\":\"6\"}},[_c('v-file-input',{attrs:{\"label\":_vm.ssoDetails.samlIpCert.length > 0 ? _vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.CERT_EXISTS_LABEL') : _vm.$t('ADMIN.LDAP_SSO.SAML.FIELDS.CERT_UPLOAD_LABEL')},model:{value:(_vm.samlIpCert),callback:function ($$v) {_vm.samlIpCert=$$v},expression:\"samlIpCert\"}})],1)],1)],1):_vm._e()],1)],1)],1)],1)],1)],1):_vm._e(),(_vm.theCurrentRole == 'adminRole')?_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.OPS_LOG.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.OPS_LOG.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchOpLog),callback:function ($$v) {_vm.searchOpLog=$$v},expression:\"searchOpLog\"}})],1),_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"error\",\"label\":_vm.enablePentest ? _vm.$t('ADMIN.OPS_LOG.PEN_TEST_MODE_ON') : _vm.$t('ADMIN.OPS_LOG.PEN_TEST_MODE_OFF')},on:{\"change\":function($event){return _vm.togglePentest()}},model:{value:(_vm.enablePentest),callback:function ($$v) {_vm.enablePentest=$$v},expression:\"enablePentest\"}})],1)],1),_c('v-row',{staticClass:\"mx-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"md\":\"5\"}},[_c('v-dialog',{ref:\"logDateFrom\",attrs:{\"return-value\":_vm.dateFrom,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.dateFrom=$event},\"update:return-value\":function($event){_vm.dateFrom=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('ADMIN.OPS_LOG.FIELDS.FROM_DATE'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedDateFrom),callback:function ($$v) {_vm.computedDateFrom=$$v},expression:\"computedDateFrom\"}},'v-text-field',attrs,false),on))]}}],null,false,1960233438),model:{value:(_vm.logDateFrom),callback:function ($$v) {_vm.logDateFrom=$$v},expression:\"logDateFrom\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.dateFrom),callback:function ($$v) {_vm.dateFrom=$$v},expression:\"dateFrom\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.logDateFrom = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.logDateFrom.save(_vm.dateFrom)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"5\",\"md\":\"5\"}},[_c('v-dialog',{ref:\"logDateTo\",attrs:{\"return-value\":_vm.dateTo,\"persistent\":\"\",\"width\":\"290px\"},on:{\"update:returnValue\":function($event){_vm.dateTo=$event},\"update:return-value\":function($event){_vm.dateTo=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('ADMIN.OPS_LOG.FIELDS.TO_DATE'),\"prepend-icon\":\"mdi-calendar\"},model:{value:(_vm.computedDateTo),callback:function ($$v) {_vm.computedDateTo=$$v},expression:\"computedDateTo\"}},'v-text-field',attrs,false),on))]}}],null,false,48875966),model:{value:(_vm.logDateTo),callback:function ($$v) {_vm.logDateTo=$$v},expression:\"logDateTo\"}},[_c('v-date-picker',{attrs:{\"locale\":_vm.$t('GENERAL.LOCALE'),\"scrollable\":\"\"},model:{value:(_vm.dateTo),callback:function ($$v) {_vm.dateTo=$$v},expression:\"dateTo\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.logDateTo = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$refs.logDateTo.save(_vm.dateTo)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"1\",\"md\":\"2\"}},[_c('v-btn',{staticClass:\"mt-3\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.refreshOpLog()}}},[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.OPS_LOG.BTNS.REFRESH'))+\" \")])],1)],1),_c('v-data-table',{staticClass:\"elevation-1 op-list\",attrs:{\"headers\":_vm.opLogHeaders,\"items\":_vm.operationLog,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchOpLog,\"item-key\":\"ID\",\"sort-by\":_vm.opLogSortBy,\"sort-desc\":_vm.opLogSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingOps}})],1)],1)],1)],1)],1):_vm._e(),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.ERROR_LOG.TITLE'))+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('ADMIN.ERROR_LOG.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchErrorLog),callback:function ($$v) {_vm.searchErrorLog=$$v},expression:\"searchErrorLog\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mt-3 mr-3\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.refreshErrorLog()}}},[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.ERROR_LOG.BTNS.REFRESH'))+\" \")]),_c('v-btn',{staticClass:\"mt-3\",attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.clearErrorLog()}}},[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.ERROR_LOG.BTNS.CLEAR'))+\" \")])],1),_c('v-data-table',{staticClass:\"elevation-1 op-list\",attrs:{\"headers\":_vm.errorLogHeaders,\"items\":_vm.errorLog,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchErrorLog,\"item-key\":\"ID\",\"sort-by\":_vm.errorLogSortBy,\"sort-desc\":_vm.errorLogSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingErrors}})],1)],1)],1)],1)],1),(_vm.theCurrentRole == 'adminRole')?_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('ADMIN.LICENSE.TITLE'))+\" \")]),_c('v-form',{ref:\"licenseForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.LICENSE.START_DATE'),\"disabled\":\"\"},model:{value:(_vm.licenseStart),callback:function ($$v) {_vm.licenseStart=$$v},expression:\"licenseStart\"}},[_vm._v(_vm._s(_vm.licenseStart))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.LICENSE.END_DATE'),\"disabled\":\"\"},model:{value:(_vm.licenseExpiry),callback:function ($$v) {_vm.licenseExpiry=$$v},expression:\"licenseExpiry\"}},[_vm._v(_vm._s(_vm.licenseExpiry))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-textarea',{attrs:{\"rows\":\"2\",\"label\":_vm.$t('ADMIN.LICENSE.KEY_TEXT'),\"rules\":[_vm.rules.required, _vm.rules.minLength]},model:{value:(_vm.licenseKey),callback:function ($$v) {_vm.licenseKey=$$v},expression:\"licenseKey\"}}),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"color\":\"success\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.updateLicense()}}},[_vm._v(_vm._s(_vm.$t('ADMIN.LICENSE.KEY_BTN')))])],1)],1)],1)],1)],1)],1)],1)],1):_vm._e()],1),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./admin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./admin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./admin.vue?vue&type=template&id=381ee772&\"\nimport script from \"./admin.vue?vue&type=script&lang=js&\"\nexport * from \"./admin.vue?vue&type=script&lang=js&\"\nimport style0 from \"./admin.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardSubtitle } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VTreeview } from 'vuetify/lib/components/VTreeview';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardSubtitle,VCardText,VCardTitle,VCheckbox,VCol,VContainer,VDataTable,VDatePicker,VDialog,VFileInput,VForm,VIcon,VRow,VSelect,VSheet,VSnackbar,VSpacer,VSwitch,VTab,VTabItem,VTabs,VTabsItems,VTextField,VTextarea,VToolbar,VTreeview})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Admin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Admin.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Admin.vue?vue&type=template&id=146bc892&\"\nimport script from \"./Admin.vue?vue&type=script&lang=js&\"\nexport * from \"./Admin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('formbuilder')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('FORMS.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.allHqConns.length == 0},on:{\"click\":function($event){return _vm.promoteForms()}}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.PROMOTE')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.importForm()}}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.IMPORT')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.buildForm()}}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.NEW')))])],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.allForms,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCKED == 1)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.showLocked(row.item)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-lock\")])],1):_vm._e(),(row.item.IS_DEPLOYED == 1 || row.item.IS_LOCKED == 1)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.viewForm(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.VIEW'))+\" \")]):_vm._e(),(row.item.IS_DEPLOYED == 0 && row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editForm(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.copyForm(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.COPY'))+\" \")]),(row.item.IS_DEPLOYED == 0 && row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteForm(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")]):_vm._e()]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDelete({formId: _vm.formId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.importFormDialog),callback:function ($$v) {_vm.importFormDialog=$$v},expression:\"importFormDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.importTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.importText))]),_c('v-file-input',{attrs:{\"label\":_vm.$t('FORMS.IMPORT_FORM.FIELDS.FILE_LABEL')},model:{value:(_vm.importedFile),callback:function ($$v) {_vm.importedFile=$$v},expression:\"importedFile\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelImportForm()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmImportForm()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteFormsDialog),callback:function ($$v) {_vm.promoteFormsDialog=$$v},expression:\"promoteFormsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteFormsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteFormsText))]),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.promoteHeaders,\"items\":_vm.allForms,\"items-per-page\":10,\"item-key\":\"ID\",\"sort-by\":\"ID\",\"sort-desc\":true,\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},model:{value:(_vm.formPromote),callback:function ($$v) {_vm.formPromote=$$v},expression:\"formPromote\"}}),_c('v-form',{ref:\"promoteForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.PROMOTE.FIELDS.ENGINE'),\"items\":_vm.allHqConns,\"item-text\":\"ENGINE_NAME\",\"item-value\":\"URL\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedExternalEngine),callback:function ($$v) {_vm.selectedExternalEngine=$$v},expression:\"selectedExternalEngine\"}})],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelPromote()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmPromoteForms()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteCheckDialog),callback:function ($$v) {_vm.promoteCheckDialog=$$v},expression:\"promoteCheckDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteCheckTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteCheckText))]),_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteCheckText2)}})]),_c('v-card-actions',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.promoteCheckCancel}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),(_vm.promoteOverwrite > 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.NO_OVERWRITE')))]):_vm._e(),_c('v-spacer'),(_vm.promoteOverwrite > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":_vm.promoteCheckOverwrite}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.OVERWRITE')))]):_vm._e(),(_vm.promoteOverwrite == 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))]):_vm._e()],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteResultsDialog),callback:function ($$v) {_vm.promoteResultsDialog=$$v},expression:\"promoteResultsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteResultsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteResultsText)}})]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.promoteResultsDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.showLockedDialog),callback:function ($$v) {_vm.showLockedDialog=$$v},expression:\"showLockedDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.lockedTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.lockedText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.forceUnlock()}}},[_vm._v(_vm._s(_vm.$t('FORMS.BTNS.FORCE_UNLOCK')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.showLockedDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.showDeployedDialog),callback:function ($$v) {_vm.showDeployedDialog=$$v},expression:\"showDeployedDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deployedTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deployedText))])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.showDeployedDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formbuilder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./formbuilder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./formbuilder.vue?vue&type=template&id=1729e694&\"\nimport script from \"./formbuilder.vue?vue&type=script&lang=js&\"\nexport * from \"./formbuilder.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VFileInput,VForm,VIcon,VSelect,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormBuilder.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormBuilder.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormBuilder.vue?vue&type=template&id=608ba0d2&\"\nimport script from \"./FormBuilder.vue?vue&type=script&lang=js&\"\nexport * from \"./FormBuilder.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('buildform')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',{on:{\"click\":function($event){return _vm.resetStyle()}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.TABS.BUILD'))+\" \")]),_c('v-tab',{on:{\"click\":function($event){return _vm.buildSchema('build')}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.TABS.PREVIEW'))+\" \")])],1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[(_vm.formAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.resetForm()}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.RESET')))]):_vm._e(),_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.exportForm()}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.EXPORT')))]),(_vm.formAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"success\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.buildSchema('save')}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.SAVE')))]):_vm._e(),(_vm.formAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.closeForm('')}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.CLOSE')))]):_vm._e(),(_vm.formAction == 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeForm('view')}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.CLOSE')))]):_vm._e(),_c('v-container',{staticClass:\"build-content\",attrs:{\"id\":\"content-container\"}},[_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[(_vm.formAction != 'view')?_c('v-row',[_c('v-col',{attrs:{\"md\":\"3\"}},[_c('v-select',{attrs:{\"items\":_vm.allProcessXml,\"item-text\":\"PROCESS_NAME\",\"item-value\":\"PROCESS_KEY\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.SELECT_PROCESS'),\"rules\":[_vm.rules.requiredSelect]},on:{\"change\":function($event){return _vm.loadProcessVars()}},model:{value:(_vm.processKey),callback:function ($$v) {_vm.processKey=$$v},expression:\"processKey\"}})],1),_c('v-col',{attrs:{\"md\":\"3\"}},[_c('v-select',{attrs:{\"items\":_vm.versionFilter,\"item-text\":\"VERSION\",\"item-value\":\"VERSION\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.SELECT_VERSION'),\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.processVersion),callback:function ($$v) {_vm.processVersion=$$v},expression:\"processVersion\"}})],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"md\":12}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.FORM_TITLE'),\"disabled\":_vm.formAction == 'view',\"rules\":[_vm.rules.required]},model:{value:(_vm.formTitle),callback:function ($$v) {_vm.formTitle=$$v},expression:\"formTitle\"}})],1),_c('v-btn',{staticClass:\"mb-2\",attrs:{\"color\":\"warning\"},on:{\"click\":function($event){_vm.queryDialog = true}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.QUERIES')))]),_c('v-btn',{staticClass:\"mb-2 float-right\",attrs:{\"color\":\"warning\"},on:{\"click\":function($event){return _vm.openJsEditor()}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.EDITOR')))]),_c('div',{attrs:{\"id\":\"content\"}},[_c('grid-layout',{ref:\"gridlayout\",attrs:{\"layout\":_vm.layout,\"col-num\":12,\"row-height\":50,\"is-draggable\":true,\"is-resizable\":true,\"is-mirrored\":false,\"vertical-compact\":false,\"use-css-transforms\":false,\"prevent-collision\":true},on:{\"update:layout\":function($event){_vm.layout=$event}}},_vm._l((_vm.layout),function(item){return _c('grid-item',{key:item.i,staticClass:\"pl-8\",attrs:{\"x\":item.x,\"y\":item.y,\"w\":item.w,\"h\":item.h,\"maxH\":1,\"i\":item.i,\"is-resizable\":item.data.varType != 'checkbox' && item.data.varType != 'radio' && item.data.varType != 'page' && item.data.varType != 'subform' && !item.isLocked,\"static\":item.data.varType == 'group' || item.isLocked},on:{\"moved\":function($event){return _vm.dragMoved(item)},\"resized\":function($event){return _vm.dragResized(item)}}},[_c('span',{staticClass:\"truncate element-type\"},[_vm._v(_vm._s(item.elementType))]),_vm._v(\" \"),_c('span',{staticClass:\"truncate\"},[_vm._v(_vm._s(item.data.varLabel))]),_vm._v(\" \"),_c('span',{staticClass:\"edit-element\",on:{\"click\":function($event){return _vm.editElement(item)}}},[_c('v-icon',{staticClass:\"mdi mdi-lead-pencil\"})],1),_c('span',{staticClass:\"lock-element\",on:{\"click\":function($event){return _vm.lockElement(item)}}},[(!item.isLocked)?_c('v-icon',{staticClass:\"mdi mdi-lock-open-outline\"}):_vm._e(),(item.isLocked)?_c('v-icon',{staticClass:\"mdi mdi-lock\",attrs:{\"color\":\"orange\"}}):_vm._e()],1)])}),1)],1)],1)],1)],1)],1)],1),_c('v-speed-dial',{attrs:{\"absolute\":\"\",\"bottom\":\"\",\"right\":\"\",\"elevation\":\"2\",\"direction\":\"left\",\"fab\":\"\",\"transition\":\"slide-x-reverse-transition\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(){return [_c('v-btn',{attrs:{\"color\":\"#f87723\",\"dark\":\"\",\"fab\":\"\"},model:{value:(_vm.addBtn),callback:function ($$v) {_vm.addBtn=$$v},expression:\"addBtn\"}},[(_vm.addBtn)?_c('v-icon',[_vm._v(\" mdi-close \")]):_c('v-icon',[_vm._v(\" mdi-plus \")])],1)]},proxy:true}]),model:{value:(_vm.addBtn),callback:function ($$v) {_vm.addBtn=$$v},expression:\"addBtn\"}},[_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('page', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DIVIDER.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.DIVIDER'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('file', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.FILE_UPLOADER.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.FILE_UPLOADER'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('subheader', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBTITLE.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.SUBTITLE'))+\" \")])],1),_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('para', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.PARAGRAPH.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.PARAGRAPH'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('text', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXT.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.TEXT'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('textarea', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXTAREA.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.TEXTAREA'))+\" \")])],1),_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('number', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.NUMBER.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.NUMBER'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('select', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.SELECT'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('autocomplete', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.AUTOCOMPLETE.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.AUTOCOMPLETE'))+\" \")])],1),_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('combobox', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.COMBOBOX.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.COMBOBOX'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('date', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DATE.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.DATE'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('time', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.TIME'))+\" \")])],1),_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('radio', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.RADIO'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('checkbox', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.CHECKBOX'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('link', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.LINK.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.LINK'))+\" \")])],1),_c('div',[_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('img', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.IMAGE.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.IMAGE'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('array', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.GRID'))+\" \")]),_c('v-btn',{attrs:{\"color\":\"#f87723\",\"small\":\"\"},on:{\"click\":function($event){_vm.addField('subform', _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.LABEL'))}}},[_vm._v(\" \"+_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.BTNS.SUBFORM'))+\" \")])],1)]),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.newElementDialog),callback:function ($$v) {_vm.newElementDialog=$$v},expression:\"newElementDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.newElementTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.newElementText))]),_c('v-form',{ref:\"newElement\",model:{value:(_vm.isFieldValid),callback:function ($$v) {_vm.isFieldValid=$$v},expression:\"isFieldValid\"}},[(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-combobox',{attrs:{\"items\":_vm.varFilter,\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.VAR_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces]},model:{value:(_vm.varName),callback:function ($$v) {_vm.varName=$$v},expression:\"varName\"}})],1)],1):_vm._e(),(_vm.varType != 'page' && _vm.varType != 'subform' && _vm.varType != 'title' && _vm.varType != 'para' && _vm.varType != 'img' && _vm.varType != 'link' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.varType == 'group' || _vm.varType == 'subheader' ? _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBTITLE.LABEL') : _vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.FIELD_LABEL'),\"rules\":_vm.varType == 'subheader' ? [_vm.rules.required] : []},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}})],1)],1):_vm._e(),(_vm.varType == 'para' || _vm.varType == 'page')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.varType == 'para')?_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.PARAGRAPH.FIELDS.TITLE')},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}}):_vm._e(),(_vm.varType == 'page')?_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DIVIDER.FIELDS.TITLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}}):_vm._e()],1)],1):_vm._e(),(_vm.varType == 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.LINK.FIELDS.LINK_TEXT'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}})],1)],1):_vm._e(),(_vm.varType == 'img' || _vm.varType == 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varUrl),callback:function ($$v) {_vm.varUrl=$$v},expression:\"varUrl\"}})],1)],1):_vm._e(),(_vm.varType == 'img')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.IMAGE.FIELDS.HEIGHT')},model:{value:(_vm.varMaxH),callback:function ($$v) {_vm.varMaxH=$$v},expression:\"varMaxH\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.IMAGE.FIELDS.WIDTH')},model:{value:(_vm.varMaxW),callback:function ($$v) {_vm.varMaxW=$$v},expression:\"varMaxW\"}})],1)],1):_vm._e(),(_vm.varType == 'date')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"minMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.minDate,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.minDate=$event},\"update:return-value\":function($event){_vm.minDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DATE.FIELDS.MIN_DATE'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.minDate),callback:function ($$v) {_vm.minDate=$$v},expression:\"minDate\"}},'v-text-field',attrs,false),on))]}}],null,false,102919044),model:{value:(_vm.minMenu),callback:function ($$v) {_vm.minMenu=$$v},expression:\"minMenu\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\",\"locale\":_vm.$t('GENERAL.LOCALE')},model:{value:(_vm.minDate),callback:function ($$v) {_vm.minDate=$$v},expression:\"minDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.minMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.minMenu.save(_vm.minDate)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"maxMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.maxDate,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.maxDate=$event},\"update:return-value\":function($event){_vm.maxDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DATE.FIELDS.MAX_DATE'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.maxDate),callback:function ($$v) {_vm.maxDate=$$v},expression:\"maxDate\"}},'v-text-field',attrs,false),on))]}}],null,false,3174833924),model:{value:(_vm.maxMenu),callback:function ($$v) {_vm.maxMenu=$$v},expression:\"maxMenu\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\",\"locale\":_vm.$t('GENERAL.LOCALE')},model:{value:(_vm.maxDate),callback:function ($$v) {_vm.maxDate=$$v},expression:\"maxDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.maxMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.maxMenu.save(_vm.maxDate)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1)],1):_vm._e(),(_vm.varType == 'time')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"minMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.minTime,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.minTime=$event},\"update:return-value\":function($event){_vm.minTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.MIN_TIME'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.minTime),callback:function ($$v) {_vm.minTime=$$v},expression:\"minTime\"}},'v-text-field',attrs,false),on))]}}],null,false,3301759205),model:{value:(_vm.minMenu),callback:function ($$v) {_vm.minMenu=$$v},expression:\"minMenu\"}},[_c('v-time-picker',{attrs:{\"no-title\":\"\",\"format\":\"24hr\"},model:{value:(_vm.minTime),callback:function ($$v) {_vm.minTime=$$v},expression:\"minTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.minMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.minMenu.save(_vm.minTime)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"maxMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.maxTime,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.maxTime=$event},\"update:return-value\":function($event){_vm.maxTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.MAX_TIME'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.maxTime),callback:function ($$v) {_vm.maxTime=$$v},expression:\"maxTime\"}},'v-text-field',attrs,false),on))]}}],null,false,1576909157),model:{value:(_vm.maxMenu),callback:function ($$v) {_vm.maxMenu=$$v},expression:\"maxMenu\"}},[_c('v-time-picker',{attrs:{\"no-title\":\"\",\"format\":\"24hr\"},model:{value:(_vm.maxTime),callback:function ($$v) {_vm.maxTime=$$v},expression:\"maxTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.maxMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.maxMenu.save(_vm.maxTime)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1)],1):_vm._e(),(_vm.varType == 'time')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.FORMAT')},model:{value:(_vm.varIs24),callback:function ($$v) {_vm.varIs24=$$v},expression:\"varIs24\"}})],1)],1):_vm._e(),(_vm.varType == 'text' || _vm.varType == 'textarea' || _vm.varType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.varType == 'text')?_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}}):_vm._e(),(_vm.varType == 'textarea')?_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}}):_vm._e(),(_vm.varType == 'number')?_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}}):_vm._e()],1)],1):_vm._e(),(_vm.varType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXT.FIELDS.IS_EMAIL')},model:{value:(_vm.varIsEmail),callback:function ($$v) {_vm.varIsEmail=$$v},expression:\"varIsEmail\"}})],1)],1):_vm._e(),(_vm.varType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.NUMBER.FIELDS.AUTO_CALC')},model:{value:(_vm.varAutocalc),callback:function ($$v) {_vm.varAutocalc=$$v},expression:\"varAutocalc\"}})],1)],1):_vm._e(),(_vm.varType == 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.subformList,\"item-text\":\"FORM_TITLE\",\"item-value\":\"FORM_KEY\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.FORM'),\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.subform),callback:function ($$v) {_vm.subform=$$v},expression:\"subform\"}})],1)],1):_vm._e(),(_vm.varType == 'radio')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.radioHeaders,\"items\":_vm.radioItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.radioItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'radioItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'radioItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,748865655)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'select' || _vm.varType == 'autocomplete')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.selectHeaders,\"items\":_vm.selectItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.selectItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'selectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'selectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,2943687630)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[(_vm.varType == 'select')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.ADD_REMOVE')))]):_vm._e(),(_vm.varType == 'autocomplete')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.AUTOCOMPLETE.ADD_REMOVE')))]):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.checkboxHeaders,\"items\":_vm.checkboxItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.isRequired\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.isRequired),callback:function ($$v) {_vm.$set(row.item, \"isRequired\", $$v)},expression:\"row.item.isRequired\"}})]}},{key:\"item.isChecked\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.isChecked),callback:function ($$v) {_vm.$set(row.item, \"isChecked\", $$v)},expression:\"row.item.isChecked\"}})]}},{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.checkboxItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'checkboxItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'checkboxItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,3674744629)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'combobox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.comboHeaders,\"items\":_vm.comboItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.comboItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'comboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'comboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,102134378)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.COMBOBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.gridHeaders,\"items\":_vm.gridItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.gridItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'gridItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'gridItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,3785982878)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.ALLOW_ADD'),\"color\":\"success\"},model:{value:(_vm.allowAdd),callback:function ($$v) {_vm.allowAdd=$$v},expression:\"allowAdd\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.ALLOW_DELETE'),\"color\":\"success\"},model:{value:(_vm.allowDelete),callback:function ($$v) {_vm.allowDelete=$$v},expression:\"allowDelete\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'subform' && _vm.varType != 'array' && _vm.varType != 'img' && _vm.varType != 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.ENABLE_SQL'),\"color\":\"warning\"},model:{value:(_vm.enableSql),callback:function ($$v) {_vm.enableSql=$$v},expression:\"enableSql\"}})],1)],1):_vm._e(),(_vm.enableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_DATABASE')},model:{value:(_vm.fieldConnId),callback:function ($$v) {_vm.fieldConnId=$$v},expression:\"fieldConnId\"}})],1)],1):_vm._e(),(_vm.enableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_SQL')},model:{value:(_vm.fieldSql),callback:function ($$v) {_vm.fieldSql=$$v},expression:\"fieldSql\"}})],1)],1):_vm._e(),(_vm.varType == 'radio')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.AS_ROW'),\"color\":\"success\"},model:{value:(_vm.radioAsRow),callback:function ($$v) {_vm.radioAsRow=$$v},expression:\"radioAsRow\"}})],1)],1):_vm._e(),(_vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.varAllowMultiple),callback:function ($$v) {_vm.varAllowMultiple=$$v},expression:\"varAllowMultiple\"}})],1)],1):_vm._e(),(_vm.varType == 'file')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.FILE_UPLOADER.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.varAllowMultiple),callback:function ($$v) {_vm.varAllowMultiple=$$v},expression:\"varAllowMultiple\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'link' && _vm.varType != 'img' && _vm.varType != 'subform' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_REQUIRED'),\"color\":\"success\"},model:{value:(_vm.varRequired),callback:function ($$v) {_vm.varRequired=$$v},expression:\"varRequired\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'para' && _vm.varType != 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_HIDDEN'),\"color\":\"success\"},model:{value:(_vm.varHidden),callback:function ($$v) {_vm.varHidden=$$v},expression:\"varHidden\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'link' && _vm.varType != 'img')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_DISABLED'),\"color\":\"success\"},model:{value:(_vm.varDisabled),callback:function ($$v) {_vm.varDisabled=$$v},expression:\"varDisabled\"}})],1)],1):_vm._e(),(_vm.varType == 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.SOLID_BORDER'),\"color\":\"success\"},model:{value:(_vm.varBorderSolid),callback:function ($$v) {_vm.varBorderSolid=$$v},expression:\"varBorderSolid\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.DASHED_BORDER'),\"color\":\"success\"},model:{value:(_vm.varBorderDashed),callback:function ($$v) {_vm.varBorderDashed=$$v},expression:\"varBorderDashed\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.cancelNewElement}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFieldValid},on:{\"click\":function($event){return _vm.verifyField({varType: _vm.varType, varName: _vm.varName, varLabel: _vm.varLabel, minDate: _vm.minDate, maxDate: _vm.maxDate, minTime: _vm.minTime, maxTime: _vm.maxTime, varIs24: _vm.varIs24, varValue: _vm.varValue, varIsEmail: _vm.varIsEmail, varUrl: _vm.varUrl, varMaxH: _vm.varMaxH, varMaxW: _vm.varMaxW, subform: _vm.subform, varWidth: _vm.varWidth, varOffset: _vm.varOffset, varAutocalc: _vm.varAutocalc, allowAdd: _vm.allowAdd, allowDelete: _vm.allowDelete, fieldConnId: _vm.fieldConnId, fieldSql: _vm.fieldSql, radioAsRow: _vm.radioAsRow, varAllowMultiple: _vm.varAllowMultiple, varRequired: _vm.varRequired, varHidden: _vm.varHidden, varDisabled: _vm.varDisabled, varBorderSolid: _vm.varBorderSolid, varBorderDashed: _vm.varBorderDashed})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editElementDialog),callback:function ($$v) {_vm.editElementDialog=$$v},expression:\"editElementDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editElementTitle)+\" \"),_c('v-spacer'),(_vm.formAction != 'view')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteField(_vm.currentElementId)}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.DELETE')))]):_vm._e()],1),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editElementText))]),_c('v-form',{ref:\"editElement\",model:{value:(_vm.isFieldValid),callback:function ($$v) {_vm.isFieldValid=$$v},expression:\"isFieldValid\"}},[(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-combobox',{attrs:{\"items\":_vm.varFilter,\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.VAR_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces]},model:{value:(_vm.varName),callback:function ($$v) {_vm.varName=$$v},expression:\"varName\"}})],1)],1):_vm._e(),(_vm.varType != 'page' && _vm.varType != 'subform' && _vm.varType != 'title' && _vm.varType != 'para' && _vm.varType != 'img' && _vm.varType != 'link' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.varType == 'group' || _vm.varType == 'subheader' ? _vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBTITLE.LABEL') : _vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.FIELD_LABEL'),\"rules\":_vm.varType == 'subheader' ? [_vm.rules.required] : []},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}})],1)],1):_vm._e(),(_vm.varType == 'para' || _vm.varType == 'page')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.varType == 'para')?_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.PARAGRAPH.FIELDS.TITLE')},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}}):_vm._e(),(_vm.varType == 'page')?_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DIVIDER.FIELDS.TITLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}}):_vm._e()],1)],1):_vm._e(),(_vm.varType == 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.LINK.FIELDS.LINK_TEXT'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varLabel),callback:function ($$v) {_vm.varLabel=$$v},expression:\"varLabel\"}})],1)],1):_vm._e(),(_vm.varType == 'img' || _vm.varType == 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.URL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.varUrl),callback:function ($$v) {_vm.varUrl=$$v},expression:\"varUrl\"}})],1)],1):_vm._e(),(_vm.varType == 'img')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.IMAGE.FIELDS.HEIGHT')},model:{value:(_vm.varMaxH),callback:function ($$v) {_vm.varMaxH=$$v},expression:\"varMaxH\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.IMAGE.FIELDS.WIDTH')},model:{value:(_vm.varMaxW),callback:function ($$v) {_vm.varMaxW=$$v},expression:\"varMaxW\"}})],1)],1):_vm._e(),(_vm.varType == 'date')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"minMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.minDate,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.minDate=$event},\"update:return-value\":function($event){_vm.minDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DATE.FIELDS.MIN_DATE'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.minDate),callback:function ($$v) {_vm.minDate=$$v},expression:\"minDate\"}},'v-text-field',attrs,false),on))]}}],null,false,102919044),model:{value:(_vm.minMenu),callback:function ($$v) {_vm.minMenu=$$v},expression:\"minMenu\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\",\"locale\":_vm.$t('GENERAL.LOCALE')},model:{value:(_vm.minDate),callback:function ($$v) {_vm.minDate=$$v},expression:\"minDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.minMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.minMenu.save(_vm.minDate)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"maxMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.maxDate,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.maxDate=$event},\"update:return-value\":function($event){_vm.maxDate=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.DATE.FIELDS.MAX_DATE'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.maxDate),callback:function ($$v) {_vm.maxDate=$$v},expression:\"maxDate\"}},'v-text-field',attrs,false),on))]}}],null,false,3174833924),model:{value:(_vm.maxMenu),callback:function ($$v) {_vm.maxMenu=$$v},expression:\"maxMenu\"}},[_c('v-date-picker',{attrs:{\"no-title\":\"\",\"locale\":_vm.$t('GENERAL.LOCALE')},model:{value:(_vm.maxDate),callback:function ($$v) {_vm.maxDate=$$v},expression:\"maxDate\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.maxMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.maxMenu.save(_vm.maxDate)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1)],1):_vm._e(),(_vm.varType == 'time')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"minMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.minTime,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.minTime=$event},\"update:return-value\":function($event){_vm.minTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.MIN_TIME'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.minTime),callback:function ($$v) {_vm.minTime=$$v},expression:\"minTime\"}},'v-text-field',attrs,false),on))]}}],null,false,3301759205),model:{value:(_vm.minMenu),callback:function ($$v) {_vm.minMenu=$$v},expression:\"minMenu\"}},[_c('v-time-picker',{attrs:{\"no-title\":\"\",\"format\":\"24hr\"},model:{value:(_vm.minTime),callback:function ($$v) {_vm.minTime=$$v},expression:\"minTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.minMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.minMenu.save(_vm.minTime)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-menu',{ref:\"maxMenu\",attrs:{\"close-on-content-click\":false,\"return-value\":_vm.maxTime,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"auto\"},on:{\"update:returnValue\":function($event){_vm.maxTime=$event},\"update:return-value\":function($event){_vm.maxTime=$event}},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-text-field',_vm._g(_vm._b({attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.MAX_TIME'),\"readonly\":\"\",\"clearable\":\"\"},model:{value:(_vm.maxTime),callback:function ($$v) {_vm.maxTime=$$v},expression:\"maxTime\"}},'v-text-field',attrs,false),on))]}}],null,false,1576909157),model:{value:(_vm.maxMenu),callback:function ($$v) {_vm.maxMenu=$$v},expression:\"maxMenu\"}},[_c('v-time-picker',{attrs:{\"no-title\":\"\",\"format\":\"24hr\"},model:{value:(_vm.maxTime),callback:function ($$v) {_vm.maxTime=$$v},expression:\"maxTime\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){_vm.maxMenu = false}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CANCEL'))+\" \")]),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.$refs.maxMenu.save(_vm.maxTime)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OK'))+\" \")])],1)],1)],1)],1):_vm._e(),(_vm.varType == 'time')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TIME.FIELDS.FORMAT')},model:{value:(_vm.varIs24),callback:function ($$v) {_vm.varIs24=$$v},expression:\"varIs24\"}})],1)],1):_vm._e(),(_vm.varType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}})],1)],1):_vm._e(),(_vm.varType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXT.FIELDS.IS_EMAIL')},model:{value:(_vm.varIsEmail),callback:function ($$v) {_vm.varIsEmail=$$v},expression:\"varIsEmail\"}})],1)],1):_vm._e(),(_vm.varType == 'textarea' || _vm.varType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.varType == 'textarea')?_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}}):_vm._e(),(_vm.varType == 'number')?_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.varValue),callback:function ($$v) {_vm.varValue=$$v},expression:\"varValue\"}}):_vm._e()],1)],1):_vm._e(),(_vm.varType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.NUMBER.FIELDS.AUTO_CALC')},model:{value:(_vm.varAutocalc),callback:function ($$v) {_vm.varAutocalc=$$v},expression:\"varAutocalc\"}})],1)],1):_vm._e(),(_vm.varType == 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.subformList,\"item-text\":\"FORM_TITLE\",\"item-value\":\"FORM_KEY\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.FORM'),\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.subform),callback:function ($$v) {_vm.subform=$$v},expression:\"subform\"}})],1)],1):_vm._e(),(_vm.varType == 'radio')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.radioHeaders,\"items\":_vm.radioItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.radioItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'radioItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'radioItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,748865655)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'select' || _vm.varType == 'autocomplete')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.selectHeaders,\"items\":_vm.selectItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.selectItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'selectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'selectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,2943687630)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[(_vm.varType == 'select')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.ADD_REMOVE')))]):_vm._e(),(_vm.varType == 'autocomplete')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.AUTOCOMPLETE.ADD_REMOVE')))]):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.checkboxHeaders,\"items\":_vm.checkboxItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.isRequired\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.isRequired),callback:function ($$v) {_vm.$set(row.item, \"isRequired\", $$v)},expression:\"row.item.isRequired\"}})]}},{key:\"item.isChecked\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.isChecked),callback:function ($$v) {_vm.$set(row.item, \"isChecked\", $$v)},expression:\"row.item.isChecked\"}})]}},{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.checkboxItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'checkboxItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'checkboxItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,3674744629)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'combobox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.comboHeaders,\"items\":_vm.comboItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.comboItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'comboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'comboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,102134378)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.COMBOBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.gridHeaders,\"items\":_vm.gridItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.gridItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'gridItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'gridItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,3785982878)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.ALLOW_ADD'),\"color\":\"success\"},model:{value:(_vm.allowAdd),callback:function ($$v) {_vm.allowAdd=$$v},expression:\"allowAdd\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.ALLOW_DELETE'),\"color\":\"success\"},model:{value:(_vm.allowDelete),callback:function ($$v) {_vm.allowDelete=$$v},expression:\"allowDelete\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'subform' && _vm.varType != 'array' && _vm.varType != 'img' && _vm.varType != 'link')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.ENABLE_SQL'),\"color\":\"warning\"},model:{value:(_vm.enableSql),callback:function ($$v) {_vm.enableSql=$$v},expression:\"enableSql\"}})],1)],1):_vm._e(),(_vm.enableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_DATABASE')},model:{value:(_vm.fieldConnId),callback:function ($$v) {_vm.fieldConnId=$$v},expression:\"fieldConnId\"}})],1)],1):_vm._e(),(_vm.enableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_SQL')},model:{value:(_vm.fieldSql),callback:function ($$v) {_vm.fieldSql=$$v},expression:\"fieldSql\"}})],1)],1):_vm._e(),(_vm.varType == 'radio')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.AS_ROW'),\"color\":\"success\"},model:{value:(_vm.radioAsRow),callback:function ($$v) {_vm.radioAsRow=$$v},expression:\"radioAsRow\"}})],1)],1):_vm._e(),(_vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.varAllowMultiple),callback:function ($$v) {_vm.varAllowMultiple=$$v},expression:\"varAllowMultiple\"}})],1)],1):_vm._e(),(_vm.varType == 'file')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.FILE_UPLOADER.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.varAllowMultiple),callback:function ($$v) {_vm.varAllowMultiple=$$v},expression:\"varAllowMultiple\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'link' && _vm.varType != 'img' && _vm.varType != 'subform' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_REQUIRED'),\"color\":\"success\"},model:{value:(_vm.varRequired),callback:function ($$v) {_vm.varRequired=$$v},expression:\"varRequired\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'para' && _vm.varType != 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_HIDDEN'),\"color\":\"success\"},model:{value:(_vm.varHidden),callback:function ($$v) {_vm.varHidden=$$v},expression:\"varHidden\"}})],1)],1):_vm._e(),(_vm.varType != 'group' && _vm.varType != 'page' && _vm.varType != 'title' && _vm.varType != 'subheader' && _vm.varType != 'para' && _vm.varType != 'link' && _vm.varType != 'img')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.IS_DISABLED'),\"color\":\"success\"},model:{value:(_vm.varDisabled),callback:function ($$v) {_vm.varDisabled=$$v},expression:\"varDisabled\"}})],1)],1):_vm._e(),(_vm.varType == 'subform')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.SOLID_BORDER'),\"color\":\"success\"},model:{value:(_vm.varBorderSolid),callback:function ($$v) {_vm.varBorderSolid=$$v},expression:\"varBorderSolid\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SUBFORM.FIELDS.DASHED_BORDER'),\"color\":\"success\"},model:{value:(_vm.varBorderDashed),callback:function ($$v) {_vm.varBorderDashed=$$v},expression:\"varBorderDashed\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.cancelEditElement}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),(_vm.formAction != 'view')?_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFieldValid},on:{\"click\":function($event){return _vm.verifyField({varType: _vm.varType, varName: _vm.varName, varLabel: _vm.varLabel, minDate: _vm.minDate, maxDate: _vm.maxDate, minTime: _vm.minTime, maxTime: _vm.maxTime, varIs24: _vm.varIs24, varValue: _vm.varValue, varIsEmail: _vm.varIsEmail, varUrl: _vm.varUrl, varMaxH: _vm.varMaxH, varMaxW: _vm.varMaxW, subform: _vm.subform, varWidth: _vm.varWidth, varOffset: _vm.varOffset, varAutocalc: _vm.varAutocalc, allowAdd: _vm.allowAdd, allowDelete: _vm.allowDelete, fieldConnId: _vm.fieldConnId, fieldSql: _vm.fieldSql, radioAsRow: _vm.radioAsRow, varAllowMultiple: _vm.varAllowMultiple, varRequired: _vm.varRequired, varHidden: _vm.varHidden, varDisabled: _vm.varDisabled, varBorderSolid: _vm.varBorderSolid, varBorderDashed: _vm.varBorderDashed})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))]):_vm._e()],1)],1)]],2)],1),_c('v-tab-item',{staticClass:\"grey lighten-2\"},[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',[_c('v-col',{staticClass:\"mx-auto my-8\",attrs:{\"lg\":\"8\",\"cols\":\"12\"}},[(_vm.formCount == 1 && _vm.formSchema !== null)?_c('v-form',{attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":_vm.formSchema.forms[0]}}),_c('div',{staticClass:\"row custom-margin align-center justify-space-around\"},[_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"success\"}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")]),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SUBMIT'))+\" \")])],1)],1):_vm._e(),(_vm.formCount > 1 && _vm.formSchema !== null)?_c('v-stepper',{staticClass:\"bg-transparent overflow-visible\",attrs:{\"elevation\":\"0\",\"alt-labels\":\"\"},model:{value:(_vm.s1),callback:function ($$v) {_vm.s1=$$v},expression:\"s1\"}},[_c('v-stepper-items',{staticClass:\"border-radius-xl overflow-hidden shadow-lg mt-8\"},_vm._l((_vm.formSchema.forms),function(form){return _c('v-stepper-content',{key:form.group0.step,staticClass:\"bg-white border-radius-xl px-4 pt-4\",attrs:{\"step\":form.group0.step}},[_c('v-form',{attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":form}}),_c('v-card',[_c('div',{staticClass:\"d-flex\"},[(_vm.s1 <= _vm.formCount && _vm.s1 > 1)?_c('v-btn',{staticClass:\"\\n font-weight-bold\\n text-xs text-dark\\n btn-light\\n bg-gradient-light\\n py-5\\n px-6\\n mt-6\\n mb-2\\n ms-2\\n \",attrs:{\"ripple\":false,\"elevation\":0,\"color\":\"warning\",\"small\":\"\"},on:{\"click\":function($event){_vm.s1 = _vm.s1 - 1}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.BACK'))+\" \")]):_vm._e(),(_vm.s1 <= _vm.formCount && _vm.s1 > 1)?_c('v-spacer'):_vm._e(),_c('v-btn',{staticClass:\"\\n font-weight-bold\\n text-xs\\n btn-default\\n bg-gradient-success\\n py-5\\n px-6\\n mt-6\\n mb-2\\n me-2\\n ms-auto\\n \",attrs:{\"ripple\":false,\"elevation\":0,\"color\":\"success\",\"small\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")]),_c('v-spacer'),(_vm.s1 < _vm.formCount)?_c('v-btn',{staticClass:\"\\n font-weight-bold\\n text-xs\\n btn-default\\n bg-gradient-default\\n py-5\\n px-6\\n mt-6\\n mb-2\\n me-2\\n ms-auto\\n \",attrs:{\"ripple\":false,\"elevation\":0,\"color\":\"secondary\"},on:{\"click\":function($event){_vm.s1 = _vm.s1 + 1}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CONTINUE'))+\" \")]):_vm._e(),(_vm.s1 == _vm.formCount)?_c('v-btn',{staticClass:\"\\n font-weight-bold\\n text-xs\\n btn-default\\n bg-gradient-default\\n py-5\\n px-6\\n mt-6\\n mb-2\\n me-2\\n ms-auto\\n \",attrs:{\"ripple\":false,\"elevation\":0,\"color\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SUBMIT'))+\" \")]):_vm._e()],1)])],1)],1)}),1)],1):_vm._e()],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"95%\",\"retain-focus\":false,\"persistent\":\"\",\"content-class\":\"js-dialog\"},model:{value:(_vm.jsDialog),callback:function ($$v) {_vm.jsDialog=$$v},expression:\"jsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.EDITOR.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.EDITOR.DESC_1')))]),_c('div',{staticClass:\"pt-0\"},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.EDITOR.DESC_2')))]),_c('div',{staticClass:\"editor-wrapper\"},[_c('code-mirror',{attrs:{\"extensions\":_vm.extensions},model:{value:(_vm.extScript),callback:function ($$v) {_vm.extScript=$$v},expression:\"extScript\"}})],1)]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeJs()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),(_vm.formAction != 'view')?_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.saveJs({extScript: _vm.extScript})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))]):_vm._e()],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1200\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.queryDialog),callback:function ($$v) {_vm.queryDialog=$$v},expression:\"queryDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.DESC')))]),_c('v-data-table',{attrs:{\"headers\":_vm.queryHeaders,\"items\":_vm.queryItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteQuery(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editQuery(row)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.queryItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'queryItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'queryItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewQuery()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.queryDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addQueryDialog),callback:function ($$v) {_vm.addQueryDialog=$$v},expression:\"addQueryDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addQueryTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addQueryText))]),_c('v-form',{ref:\"addQuery\",model:{value:(_vm.isElementValid),callback:function ($$v) {_vm.isElementValid=$$v},expression:\"isElementValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.WHEN'),\"items\":_vm.beforeAfterItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.beforeAfter),callback:function ($$v) {_vm.beforeAfter=$$v},expression:\"beforeAfter\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.PAGE'),\"items\":_vm.pageQueryItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.pageQueryNum),callback:function ($$v) {_vm.pageQueryNum=$$v},expression:\"pageQueryNum\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.ADD_EDIT_QUERY.FIELDS.DATABASE'),\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.dbConnId),callback:function ($$v) {_vm.dbConnId=$$v},expression:\"dbConnId\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.QUERY'),\"rules\":[_vm.rules.required]},model:{value:(_vm.sqlQuery),callback:function ($$v) {_vm.sqlQuery=$$v},expression:\"sqlQuery\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.VARIABLE'),\"rules\":[_vm.rules.noSpaces]},model:{value:(_vm.sqlVar),callback:function ($$v) {_vm.sqlVar=$$v},expression:\"sqlVar\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.ADD_EDIT_QUERY.FIELDS.RUN_IF')},model:{value:(_vm.sqlRunIf),callback:function ($$v) {_vm.sqlRunIf=$$v},expression:\"sqlRunIf\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddQuery()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isElementValid},on:{\"click\":function($event){return _vm.confirmAddQuery()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editQueryDialog),callback:function ($$v) {_vm.editQueryDialog=$$v},expression:\"editQueryDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editQueryTitle))]),_c('v-card-text',[_c('v-form',{ref:\"editQuery\",model:{value:(_vm.isElementValid),callback:function ($$v) {_vm.isElementValid=$$v},expression:\"isElementValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.WHEN'),\"items\":_vm.beforeAfterItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.beforeAfter),callback:function ($$v) {_vm.beforeAfter=$$v},expression:\"beforeAfter\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.PAGE'),\"items\":_vm.pageQueryItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.pageQueryNum),callback:function ($$v) {_vm.pageQueryNum=$$v},expression:\"pageQueryNum\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.ADD_EDIT_QUERY.FIELDS.DATABASE'),\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\"},model:{value:(_vm.dbConnId),callback:function ($$v) {_vm.dbConnId=$$v},expression:\"dbConnId\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.QUERY'),\"rules\":[_vm.rules.required]},model:{value:(_vm.sqlQuery),callback:function ($$v) {_vm.sqlQuery=$$v},expression:\"sqlQuery\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.FIELDS.VARIABLE'),\"rules\":[_vm.rules.noSpaces]},model:{value:(_vm.sqlVar),callback:function ($$v) {_vm.sqlVar=$$v},expression:\"sqlVar\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.QUERIES.ADD_EDIT_QUERY.FIELDS.RUN_IF')},model:{value:(_vm.sqlRunIf),callback:function ($$v) {_vm.sqlRunIf=$$v},expression:\"sqlRunIf\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditQuery()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isElementValid},on:{\"click\":function($event){return _vm.confirmEditQuery()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addRowDialog),callback:function ($$v) {_vm.addRowDialog=$$v},expression:\"addRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addRowTitle))]),_c('v-card-text',[_c('v-form',{ref:\"addRow\",model:{value:(_vm.isElementValid),callback:function ($$v) {_vm.isElementValid=$$v},expression:\"isElementValid\"}},[(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.VAR_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'autocomplete' || _vm.varType == 'combobox' || _vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType != 'autocomplete' && _vm.varType != 'combobox' && _vm.varType != 'select' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.FIELD_NAME')},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType == 'autocomplete' || _vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType != 'autocomplete' && _vm.varType != 'combobox' && _vm.varType != 'select' && _vm.varType != 'array' && _vm.varType != 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.VALUE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.VARIABLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.gridFieldTypes,\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.FIELD_TYPE'),\"item-text\":\"name\",\"item-value\":\"val\",\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.itemType),callback:function ($$v) {_vm.itemType=$$v},expression:\"itemType\"}})],1)],1):_vm._e(),(_vm.varType == 'checkbox' || _vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.WIDTH')},model:{value:(_vm.itemWidth),callback:function ($$v) {_vm.itemWidth=$$v},expression:\"itemWidth\"}})],1)],1):_vm._e(),(_vm.itemType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXT.FIELDS.IS_EMAIL')},model:{value:(_vm.configVarIsEmail),callback:function ($$v) {_vm.configVarIsEmail=$$v},expression:\"configVarIsEmail\"}})],1)],1):_vm._e(),(_vm.itemType == 'textarea')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.NUMBER.FIELDS.AUTO_CALC')},model:{value:(_vm.configVarAutocalc),callback:function ($$v) {_vm.configVarAutocalc=$$v},expression:\"configVarAutocalc\"}})],1)],1):_vm._e(),(_vm.itemType == 'select' || _vm.itemType == 'autocomplete')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.selectHeaders,\"items\":_vm.configSelectItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.configSelectItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'configSelectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'configSelectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,1195688612)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[(_vm.itemType == 'select')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.ADD_REMOVE')))]):_vm._e(),(_vm.itemType == 'autocomplete')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.AUTOCOMPLETE.ADD_REMOVE')))]):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addConfigRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.itemType == 'combobox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.comboHeaders,\"items\":_vm.configComboItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.configComboItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'configComboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'configComboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,192052864)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.COMBOBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addConfigRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.ENABLE_SQL'),\"color\":\"warning\"},model:{value:(_vm.configEnableSql),callback:function ($$v) {_vm.configEnableSql=$$v},expression:\"configEnableSql\"}})],1)],1):_vm._e(),(_vm.configEnableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_DATABASE')},model:{value:(_vm.configFieldConnId),callback:function ($$v) {_vm.configFieldConnId=$$v},expression:\"configFieldConnId\"}})],1)],1):_vm._e(),(_vm.configEnableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_SQL')},model:{value:(_vm.configFieldSql),callback:function ($$v) {_vm.configFieldSql=$$v},expression:\"configFieldSql\"}})],1)],1):_vm._e(),(_vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.configVarAllowMultiple),callback:function ($$v) {_vm.configVarAllowMultiple=$$v},expression:\"configVarAllowMultiple\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isElementValid},on:{\"click\":function($event){return _vm.confirmAddRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editRowDialog),callback:function ($$v) {_vm.editRowDialog=$$v},expression:\"editRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editRowTitle))]),_c('v-card-text',[_c('v-form',{ref:\"editRow\",model:{value:(_vm.isElementValid),callback:function ($$v) {_vm.isElementValid=$$v},expression:\"isElementValid\"}},[(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.VAR_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'autocomplete' || _vm.varType == 'combobox' || _vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType != 'autocomplete' && _vm.varType != 'combobox' && _vm.varType != 'select' && _vm.varType != 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.FIELD_NAME')},model:{value:(_vm.itemName),callback:function ($$v) {_vm.itemName=$$v},expression:\"itemName\"}})],1)],1):_vm._e(),(_vm.varType == 'autocomplete' || _vm.varType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType != 'autocomplete' && _vm.varType != 'combobox' && _vm.varType != 'select' && _vm.varType != 'array' && _vm.varType != 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.VALUE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.VARIABLE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.itemValue),callback:function ($$v) {_vm.itemValue=$$v},expression:\"itemValue\"}})],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.gridFieldTypes,\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.GRID.FIELDS.FIELD_TYPE'),\"item-text\":\"name\",\"item-value\":\"val\",\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.itemType),callback:function ($$v) {_vm.itemType=$$v},expression:\"itemType\"}})],1)],1):_vm._e(),(_vm.varType == 'checkbox' || _vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.WIDTH')},model:{value:(_vm.itemWidth),callback:function ($$v) {_vm.itemWidth=$$v},expression:\"itemWidth\"}})],1)],1):_vm._e(),(_vm.itemType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'text')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"color\":\"success\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.TEXT.FIELDS.IS_EMAIL')},model:{value:(_vm.configVarIsEmail),callback:function ($$v) {_vm.configVarIsEmail=$$v},expression:\"configVarIsEmail\"}})],1)],1):_vm._e(),(_vm.itemType == 'textarea')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-textarea',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.DEFAULT_VAL')},model:{value:(_vm.configVarValue),callback:function ($$v) {_vm.configVarValue=$$v},expression:\"configVarValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'number')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.NUMBER.FIELDS.AUTO_CALC')},model:{value:(_vm.configVarAutocalc),callback:function ($$v) {_vm.configVarAutocalc=$$v},expression:\"configVarAutocalc\"}})],1)],1):_vm._e(),(_vm.itemType == 'select' || _vm.itemType == 'autocomplete')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.selectHeaders,\"items\":_vm.configSelectItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.configSelectItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'configSelectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'configSelectItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,1195688612)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[(_vm.itemType == 'select')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.ADD_REMOVE')))]):_vm._e(),(_vm.itemType == 'autocomplete')?_c('span',[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.AUTOCOMPLETE.ADD_REMOVE')))]):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addConfigRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.itemType == 'combobox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.comboHeaders,\"items\":_vm.configComboItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editConfigRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == _vm.configComboItems.length - 1,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemDown(row.item.id, 'configComboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-down-bold\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"disabled\":row.item.id == 0,\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.moveItemUp(row.item.id, 'configComboItems')}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-arrow-up-bold\")])],1)]}}],null,false,192052864)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.COMBOBOX.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addConfigRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1):_vm._e(),(_vm.varType == 'array')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.ENABLE_SQL'),\"color\":\"warning\"},model:{value:(_vm.configEnableSql),callback:function ($$v) {_vm.configEnableSql=$$v},expression:\"configEnableSql\"}})],1)],1):_vm._e(),(_vm.configEnableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.allDbConns,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_DATABASE')},model:{value:(_vm.configFieldConnId),callback:function ($$v) {_vm.configFieldConnId=$$v},expression:\"configFieldConnId\"}})],1)],1):_vm._e(),(_vm.configEnableSql)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELDS.AM_SQL')},model:{value:(_vm.configFieldSql),callback:function ($$v) {_vm.configFieldSql=$$v},expression:\"configFieldSql\"}})],1)],1):_vm._e(),(_vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-switch',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.IS_MULTI'),\"color\":\"success\"},model:{value:(_vm.configVarAllowMultiple),callback:function ($$v) {_vm.configVarAllowMultiple=$$v},expression:\"configVarAllowMultiple\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isElementValid},on:{\"click\":function($event){return _vm.confirmEditRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addConfigRowDialog),callback:function ($$v) {_vm.addConfigRowDialog=$$v},expression:\"addConfigRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addConfigRowTitle))]),_c('v-card-text',[_c('v-form',{ref:\"addConfigRow\",model:{value:(_vm.isConfigElementValid),callback:function ($$v) {_vm.isConfigElementValid=$$v},expression:\"isConfigElementValid\"}},[(_vm.itemType == 'autocomplete' || _vm.itemType == 'combobox' || _vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemName),callback:function ($$v) {_vm.configItemName=$$v},expression:\"configItemName\"}})],1)],1):_vm._e(),(_vm.itemType != 'autocomplete' && _vm.itemType != 'combobox' && _vm.itemType != 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemName),callback:function ($$v) {_vm.configItemName=$$v},expression:\"configItemName\"}})],1)],1):_vm._e(),(_vm.itemType == 'autocomplete' || _vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemValue),callback:function ($$v) {_vm.configItemValue=$$v},expression:\"configItemValue\"}})],1)],1):_vm._e(),(_vm.itemType != 'autocomplete' && _vm.itemType != 'combobox' && _vm.itemType != 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.VALUE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemValue),callback:function ($$v) {_vm.configItemValue=$$v},expression:\"configItemValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.WIDTH')},model:{value:(_vm.configItemWidth),callback:function ($$v) {_vm.configItemWidth=$$v},expression:\"configItemWidth\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddConfigRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isConfigElementValid},on:{\"click\":function($event){return _vm.confirmAddConfigRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editConfigRowDialog),callback:function ($$v) {_vm.editConfigRowDialog=$$v},expression:\"editConfigRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editConfigRowTitle))]),_c('v-card-text',[_c('v-form',{ref:\"editConfigRow\",model:{value:(_vm.isConfigElementValid),callback:function ($$v) {_vm.isConfigElementValid=$$v},expression:\"isConfigElementValid\"}},[(_vm.itemType == 'autocomplete' || _vm.itemType == 'combobox' || _vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemName),callback:function ($$v) {_vm.configItemName=$$v},expression:\"configItemName\"}})],1)],1):_vm._e(),(_vm.itemType != 'autocomplete' && _vm.itemType != 'combobox' && _vm.itemType != 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemName),callback:function ($$v) {_vm.configItemName=$$v},expression:\"configItemName\"}})],1)],1):_vm._e(),(_vm.itemType == 'autocomplete' || _vm.itemType == 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.SELECT.FIELDS.ITEM_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemValue),callback:function ($$v) {_vm.configItemValue=$$v},expression:\"configItemValue\"}})],1)],1):_vm._e(),(_vm.itemType != 'autocomplete' && _vm.itemType != 'combobox' && _vm.itemType != 'select')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.RADIO.FIELDS.VALUE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.configItemValue),callback:function ($$v) {_vm.configItemValue=$$v},expression:\"configItemValue\"}})],1)],1):_vm._e(),(_vm.itemType == 'checkbox')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"label\":_vm.$t('FORMS.NEW_EDIT_FORM.FIELD_TYPES.CHECKBOX.FIELDS.WIDTH')},model:{value:(_vm.configItemWidth),callback:function ($$v) {_vm.configItemWidth=$$v},expression:\"configItemWidth\"}})],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditConfigRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isConfigElementValid},on:{\"click\":function($event){return _vm.confirmEditConfigRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.resetFormDialog),callback:function ($$v) {_vm.resetFormDialog=$$v},expression:\"resetFormDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.resetFormTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.resetFormText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.resetFormDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmResetForm()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.saveCloseDialog),callback:function ($$v) {_vm.saveCloseDialog=$$v},expression:\"saveCloseDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.SAVE_FORM.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.SAVE_FORM.DESC')))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClose('no')}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.SAVE_FORM.BTNS.CLOSE')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClose('save')}}},[_vm._v(_vm._s(_vm.$t('FORMS.NEW_EDIT_FORM.SAVE_FORM.BTNS.SAVE')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildform.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildform.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./buildform.vue?vue&type=template&id=361b12c4&\"\nimport script from \"./buildform.vue?vue&type=script&lang=js&\"\nexport * from \"./buildform.vue?vue&type=script&lang=js&\"\nimport style0 from \"./buildform.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSpeedDial } from 'vuetify/lib/components/VSpeedDial';\nimport { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperContent } from 'vuetify/lib/components/VStepper';\nimport { VStepperItems } from 'vuetify/lib/components/VStepper';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VTimePicker } from 'vuetify/lib/components/VTimePicker';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VCombobox,VContainer,VDataTable,VDatePicker,VDialog,VForm,VIcon,VMenu,VRow,VSelect,VSnackbar,VSpacer,VSpeedDial,VStepper,VStepperContent,VStepperItems,VSwitch,VTab,VTabItem,VTabs,VTabsItems,VTextField,VTextarea,VTimePicker,VToolbar})\n","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BuildForm.vue?vue&type=template&id=6b594b90&\"\nimport script from \"./BuildForm.vue?vue&type=script&lang=js&\"\nexport * from \"./BuildForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BuildForm.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('processdesigner')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',{on:{\"click\":_vm.refreshProcesses}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.TABS.DESIGN'))+\" \")]),_c('v-tab',{on:{\"click\":_vm.refreshProcesses}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.TABS.DEPLOYED'))+\" \")])],1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('PROCESSES.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.migrateCases()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.MIGRATE')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.importProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.IMPORT')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.buildProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.NEW')))])],1),_c('v-data-table',{staticClass:\"elevation-1 process-design\",attrs:{\"headers\":_vm.processHeaders,\"items\":_vm.allProcessXml,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.designSortBy,\"sort-desc\":_vm.designSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCKED == 1)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.showLocked(row.item)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-lock\")])],1):_vm._e(),(row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editProcess(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":row.item.VERSION > 1 || row.item.IS_LOCKED == 1 || !_vm.allowDeletion},on:{\"click\":function($event){return _vm.deleteProcessXml(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])})],1)],1)],1)],1)],1),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('PROCESSES.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.setVariables()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.SET_VARS')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.setStartVariables()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.SET_START_VARS')))])],1),_c('v-data-table',{staticClass:\"elevation-1 process-deployed\",attrs:{\"headers\":_vm.deployedHeaders,\"items\":_vm.allProcesses,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"deploymentId\",\"sort-by\":_vm.deployedSortBy,\"sort-desc\":_vm.deployedSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.viewProcessMap(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.VIEW'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":!_vm.allowUndeploy},on:{\"click\":function($event){return _vm.deleteProcess(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.BTNS.UNDEPLOY'))+\" \")])]}}])})],1)],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTextProcess))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTextVersion))]),_c('div',{staticClass:\"pt-5 warning-text\"},[_vm._v(_vm._s(_vm.deleteTextWarning))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"loading\":_vm.loadingUndeploy},on:{\"click\":function($event){return _vm.confirmDelete()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteXmlDialog),callback:function ($$v) {_vm.deleteXmlDialog=$$v},expression:\"deleteXmlDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTextProcess))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteXmlDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteXml()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.importProcessDialog),callback:function ($$v) {_vm.importProcessDialog=$$v},expression:\"importProcessDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.importTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.importText))]),_c('v-file-input',{attrs:{\"label\":_vm.$t('PROCESSES.IMPORT_PROCESS.FIELDS.LABEL')},model:{value:(_vm.importedFile),callback:function ($$v) {_vm.importedFile=$$v},expression:\"importedFile\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelImportProcess()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmImportProcess()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.showLockedDialog),callback:function ($$v) {_vm.showLockedDialog=$$v},expression:\"showLockedDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.lockedTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.lockedText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.forceUnlock()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.FORCE_UNLOCK')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.showLockedDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false},model:{value:(_vm.processMapDialog),callback:function ($$v) {_vm.processMapDialog=$$v},expression:\"processMapDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.processMapTitle)+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcessMap()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-card-text',[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.migrateDialog),callback:function ($$v) {_vm.migrateDialog=$$v},expression:\"migrateDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.migrateTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.migrateText))]),_c('div',{staticClass:\"pt-5 red--text\"},[_vm._v(_vm._s(_vm.migrateWarning))]),_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.MIGRATE_CASES.FIELDS.SOURCE'),\"items\":_vm.sourceProcesses,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.filterTargets},model:{value:(_vm.sourceProcess),callback:function ($$v) {_vm.sourceProcess=$$v},expression:\"sourceProcess\"}}),_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.MIGRATE_CASES.FIELDS.TARGET'),\"items\":_vm.targetProcesses,\"item-text\":\"label\",\"item-value\":\"value\"},model:{value:(_vm.targetProcess),callback:function ($$v) {_vm.targetProcess=$$v},expression:\"targetProcess\"}}),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.instanceHeaders,\"items\":_vm.activeInstances,\"items-per-page\":10,\"item-key\":\"id\",\"sort-by\":\"caseId\",\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingInstances},model:{value:(_vm.targetInstances),callback:function ($$v) {_vm.targetInstances=$$v},expression:\"targetInstances\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeMigrateCases()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"error\",\"disabled\":!_vm.sourceProcess.id || !_vm.targetProcess.id || _vm.targetInstances.length == 0},on:{\"click\":function($event){return _vm.confirmMigrateCases()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.MIGRATE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.setVarsDialog),callback:function ($$v) {_vm.setVarsDialog=$$v},expression:\"setVarsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.setVarsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.setVarsText))]),_c('v-row',[_c('v-col',{attrs:{\"md\":\"8\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.SOURCE'),\"items\":_vm.sourceProcesses,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.filterTargets},model:{value:(_vm.sourceProcess),callback:function ($$v) {_vm.sourceProcess=$$v},expression:\"sourceProcess\"}})],1),_c('v-col',{attrs:{\"md\":\"4\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.TYPE'),\"items\":_vm.targetVarTypes,\"item-text\":\"label\",\"item-value\":\"value\"},model:{value:(_vm.targetVarType),callback:function ($$v) {_vm.targetVarType=$$v},expression:\"targetVarType\"}})],1)],1),_c('v-row',{staticClass:\"mb-4\"},[_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.NAME'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.targetVarName),callback:function ($$v) {_vm.targetVarName=$$v},expression:\"targetVarName\"}})],1),_c('v-col',{attrs:{\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.VALUE'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.targetVarValue),callback:function ($$v) {_vm.targetVarValue=$$v},expression:\"targetVarValue\"}})],1)],1),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.instanceHeaders,\"items\":_vm.activeInstances,\"items-per-page\":10,\"item-key\":\"id\",\"sort-by\":\"caseId\",\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loadingInstances},model:{value:(_vm.targetInstances),callback:function ($$v) {_vm.targetInstances=$$v},expression:\"targetInstances\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeSetVariables()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"error\",\"disabled\":!_vm.sourceProcess.id || !_vm.targetVarType || !_vm.targetVarName || !_vm.targetVarValue || _vm.targetInstances.length == 0},on:{\"click\":function($event){return _vm.confirmSetVariables()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.SET_VARS')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.setStartVarsDialog),callback:function ($$v) {_vm.setStartVarsDialog=$$v},expression:\"setStartVarsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.setStartVarsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.setStartVarsText))]),_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.SOURCE'),\"items\":_vm.sourceProcesses,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.filterTargets},model:{value:(_vm.sourceProcess),callback:function ($$v) {_vm.sourceProcess=$$v},expression:\"sourceProcess\"}}),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.startVarsHeaders,\"items\":_vm.startVarsItems,\"items-per-page\":10},scopedSlots:_vm._u([{key:\"top\",fn:function(){return [_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.resetStartVars()}}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.SET_VARS.RESET_BTN'))+\" \")]),_c('v-spacer'),_c('v-dialog',{attrs:{\"max-width\":\"600px\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._g(_vm._b({staticClass:\"mb-2\",attrs:{\"color\":\"primary\",\"dark\":\"\"}},'v-btn',attrs,false),on),[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.SET_VARS.FIELDS.NEW_VAR'))+\" \")])]}}]),model:{value:(_vm.editStartVarDialog),callback:function ($$v) {_vm.editStartVarDialog=$$v},expression:\"editStartVarDialog\"}},[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addStartVarTitle))]),_c('v-card-text',[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.NAME')},model:{value:(_vm.editedStartVarItem.varName),callback:function ($$v) {_vm.$set(_vm.editedStartVarItem, \"varName\", $$v)},expression:\"editedStartVarItem.varName\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.VALUE')},model:{value:(_vm.editedStartVarItem.varValue),callback:function ($$v) {_vm.$set(_vm.editedStartVarItem, \"varValue\", $$v)},expression:\"editedStartVarItem.varValue\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"md\":\"6\"}},[_c('v-select',{staticClass:\"pt-0\",attrs:{\"label\":_vm.$t('PROCESSES.SET_VARS.FIELDS.TYPE'),\"items\":_vm.targetVarTypes,\"item-text\":\"label\",\"item-value\":\"value\"},model:{value:(_vm.editedStartVarItem.varType),callback:function ($$v) {_vm.$set(_vm.editedStartVarItem, \"varType\", $$v)},expression:\"editedStartVarItem.varType\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeEditStartVar()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.saveEditStartVar()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)],1),_c('v-dialog',{attrs:{\"max-width\":\"500px\"},model:{value:(_vm.deleteStartVarDialog),callback:function ($$v) {_vm.deleteStartVarDialog=$$v},expression:\"deleteStartVarDialog\"}},[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.SET_VARS.DEL_TEXT')))]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeDeleteStartVar()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.confirmDeleteStartVar()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)],1)],1)]},proxy:true},{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteStartVarItem(row.item)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editStartVarItem(row.item)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1)]}}])})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeSetStartVariables()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"color\":\"primary\",\"disabled\":!_vm.sourceProcess.id},on:{\"click\":function($event){return _vm.confirmSetStartVariables()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BTNS.SET_START_VARS')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./processdesigner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./processdesigner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./processdesigner.vue?vue&type=template&id=51b1501e&\"\nimport script from \"./processdesigner.vue?vue&type=script&lang=js&\"\nexport * from \"./processdesigner.vue?vue&type=script&lang=js&\"\nimport style0 from \"./processdesigner.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDialog,VFileInput,VIcon,VRow,VSelect,VSnackbar,VSpacer,VTab,VTabItem,VTabs,VTabsItems,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProcessDesigner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProcessDesigner.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProcessDesigner.vue?vue&type=template&id=0c168b1d&\"\nimport script from \"./ProcessDesigner.vue?vue&type=script&lang=js&\"\nexport * from \"./ProcessDesigner.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('buildprocess')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('v-col',{attrs:{\"sm\":\"12\"}},[(_vm.processAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.SAVE')))]):_vm._e(),(_vm.processAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.checkLocks()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.SAVE_DEPLOY')))]):_vm._e(),_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.CLOSE')))]),_c('v-btn',{staticClass:\"mr-2 ma-3 float-right\",attrs:{\"id\":\"download-svg\",\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadSvgImage()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.DOWNLOAD')))]),_c('v-btn',{staticClass:\"mr-2 ma-3 float-right\",attrs:{\"id\":\"download-diagram\",\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.downloadDiagram()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.EXPORT')))]),(_vm.processAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3 float-right\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.allHqConns.length == 0},on:{\"click\":function($event){return _vm.saveExternalProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.PROMOTE')))]):_vm._e()],1),_c('v-row',[_c('v-col',{attrs:{\"sm\":\"12\"}},[_c('div',{staticClass:\"canvas\",attrs:{\"id\":\"canvas\"}})])],1),(_vm.processAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3 processBtn\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.configureProcess()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.CONFIGURE')))]):_vm._e(),(_vm.processAction != 'view')?_c('v-btn',{staticClass:\"mr-2 ma-3 modeBtn\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.setUpdateProps()}}},[_vm._v(_vm._s(_vm.modeStatus))]):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"1000\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.propsDialog),callback:function ($$v) {_vm.propsDialog=$$v},expression:\"propsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.TITLE')))]),_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.TABS.GENERAL'))+\" \")]),(_vm.isCallActivity || _vm.isSignalThrowEvent)?_c('v-tab',{on:{\"click\":function($event){return _vm.setFilter('variable')}}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.TABS.VARIABLES'))+\" \")]):_vm._e(),(!_vm.isCollab && !_vm.isLane)?_c('v-tab',{on:{\"click\":function($event){return _vm.setFilter('listener')}}},[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.TABS.LISTENERS'))+\" \")]):_vm._e(),(_vm.hasLooping)?_c('v-tab',[_vm._v(\" \"+_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.TABS.MULTI'))+\" \")]):_vm._e()],1),_c('v-card-text',[_c('v-form',{ref:\"propsForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[(_vm.isEvent)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EVENT_TYPE'),\"items\":_vm.filteredEventItems,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.changeEventType},model:{value:(_vm.eventType),callback:function ($$v) {_vm.eventType=$$v},expression:\"eventType\"}})],1)],1):_vm._e(),(_vm.isTask)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TASK_TYPE'),\"items\":_vm.taskTypes,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.changeTaskType},model:{value:(_vm.taskType),callback:function ($$v) {_vm.taskType=$$v},expression:\"taskType\"}})],1)],1):_vm._e(),(_vm.isTask && !_vm.isCallActivity && !_vm.isServiceTask && !_vm.isScriptTask)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-switch',{staticClass:\"pt-3 pl-2\",attrs:{\"color\":\"success\",\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.SEND_EMAILS')},on:{\"change\":_vm.changeSendEmails},model:{value:(_vm.sendEmails),callback:function ($$v) {_vm.sendEmails=$$v},expression:\"sendEmails\"}})],1),(_vm.sendEmails)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-autocomplete',{attrs:{\"items\":_vm.allEmailTemplates,\"item-text\":\"NAME\",\"item-value\":\"TEMP_KEY\",\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EMAIL_TEMPLATE'),\"rules\":[_vm.rules.required],\"return-object\":\"\"},on:{\"change\":_vm.changeEmailTemplate},model:{value:(_vm.emailTemplate),callback:function ($$v) {_vm.emailTemplate=$$v},expression:\"emailTemplate\"}},[_vm._v(_vm._s(_vm.emailTemplate))])],1):_vm._e()],1):_vm._e(),(_vm.isTask && !_vm.isCallActivity && !_vm.isServiceTask && !_vm.isScriptTask && _vm.sendEmails)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EMAIL_SUBJECT'),\"maxlength\":\"255\",\"rules\":[_vm.rules.required]},on:{\"change\":_vm.changeEmailSubject},model:{value:(_vm.emailSubject),callback:function ($$v) {_vm.emailSubject=$$v},expression:\"emailSubject\"}},[_vm._v(_vm._s(_vm.emailSubject))])],1)],1):_vm._e(),(_vm.isGateway)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.GATEWAY_TYPE'),\"items\":_vm.gatewayTypes,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":_vm.changeTaskType},model:{value:(_vm.gatewayType),callback:function ($$v) {_vm.gatewayType=$$v},expression:\"gatewayType\"}})],1)],1):_vm._e(),(_vm.isFlow && _vm.hasCondition)?_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.CONDITION_TYPE'),\"items\":_vm.conditionTypes,\"item-text\":\"label\",\"item-value\":\"value\"},model:{value:(_vm.conditionType),callback:function ($$v) {_vm.conditionType=$$v},expression:\"conditionType\"}})],1)],1):_vm._e(),(_vm.isProcess && _vm.collabActive)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.PARTICIPANT_ID'),\"maxlength\":\"24\",\"rules\":[_vm.rules.required],\"disabled\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'participantId'); }},model:{value:(_vm.participantId),callback:function ($$v) {_vm.participantId=$$v},expression:\"participantId\"}},[_vm._v(_vm._s(_vm.participantId))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.PARTICIPANT_NAME')},on:{\"change\":function (event) { return _vm.changeField(event, 'participantName'); }},model:{value:(_vm.participantName),callback:function ($$v) {_vm.participantName=$$v},expression:\"participantName\"}},[_vm._v(_vm._s(_vm.participantName))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.isCollab && _vm.isProcess ? _vm.$t('PROCESSES.FIELDS.PROCESS_ID') : _vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.ID'),\"maxlength\":\"24\",\"rules\":[_vm.rules.required],\"disabled\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'id'); }},model:{value:(_vm.elementId),callback:function ($$v) {_vm.elementId=$$v},expression:\"elementId\"}},[_vm._v(_vm._s(_vm.elementId))]),(_vm.isProcess)?_c('v-btn',{attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.requestNewProcId()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.NEW_PROC_ID')))]):_vm._e()],1),(!_vm.isCollab)?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.isCollab && _vm.isProcess ? _vm.$t('PROCESSES.FIELDS.PROCESS_NAME') : _vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.NAME')},on:{\"change\":function (event) { return _vm.changeField(event, 'name'); }},model:{value:(_vm.elementName),callback:function ($$v) {_vm.elementName=$$v},expression:\"elementName\"}},[_vm._v(_vm._s(_vm.elementName))])],1):_vm._e()],1),(_vm.isTimerStartEvent)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TIMER_DEF_TYPE'),\"items\":_vm.timerDefTypes,\"item-text\":\"label\",\"item-value\":\"value\"},on:{\"change\":function (event) { return _vm.changeField(event, 'timerDefinitionType'); }},model:{value:(_vm.timerDefType),callback:function ($$v) {_vm.timerDefType=$$v},expression:\"timerDefType\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{staticClass:\"mt-6\",attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TIMER_DEF'),\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'timerDefinition'); }},model:{value:(_vm.timerDefinition),callback:function ($$v) {_vm.timerDefinition=$$v},expression:\"timerDefinition\"}},[_vm._v(_vm._s(_vm.timerDefinition))])],1)],1):_vm._e(),(_vm.isConditionalStartEvent || _vm.isCondThrowEvent || _vm.isCondCatchEvent || _vm.isCondBoundaryEvent || _vm.isCondNonBoundaryEvent)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_NAME')},on:{\"change\":function (event) { return _vm.changeField(event, 'startVarName'); }},model:{value:(_vm.startVarName),callback:function ($$v) {_vm.startVarName=$$v},expression:\"startVarName\"}},[_vm._v(_vm._s(_vm.startVarName))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EXPRESSION'),\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'startCondition'); }},model:{value:(_vm.startCondition),callback:function ($$v) {_vm.startCondition=$$v},expression:\"startCondition\"}},[_vm._v(_vm._s(_vm.startCondition))])],1)],1):_vm._e(),(_vm.isCondThrowEvent || _vm.isCondCatchEvent || _vm.isCondBoundaryEvent || _vm.isCondNonBoundaryEvent)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_EVENTS')},on:{\"change\":function (event) { return _vm.changeField(event, 'varEvents'); }},model:{value:(_vm.varEvents),callback:function ($$v) {_vm.varEvents=$$v},expression:\"varEvents\"}},[_vm._v(_vm._s(_vm.varEvents))])],1)],1):_vm._e(),(_vm.isSignalStartEvent)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"9\"}},[_c('v-combobox',{attrs:{\"items\":_vm.availableSignals,\"item-text\":\"name\",\"item-value\":\"name\",\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.SIGNAL_NAME'),\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'startSignalName'); }},model:{value:(_vm.startSignalName),callback:function ($$v) {_vm.startSignalName=$$v},expression:\"startSignalName\"}},[_vm._v(_vm._s(_vm.startSignalName))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_c('v-btn',{staticClass:\"mt-8\",attrs:{\"block\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteSignal()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.DELETE_SIGNAL')))])],1)],1):_vm._e(),((!_vm.isCallActivity && !_vm.isServiceTask && !_vm.isScriptTask) && (_vm.isTask || _vm.isStartEvent))?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.FORM'),\"items\":_vm.processForms,\"item-text\":_vm.getFormText,\"item-value\":\"FORM_KEY\"},on:{\"change\":function (event) { return _vm.changeField(event, 'formKey'); }},model:{value:(_vm.formKey),callback:function ($$v) {_vm.formKey=$$v},expression:\"formKey\"}})],1)],1):_vm._e(),(_vm.isProcess)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.STARTER_USERS'),\"items\":_vm.allUsers,\"item-text\":\"fullName\",\"item-value\":\"id\",\"multiple\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'candidateStarterUsers'); }},model:{value:(_vm.candidateStarterUsers),callback:function ($$v) {_vm.candidateStarterUsers=$$v},expression:\"candidateStarterUsers\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.STARTER_GROUPS'),\"items\":_vm.allGroups,\"item-text\":\"name\",\"item-value\":\"id\",\"multiple\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'candidateStarterGroups'); }},model:{value:(_vm.candidateStarterGroups),callback:function ($$v) {_vm.candidateStarterGroups=$$v},expression:\"candidateStarterGroups\"}})],1)],1):_vm._e(),(_vm.isProcess)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.HISTORY_TTL')},on:{\"change\":function (event) { return _vm.changeField(event, 'historyTimeToLive'); }},model:{value:(_vm.historyTimeToLive),callback:function ($$v) {_vm.historyTimeToLive=$$v},expression:\"historyTimeToLive\"}},[_vm._v(_vm._s(_vm.historyTimeToLive))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.STARTABLE'),\"value\":_vm.isStartable,\"hide-details\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'isStartableInTasklist'); }},model:{value:(_vm.isStartable),callback:function ($$v) {_vm.isStartable=$$v},expression:\"isStartable\"}})],1)],1):_vm._e(),(_vm.isTask && !_vm.isCallActivity && !_vm.isServiceTask && !_vm.isScriptTask)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.ASSIGNEE'),\"items\":_vm.allUsers,\"item-text\":\"fullName\",\"item-value\":\"id\",\"clearable\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'assignee'); }},model:{value:(_vm.assignee),callback:function ($$v) {_vm.assignee=$$v},expression:\"assignee\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.USERS'),\"items\":_vm.allUsers,\"item-text\":\"fullName\",\"item-value\":\"id\",\"multiple\":\"\",\"clearable\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'candidateUsers'); }},model:{value:(_vm.candidateUsers),callback:function ($$v) {_vm.candidateUsers=$$v},expression:\"candidateUsers\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.GROUPS'),\"items\":_vm.allGroups,\"item-text\":\"name\",\"item-value\":\"id\",\"multiple\":\"\",\"clearable\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'candidateGroups'); }},model:{value:(_vm.candidateGroups),callback:function ($$v) {_vm.candidateGroups=$$v},expression:\"candidateGroups\"}})],1)],1):_vm._e(),(_vm.isTask && !_vm.isCallActivity && !_vm.isServiceTask && !_vm.isScriptTask)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.DUE_DATE')},on:{\"change\":function (event) { return _vm.changeField(event, 'dueDate'); }},model:{value:(_vm.dueDate),callback:function ($$v) {_vm.dueDate=$$v},expression:\"dueDate\"}},[_vm._v(_vm._s(_vm.dueDate))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.FOLLOW_UP_DATE')},on:{\"change\":function (event) { return _vm.changeField(event, 'followUpDate'); }},model:{value:(_vm.followUpDate),callback:function ($$v) {_vm.followUpDate=$$v},expression:\"followUpDate\"}},[_vm._v(_vm._s(_vm.followUpDate))])],1)],1):_vm._e(),(_vm.isCallActivity)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TARGET'),\"items\":_vm.calledElementItems,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'callableElementRef'); }},model:{value:(_vm.calledElement),callback:function ($$v) {_vm.calledElement=$$v},expression:\"calledElement\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TENANT_ID'),\"items\":_vm.allTenants,\"item-text\":\"name\",\"item-value\":\"id\"},on:{\"change\":function (event) { return _vm.changeField(event, 'tenantId'); }},model:{value:(_vm.tenantId),callback:function ($$v) {_vm.tenantId=$$v},expression:\"tenantId\"}})],1)],1):_vm._e(),(_vm.isCallActivity && _vm.calledElement == 'apiController')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.API'),\"items\":_vm.targetApis,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'targetApi'); }},model:{value:(_vm.targetApi),callback:function ($$v) {_vm.targetApi=$$v},expression:\"targetApi\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.CALL_TYPE'),\"items\":_vm.apiCallTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'targetApiType'); }},model:{value:(_vm.apiCallType),callback:function ($$v) {_vm.apiCallType=$$v},expression:\"apiCallType\"}})],1)],1):_vm._e(),(_vm.isCallActivity && _vm.calledElement == 'apiController' && _vm.grantType == 'client_credentials')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.INCLUDE_GRANT'),\"value\":_vm.includeGrantType,\"hide-details\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'includeGrantType'); }},model:{value:(_vm.includeGrantType),callback:function ($$v) {_vm.includeGrantType=$$v},expression:\"includeGrantType\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.INCLUDE_ID'),\"value\":_vm.includeClientId,\"hide-details\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'includeClientId'); }},model:{value:(_vm.includeClientId),callback:function ($$v) {_vm.includeClientId=$$v},expression:\"includeClientId\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"4\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.INCLUDE_SECRET'),\"value\":_vm.includeClientSecret,\"hide-details\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'includeClientSecret'); }},model:{value:(_vm.includeClientSecret),callback:function ($$v) {_vm.includeClientSecret=$$v},expression:\"includeClientSecret\"}})],1)],1):_vm._e(),(_vm.isCallActivity && _vm.calledElement == 'apiController')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.apiParameters()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.PARAMS')))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-btn',{attrs:{\"block\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){return _vm.apiHeaders()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.HEADERS')))])],1)],1):_vm._e(),(_vm.isCallActivity && _vm.calledElement == 'apiController')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.URL_QUERY')},on:{\"change\":function (event) { return _vm.changeField(event, 'apiUrlQuery'); }},model:{value:(_vm.apiUrlQuery),callback:function ($$v) {_vm.apiUrlQuery=$$v},expression:\"apiUrlQuery\"}},[_vm._v(_vm._s(_vm.apiUrlQuery))])],1)],1):_vm._e(),(_vm.isCallActivity && _vm.calledElement == 'apiController' && (_vm.apiCallType == 'post' || _vm.apiCallType == 'put'))?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-textarea',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.JSON_DATA')},on:{\"change\":function (event) { return _vm.changeField(event, 'apiPostData'); }},model:{value:(_vm.apiPostData),callback:function ($$v) {_vm.apiPostData=$$v},expression:\"apiPostData\"}},[_vm._v(_vm._s(_vm.apiPostData))])],1)],1):_vm._e(),(_vm.isCallActivity)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.USE_PARENT_ID'),\"value\":_vm.useCaseId,\"hide-details\":\"\"},on:{\"change\":function (event) { return _vm.changeField(event, 'callableBusinessKey'); }},model:{value:(_vm.useCaseId),callback:function ($$v) {_vm.useCaseId=$$v},expression:\"useCaseId\"}})],1)],1):_vm._e(),(_vm.hasCondition)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EXPRESSION'),\"rules\":_vm.ignoreRules ? [] : [_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'condition'); }},model:{value:(_vm.condition),callback:function ($$v) {_vm.condition=$$v},expression:\"condition\"}},[_vm._v(_vm._s(_vm.condition))])],1)],1):_vm._e(),(_vm.isServiceTask)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.JAVA_CLASS'),\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'javaClass'); }},model:{value:(_vm.javaClass),callback:function ($$v) {_vm.javaClass=$$v},expression:\"javaClass\"}},[_vm._v(_vm._s(_vm.javaClass))])],1)],1):_vm._e(),(_vm.isScriptTask)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.RESULT_VAR')},on:{\"change\":function (event) { return _vm.changeField(event, 'scriptResultVariable'); }},model:{value:(_vm.scriptResultVariable),callback:function ($$v) {_vm.scriptResultVariable=$$v},expression:\"scriptResultVariable\"}},[_vm._v(_vm._s(_vm.scriptResultVariable))])],1)],1):_vm._e(),(_vm.isScriptTask)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-btn',{attrs:{\"small\":\"\",\"color\":\"success\",\"width\":\"100%\"},on:{\"click\":function($event){return _vm.openJsEditor()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.EDITOR')))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-textarea',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.NOTES')},on:{\"change\":function (event) { return _vm.changeField(event, 'documentation'); }},model:{value:(_vm.elementNotes),callback:function ($$v) {_vm.elementNotes=$$v},expression:\"elementNotes\"}},[_vm._v(_vm._s(_vm.elementNotes))])],1)],1)],1),(_vm.isCallActivity || _vm.isSignalThrowEvent)?_c('v-tab-item',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.variableHeaders,\"items\":_vm.filteredItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteExtension(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1),_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editVariable(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1)]}}],null,false,1281474689)},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){_vm.addVariableDialog = true}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1):_vm._e(),_c('v-tab-item',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.listenerHeaders,\"items\":_vm.filteredItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.listTaskType != 'sendEmails' && row.item.listTaskType != 'sendEmailsScript')?_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteExtension(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1):_vm._e(),(row.item.listTaskType != 'sendEmails' && row.item.listTaskType != 'sendEmailsScript')?_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editListener(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1):_vm._e()]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){_vm.addListenerDialog = true}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1),(_vm.hasLooping)?_c('v-tab-item',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.MULTI_COUNT'),\"rules\":[_vm.rules.required]},on:{\"change\":function (event) { return _vm.changeField(event, 'multiInstanceCount'); }},model:{value:(_vm.multiInstanceCount),callback:function ($$v) {_vm.multiInstanceCount=$$v},expression:\"multiInstanceCount\"}},[_vm._v(_vm._s(_vm.multiInstanceCount))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.COMPLETE_COND')},on:{\"change\":function (event) { return _vm.changeField(event, 'completionCondition'); }},model:{value:(_vm.completionCondition),callback:function ($$v) {_vm.completionCondition=$$v},expression:\"completionCondition\"}},[_vm._v(_vm._s(_vm.completionCondition))])],1)],1)],1):_vm._e()],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeProps()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.saveDialog),callback:function ($$v) {_vm.saveDialog=$$v},expression:\"saveDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.saveTitle))]),_c('v-card-text',[_c('div',{class:_vm.processExists ? 'pt-5 red--text' : 'pt-5'},[_vm._v(_vm._s(_vm.saveText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.FIELDS.DEPLOY_NAME'),\"rules\":[_vm.rules.required],\"disabled\":\"\"},model:{value:(_vm.deployName),callback:function ($$v) {_vm.deployName=$$v},expression:\"deployName\"}},[_vm._v(_vm._s(_vm.deployName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.deploy)?_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.TENANT'),\"items\":_vm.allTenants,\"item-text\":\"name\",\"item-value\":\"id\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedTenant),callback:function ($$v) {_vm.selectedTenant=$$v},expression:\"selectedTenant\"}}):_vm._e()],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.saveDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),(!_vm.deploy)?_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmSave()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))]):_vm._e(),(_vm.deploy)?_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmDeploy()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.BTNS.DEPLOY')))]):_vm._e()],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.saveExternalDialog),callback:function ($$v) {_vm.saveExternalDialog=$$v},expression:\"saveExternalDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.saveExternalTitle))]),_c('v-card-text',[_c('div',{class:_vm.processExists ? 'pt-5 red--text' : 'pt-5'},[_vm._v(_vm._s(_vm.saveExternalText))]),_c('div',{class:_vm.processExists ? 'pt-5 red--text' : 'pt-5',domProps:{\"innerHTML\":_vm._s(_vm.saveExternalText2)}}),_c('v-form',{ref:\"promoteForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.FIELDS.DEPLOY_NAME'),\"rules\":[_vm.rules.required],\"disabled\":\"\"},model:{value:(_vm.deployName),callback:function ($$v) {_vm.deployName=$$v},expression:\"deployName\"}},[_vm._v(_vm._s(_vm.deployName))])],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.REMOTE_ENGINE'),\"items\":_vm.allHqConns,\"item-text\":\"ENGINE_NAME\",\"item-value\":\"URL\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedExternalEngine),callback:function ($$v) {_vm.selectedExternalEngine=$$v},expression:\"selectedExternalEngine\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelExternalSave()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmExternalSave()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.showLockedDialog),callback:function ($$v) {_vm.showLockedDialog=$$v},expression:\"showLockedDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.lockedTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.lockedText))]),_c('div',{staticClass:\"pt-5\"},[_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.lockedFormText)}})])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.showLockedDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.newProcIdDialog),callback:function ($$v) {_vm.newProcIdDialog=$$v},expression:\"newProcIdDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.NEW_PROC_ID_TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5 red--text\"},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.NEW_PROC_ID_DESC')))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.newProcIdDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmNewProcId()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"600\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.saveCloseDialog),callback:function ($$v) {_vm.saveCloseDialog=$$v},expression:\"saveCloseDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.SAVE_PROCESS.TITLE_SAVE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('PROCESSES.SAVE_PROCESS.SAVE_CLOSE')))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClose('no')}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.CLOSE_NO_SAVE')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmClose('save')}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.SAVE_CHANGES')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addVariableDialog),callback:function ($$v) {_vm.addVariableDialog=$$v},expression:\"addVariableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.ADD_VAR_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addVariableForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_IN_OUT'),\"items\":_vm.variableInOuts,\"item-text\":\"text\",\"item-value\":\"val\",\"item-disabled\":_vm.disableVariableItem,\"rules\":[_vm.rules.required]},model:{value:(_vm.variableInOut),callback:function ($$v) {_vm.variableInOut=$$v},expression:\"variableInOut\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_TYPE'),\"items\":_vm.variableTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.variableType),callback:function ($$v) {_vm.variableType=$$v},expression:\"variableType\"}})],1)],1),(_vm.variableType == 'source')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_SOURCE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.variableSource),callback:function ($$v) {_vm.variableSource=$$v},expression:\"variableSource\"}},[_vm._v(_vm._s(_vm.variableSource))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_TARGET'),\"rules\":[_vm.rules.required]},model:{value:(_vm.variableTarget),callback:function ($$v) {_vm.variableTarget=$$v},expression:\"variableTarget\"}},[_vm._v(_vm._s(_vm.variableTarget))])],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelVariable('new')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveVariable('new')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editVariableDialog),callback:function ($$v) {_vm.editVariableDialog=$$v},expression:\"editVariableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.EDIT_VAR_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"editVariableForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_IN_OUT'),\"items\":_vm.variableInOuts,\"item-text\":\"text\",\"item-value\":\"val\",\"item-disabled\":_vm.disableVariableItem,\"disabled\":\"\"},model:{value:(_vm.variableInOut),callback:function ($$v) {_vm.variableInOut=$$v},expression:\"variableInOut\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_TYPE'),\"items\":_vm.variableTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.variableType),callback:function ($$v) {_vm.variableType=$$v},expression:\"variableType\"}})],1)],1),(_vm.variableType != 'all')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_SOURCE'),\"rules\":[_vm.rules.required]},model:{value:(_vm.variableSource),callback:function ($$v) {_vm.variableSource=$$v},expression:\"variableSource\"}},[_vm._v(_vm._s(_vm.variableSource))])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.VAR_TARGET'),\"rules\":[_vm.rules.required]},model:{value:(_vm.variableTarget),callback:function ($$v) {_vm.variableTarget=$$v},expression:\"variableTarget\"}},[_vm._v(_vm._s(_vm.variableTarget))])],1)],1):_vm._e()],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelVariable('edit')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveVariable('edit')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addListenerDialog),callback:function ($$v) {_vm.addListenerDialog=$$v},expression:\"addListenerDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.ADD_LIST_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addListenerForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.LIST_TYPE'),\"items\":_vm.listenerTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"item-disabled\":_vm.disableListenerItem,\"rules\":[_vm.rules.required]},model:{value:(_vm.listenerType),callback:function ($$v) {_vm.listenerType=$$v},expression:\"listenerType\"}})],1),(_vm.listenerType == 'execution')?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EVENT_TYPE'),\"items\":_vm.executionEventTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.executionEventType),callback:function ($$v) {_vm.executionEventType=$$v},expression:\"executionEventType\"}})],1):_vm._e(),(_vm.listenerType == 'task')?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EVENT_TYPE'),\"items\":_vm.taskEventTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.taskEventType),callback:function ($$v) {_vm.taskEventType=$$v},expression:\"taskEventType\"}})],1):_vm._e()],1),(_vm.listenerType == 'task')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.LIST_ID')},model:{value:(_vm.listenerId),callback:function ($$v) {_vm.listenerId=$$v},expression:\"listenerId\"}},[_vm._v(_vm._s(_vm.listenerId))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-btn',{attrs:{\"small\":\"\",\"color\":\"success\",\"width\":\"100%\"},on:{\"click\":function($event){return _vm.openJsEditor()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.EDITOR')))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelListener('new')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveListener('new')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editListenerDialog),callback:function ($$v) {_vm.editListenerDialog=$$v},expression:\"editListenerDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.EDIT_LIST_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"editListenerForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',{staticClass:\"mt-2\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.LIST_TYPE'),\"items\":_vm.listenerTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"item-disabled\":_vm.disableListenerItem,\"disabled\":\"\"},model:{value:(_vm.listenerType),callback:function ($$v) {_vm.listenerType=$$v},expression:\"listenerType\"}})],1),(_vm.listenerType == 'execution')?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EVENT_TYPE'),\"items\":_vm.executionEventTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.executionEventType),callback:function ($$v) {_vm.executionEventType=$$v},expression:\"executionEventType\"}})],1):_vm._e(),(_vm.listenerType == 'task')?_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.EVENT_TYPE'),\"items\":_vm.taskEventTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.taskEventType),callback:function ($$v) {_vm.taskEventType=$$v},expression:\"taskEventType\"}})],1):_vm._e()],1),(_vm.listenerType == 'task')?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.LIST_ID')},model:{value:(_vm.listenerId),callback:function ($$v) {_vm.listenerId=$$v},expression:\"listenerId\"}},[_vm._v(_vm._s(_vm.listenerId))])],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-btn',{attrs:{\"small\":\"\",\"color\":\"success\",\"width\":\"100%\"},on:{\"click\":function($event){return _vm.openJsEditor()}}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.BTNS.EDITOR')))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelListener('edit')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveListener('edit')}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.apiParamDialog),callback:function ($$v) {_vm.apiParamDialog=$$v},expression:\"apiParamDialog\"}},[[_c('v-card',[_c('v-toolbar',{staticClass:\"mb-3\",attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.API_PARAMS_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addParam\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.apiParamHeaders,\"items\":_vm.apiParamItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteParamRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1)]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.API_PARAMS_TITLE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addParamRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelParams()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.saveParams()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addParamRowDialog),callback:function ($$v) {_vm.addParamRowDialog=$$v},expression:\"addParamRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.ADD_API_PARAM_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addParamRow\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.PARAM_KEY'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiParamKey),callback:function ($$v) {_vm.apiParamKey=$$v},expression:\"apiParamKey\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.PARAM_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiParamValue),callback:function ($$v) {_vm.apiParamValue=$$v},expression:\"apiParamValue\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.PARAM_TYPE'),\"items\":_vm.apiParamTypes,\"item-text\":\"text\",\"item-value\":\"val\",\"rules\":[_vm.rules.required]},model:{value:(_vm.apiParamType),callback:function ($$v) {_vm.apiParamType=$$v},expression:\"apiParamType\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-checkbox',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.IS_DATA_FIELD'),\"value\":_vm.apiFormData,\"hide-details\":\"\"},model:{value:(_vm.apiFormData),callback:function ($$v) {_vm.apiFormData=$$v},expression:\"apiFormData\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddParamRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddParamRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"700\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.apiHeadersDialog),callback:function ($$v) {_vm.apiHeadersDialog=$$v},expression:\"apiHeadersDialog\"}},[[_c('v-card',[_c('v-toolbar',{staticClass:\"mb-3\",attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.API_HEADERS_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addHeader\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.apiHeaderHeaders,\"items\":_vm.apiHeaderItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteHeaderRow(row.item.id)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1)]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.API_HEADERS_TITLE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addHeaderRow()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelHeaders()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.saveHeaders()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addHeaderRowDialog),callback:function ($$v) {_vm.addHeaderRowDialog=$$v},expression:\"addHeaderRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.ADD_API_HEADER_TITLE')))]),_c('v-card-text',[_c('v-form',{ref:\"addHeaderRow\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.HEADER_KEY'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiHeaderKey),callback:function ($$v) {_vm.apiHeaderKey=$$v},expression:\"apiHeaderKey\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.FIELDS.HEADER_VAL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.apiHeaderValue),callback:function ($$v) {_vm.apiHeaderValue=$$v},expression:\"apiHeaderValue\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddHeaderRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddHeaderRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"95%\",\"retain-focus\":false,\"persistent\":\"\",\"content-class\":\"js-dialog\"},model:{value:(_vm.jsEditorDialog),callback:function ($$v) {_vm.jsEditorDialog=$$v},expression:\"jsEditorDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('PROCESSES.BUILD_PROCESS.PROPERTIES.EDITOR_TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"editor-wrapper\"},[_c('code-mirror',{staticClass:\"mt-2\",attrs:{\"extensions\":_vm.extensions},model:{value:(_vm.jsScript),callback:function ($$v) {_vm.jsScript=$$v},expression:\"jsScript\"}})],1)]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.closeJsEditor()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer')],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":10000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import inherits from 'inherits';\n\nimport Ids from 'ids';\n\nimport BaseViewer from './BaseViewer';\n\nexport default function BaseModeler(options) {\n BaseViewer.call(this, options);\n\n this.on('import.parse.complete', function(event) {\n if (!event.error) {\n this._collectIds(event.definitions, event.elementsById);\n }\n }, this);\n\n this.on('diagram.destroy', function() {\n this.get('moddle').ids.clear();\n }, this);\n}\n\ninherits(BaseModeler, BaseViewer);\n\nBaseModeler.prototype._createModdle = function(options) {\n var moddle = BaseViewer.prototype._createModdle.call(this, options);\n\n moddle.ids = new Ids([ 32, 36, 1 ]);\n\n return moddle;\n};\n\nBaseModeler.prototype._collectIds = function(definitions, elementsById) {\n\n var moddle = definitions.$model,\n ids = moddle.ids,\n id;\n\n ids.clear();\n\n for (id in elementsById) {\n ids.claim(id, elementsById[id]);\n }\n};\n","import { is } from '../../base/BaseServices';\nimport { isAny } from '../modelElements/services/ModelingService';\n\nimport {\n getMid,\n asTRBL,\n getOrientation\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n findFreePosition,\n generateGetNextPosition,\n getConnectedDistance\n} from 'diagram-js/lib/features/auto-place/AutoPlaceUtil';\n\n\n/**\n * Find the new position for the target element to\n * connect to source.\n *\n * @param {djs.model.Shape} source\n * @param {djs.model.Shape} element\n *\n * @return {Point}\n */\nexport function getNewShapePosition(source, element) {\n\n if (isTextAnnotation(element)) {\n return getTextAnnotationPosition(source, element);\n }\n\n if (isDataElement(element)) {\n return getDataElementPosition(source, element);\n }\n\n if (isFlowNode(element)) {\n return getFlowNodePosition(source, element);\n }\n}\n\nfunction isTextAnnotation(element) {\n return is(element, 'bpmn:TextAnnotation');\n}\n\nfunction isDataElement(element) {\n return isAny(element, ['bpmn:DataObjectReference', 'bpmn:DataStoreReference']);\n}\n\nfunction isFlowNode(element) {\n return is(element, 'bpmn:FlowNode');\n}\n\n\n/**\n * Always try to place element right of source;\n * compute actual distance from previous nodes in flow.\n */\nexport function getFlowNodePosition(source, element) {\n\n const sourceTrbl = asTRBL(source);\n const sourceMid = getMid(source);\n\n const horizontalDistance = getConnectedDistance(source, {\n filter: connection => is(connection, 'bpmn:SequenceFlow')\n });\n\n let margin = 30;\n const minDistance = 80;\n let orientation = 'left';\n\n if (isBoundaryEvent(source)) {\n orientation = getOrientation(source, source.host, -25);\n\n if (orientation.includes('top')) {\n margin *= -1;\n }\n }\n\n const position = {\n x: sourceTrbl.right + horizontalDistance + element.width / 2,\n y: sourceMid.y + getVerticalDistance(orientation, minDistance)\n };\n\n const nextPositionDirection = {\n y: {\n margin,\n minDistance\n }\n };\n\n return findFreePosition(source, element, position, generateGetNextPosition(nextPositionDirection));\n}\n\nfunction isBoundaryEvent(source) {\n return is(source, 'bpmn:BoundaryEvent');\n}\n\n\nfunction getVerticalDistance(orientation, minDistance) {\n if (orientation.includes('top')) {\n return -1 * minDistance;\n } else if (orientation.includes('bottom')) {\n return minDistance;\n } else {\n return 0;\n }\n}\n\n\n/**\n * Always try to place text annotations top right of source.\n */\nexport function getTextAnnotationPosition(source, element) {\n const sourceTrbl = asTRBL(source);\n\n const position = {\n x: sourceTrbl.right + element.width / 2,\n y: sourceTrbl.top - 50 - element.height / 2,\n };\n\n const nextPositionDirection = {\n y: {\n margin: -30,\n minDistance: 20,\n },\n };\n\n return findFreePosition(source, element, position, generateGetNextPosition(nextPositionDirection));\n}\n\n\n/**\n * Always put element bottom right of source.\n */\nexport function getDataElementPosition(source, element) {\n const sourceTrbl = asTRBL(source);\n\n const position = {\n x: sourceTrbl.right - 10 + element.width / 2,\n y: sourceTrbl.bottom + 40 + element.width / 2,\n };\n\n const nextPositionDirection = {\n x: {\n margin: 30,\n minDistance: 30,\n },\n };\n\n return findFreePosition(source, element, position, generateGetNextPosition(nextPositionDirection));\n}","import { getNewShapePosition } from './LocateElementsService';\n\n\n/**\n * BPMN auto-place behavior.\n *\n * @param {EventBus} eventBus\n */\nexport default function LocateElements(eventBus) {\n eventBus.on('autoPlace', locateElementsHandler);\n}\n\nfunction locateElementsHandler(context) {\n var shape = context.shape,\n source = context.source;\n\n return getNewShapePosition(source, shape);\n}\n\n\nLocateElements.$inject = [ 'eventBus' ];","import AutoPlaceModule from 'diagram-js/lib/features/auto-place';\n\nimport LocateElements from './LocateElements';\n\nexport default {\n __depends__: [ AutoPlaceModule ],\n __init__: [ 'locateElements' ],\n locateElements: [ 'type', LocateElements ]\n};","import AutoResize from 'diagram-js/lib/features/auto-resize/AutoResize';\n\nimport inherits from 'inherits';\n\nimport { is } from '../../base/BaseServices';\n\n\n/**\n * Sub class of the AutoResize module which implements a BPMN\n * specific resize function.\n */\nexport default function ResizeElements(injector) {\n\n injector.invoke(AutoResize, this);\n}\n\nResizeElements.$inject = [\n 'injector'\n];\n\ninherits(ResizeElements, AutoResize);\n\n\n/**\n * Resize shapes and lanes.\n *\n * @param {djs.model.Shape} target\n * @param {Bounds} newBounds\n * @param {Object} hints\n */\nResizeElements.prototype.resize = function(target, newBounds, hints) {\n const resizeFunction = is(target, 'bpmn:Participant')\n ? this._modeling.resizeLane\n : this._modeling.resizeShape;\n\n resizeFunction(target, newBounds, null, hints);\n};","import { is } from '../../base/BaseServices';\n\nimport inherits from 'inherits';\n\nimport { forEach } from 'min-dash';\n\nimport AutoResizeProvider from 'diagram-js/lib/features/auto-resize/AutoResizeProvider';\n\n\n/**\n * This module is a provider for automatically resizing parent BPMN elements\n */\nexport default function ResizeElementsBase(eventBus, modeling) {\n AutoResizeProvider.call(this, eventBus);\n\n this._modeling = modeling;\n}\n\ninherits(ResizeElementsBase, AutoResizeProvider);\n\nResizeElementsBase.$inject = [\n 'eventBus',\n 'modeling'\n];\n\n\n/**\n * Check if the given target can be expanded\n *\n * @param {djs.model.Shape} target\n *\n * @return {boolean}\n */\nResizeElementsBase.prototype.canResize = function(elements, target) {\n if (!isResizableTarget(target)) {\n return false;\n }\n\n forEach(elements, function(element) {\n return !is(element, 'bpmn:Lane') && !element.labelTarget;\n });\n};\n\nfunction isResizableTarget(target) {\n return is(target, 'bpmn:Participant') || is(target, 'bpmn:Lane') || is(target, 'bpmn:SubProcess');\n}\n\n","import ResizeElements from './ResizeElements';\nimport ResizeElementsBase from './ResizeElementsBase';\n\n\nexport default {\n __init__: [\n 'resizeElements',\n 'resizeElementsBase'\n ],\n resizeElements: [ 'type', ResizeElements ],\n resizeElementsBase: [ 'type', ResizeElementsBase ]\n};\n","import {\n getBusinessObject,\n is\n} from '../../base/BaseServices';\n\nimport {\n forEach,\n isArray,\n isUndefined,\n omit,\n reduce\n} from 'min-dash';\n\nfunction copyProperties(source, target, properties) {\n if (!isArray(properties)) {\n properties = [ properties ];\n }\n\n forEach(properties, function(property) {\n if (!isUndefined(source[property])) {\n target[property] = source[property];\n }\n });\n}\n\nfunction removeProperties(element, properties) {\n if (!isArray(properties)) {\n properties = [ properties ];\n }\n\n forEach(properties, function(property) {\n if (element[property]) {\n delete element[property];\n }\n });\n}\n\n\nvar LOW_PRIORITY = 750;\n\n\nexport default function CopyPasteElements(bpmnFactory, eventBus, moddleCopy) {\n eventBus.on('copyPaste.copyElement', LOW_PRIORITY, copyElementHandler);\n eventBus.on('moddleCopy.canCopyProperty', canCopyPropertyHandler);\n\n var references;\n\n function copyElementHandler(context) {\n var descriptor = context.descriptor,\n element = context.element;\n\n var businessObject = descriptor.oldBusinessObject = getBusinessObject(element);\n\n descriptor.type = element.type;\n\n copyProperties(businessObject, descriptor, 'name');\n\n descriptor.di = {};\n\n // fill and stroke will be set to DI\n copyProperties(businessObject.di, descriptor.di, [\n 'fill',\n 'stroke'\n ]);\n\n copyProperties(businessObject.di, descriptor, 'isExpanded');\n\n if (isLabel(descriptor)) {\n return descriptor;\n }\n\n // default sequence flow\n if (businessObject.default) {\n descriptor.default = businessObject.default.id;\n }\n }\n\n function canCopyPropertyHandler(context) {\n var parent = context.parent,\n property = context.property,\n propertyName = context.propertyName,\n bpmnProcess;\n\n if (\n propertyName === 'processRef' &&\n is(parent, 'bpmn:Participant') &&\n is(property, 'bpmn:Process')\n ) {\n bpmnProcess = bpmnFactory.create('bpmn:Process');\n\n // return copy of process\n return moddleCopy.copyElement(property, bpmnProcess);\n }\n }\n\n function resolveReferences(descriptor, cache) {\n var businessObject = getBusinessObject(descriptor);\n\n // default sequence flows\n if (descriptor.default) {\n references[descriptor.default] = {\n element: businessObject,\n property: 'default'\n };\n }\n\n // boundary events\n if (descriptor.host) {\n getBusinessObject(descriptor).attachedToRef = getBusinessObject(cache[descriptor.host]);\n }\n\n references = omit(references, reduce(references, function (array, reference, key) {\n var element = reference.element,\n property = reference.property;\n\n if (key === descriptor.id) {\n element[property] = businessObject;\n\n array.push(descriptor.id);\n }\n\n return array;\n }, []));\n }\n\n eventBus.on('copyPaste.pasteElements', function () {\n references = {};\n });\n\n eventBus.on('copyPaste.pasteElement', function (context) {\n var cache = context.cache,\n descriptor = context.descriptor,\n oldBusinessObject = descriptor.oldBusinessObject,\n newBusinessObject;\n\n // do NOT copy business object if external label\n if (isLabel(descriptor)) {\n descriptor.businessObject = getBusinessObject(cache[descriptor.labelTarget]);\n return;\n }\n\n newBusinessObject = bpmnFactory.create(oldBusinessObject.$type);\n\n descriptor.businessObject = moddleCopy.copyElement(\n oldBusinessObject,\n newBusinessObject\n );\n\n // resolve references e.g. default sequence flow\n resolveReferences(descriptor, cache);\n\n copyProperties(descriptor, newBusinessObject, [\n 'isExpanded',\n 'name'\n ]);\n\n removeProperties(descriptor, 'oldBusinessObject');\n });\n}\n\n\nCopyPasteElements.$inject = [\n 'bpmnFactory',\n 'eventBus',\n 'moddleCopy'\n];\n\n// helpers //////////\n\nfunction isLabel(element) {\n return !!element.labelTarget;\n}\n","import {\n find,\n forEach,\n isArray,\n isDefined,\n isObject,\n matchPattern,\n has,\n sortBy\n} from 'min-dash';\n\nvar DISALLOWED_PROPERTIES = [\n 'artifacts',\n 'dataInputAssociations',\n 'dataOutputAssociations',\n 'default',\n 'flowElements',\n 'lanes',\n 'incoming',\n 'outgoing'\n];\n\n/**\n * @typedef {Function} listener\n *\n * @param {Object} context\n * @param {Array} context.propertyNames\n * @param {ModdleElement} context.sourceElement\n * @param {ModdleElement} context.targetElement\n *\n * @returns {Array|boolean} - Return properties to be copied or false to disallow\n * copying.\n */\n\n/**\n * @typedef {Function} listener\n *\n * @param {Object} context\n * @param {ModdleElement} context.parent\n * @param {*} context.property\n * @param {string} context.propertyName\n *\n * @returns {*|boolean} - Return copied property or false to disallow\n * copying.\n */\n\n/**\n * @typedef {Function} listener\n *\n * @param {Object} context\n * @param {ModdleElement} context.parent\n * @param {*} context.property\n * @param {string} context.propertyName\n *\n * @returns {boolean} - Return false to disallow\n * setting copied property.\n */\n\n/**\n * Utility for copying model properties from source element to target element.\n *\n * @param {EventBus} eventBus\n * @param {BpmnFactory} bpmnFactory\n * @param {BpmnModdle} moddle\n */\nexport default function ModdleCopy(eventBus, bpmnFactory, moddle) {\n this._bpmnFactory = bpmnFactory;\n this._eventBus = eventBus;\n this._moddle = moddle;\n\n // copy extension elements last\n eventBus.on('moddleCopy.canCopyProperties', canCopyPropertiesHandler);\n\n // default check whether property can be copied\n eventBus.on('moddleCopy.canCopyProperty', canCopyPropertyHandler);\n\n // do NOT allow to copy empty extension elements\n eventBus.on('moddleCopy.canSetCopiedProperty', canSetCopiedPropertyHandler);\n\n function canCopyPropertiesHandler(context) {\n var propertyNames = context.propertyNames;\n\n if (!propertyNames || !propertyNames.length) {\n return;\n }\n\n return sortBy(propertyNames, function(propertyName) {\n return propertyName === 'extensionElements';\n });\n }\n\n function canCopyPropertyHandler(context) {\n var parent = context.parent,\n parentDescriptor = isObject(parent) && parent.$descriptor,\n propertyName = context.propertyName;\n\n if (propertyName && DISALLOWED_PROPERTIES.includes(propertyName)) {\n // disallow copying property\n return false;\n }\n\n if (propertyName &&\n parentDescriptor &&\n !find(parentDescriptor.properties, matchPattern({ name: propertyName }))) {\n // disallow copying property\n return false;\n }\n }\n\n function canSetCopiedPropertyHandler(context) {\n var property = context.property;\n\n if (is(property, 'bpmn:ExtensionElements') && (!property.values || !property.values.length)) {\n // disallow setting copied property\n return false;\n }\n }\n}\n\n\nModdleCopy.$inject = [\n 'eventBus',\n 'bpmnFactory',\n 'moddle'\n];\n\n/**\n * Copy model properties of source element to target element.\n *\n * @param {ModdleElement} sourceElement\n * @param {ModdleElement} targetElement\n * @param {Array} [propertyNames]\n *\n * @param {ModdleElement}\n */\nModdleCopy.prototype.copyElement = function (sourceElement, targetElement, propertyNames) {\n if (!isArray(propertyNames)) {\n propertyNames = getPropertyNames(sourceElement.$descriptor);\n }\n\n const canCopyProperties = this._eventBus.fire('moddleCopy.canCopyProperties', {\n propertyNames,\n sourceElement,\n targetElement\n });\n\n if (canCopyProperties === false) {\n return targetElement;\n }\n\n if (isArray(canCopyProperties)) {\n propertyNames = canCopyProperties;\n }\n\n const self = this;\n\n // copy properties\n forEach(propertyNames, function (propertyName) {\n const sourceProperty = has(sourceElement, propertyName) ? sourceElement.get(propertyName) : undefined;\n\n const copiedProperty = self.copyProperty(sourceProperty, targetElement, propertyName);\n\n const canSetProperty = self._eventBus.fire('moddleCopy.canSetCopiedProperty', {\n parent: targetElement,\n property: copiedProperty,\n propertyName\n });\n\n if (canSetProperty === false) {\n return;\n }\n\n if (isDefined(copiedProperty)) {\n targetElement.set(propertyName, copiedProperty);\n }\n });\n\n return targetElement;\n};\n\n\n/**\n * Copy model property.\n *\n * @param {*} property\n * @param {ModdleElement} parent\n * @param {string} propertyName\n *\n * @returns {*}\n */\nModdleCopy.prototype.copyProperty = function (property, parent, propertyName) {\n const copiedProperty = this._eventBus.fire('moddleCopy.canCopyProperty', {\n parent,\n property,\n propertyName\n });\n\n if (copiedProperty === false) {\n return;\n }\n\n if (copiedProperty) {\n if (isObject(copiedProperty) && copiedProperty.$type && !copiedProperty.$parent) {\n copiedProperty.$parent = parent;\n }\n\n return copiedProperty;\n }\n\n const propertyDescriptor = this._moddle.getPropertyDescriptor(parent, propertyName);\n\n if (propertyDescriptor.isId || propertyDescriptor.isReference) {\n return;\n }\n\n if (isArray(property)) {\n return property.reduce((childProperties, childProperty) => {\n const copiedProperty = this.copyProperty(childProperty, parent, propertyName);\n\n if (copiedProperty) {\n copiedProperty.$parent = parent;\n return [...childProperties, copiedProperty];\n }\n\n return childProperties;\n }, []);\n }\n\n if (isObject(property) && property.$type) {\n if (this._moddle.getElementDescriptor(property).isGeneric) {\n return;\n }\n\n let copiedProperty = this._bpmnFactory.create(property.$type);\n copiedProperty.$parent = parent;\n copiedProperty = this.copyElement(property, copiedProperty);\n\n return copiedProperty;\n }\n\n return property;\n};\n\n\n// helpers //////////\n\nexport function getPropertyNames(descriptor, keepDefaultProperties) {\n return descriptor.properties.reduce((properties, property) => {\n if (keepDefaultProperties && property.default) {\n return properties;\n }\n\n return [...properties, property.name];\n }, []);\n}\n\n\nfunction is(element, type) {\n return element?.$instanceOf?.(type) || false;\n}","import CopyPasteModule from 'diagram-js/lib/features/copy-paste';\n\nimport CopyPasteElements from './CopyPasteElements';\nimport ModdleCopy from './ModdleCopy';\n\nexport default {\n __depends__: [\n CopyPasteModule\n ],\n __init__: [ 'copyPasteElements', 'moddleCopy' ],\n copyPasteElements: [ 'type', CopyPasteElements ],\n moddleCopy: [ 'type', ModdleCopy ]\n};\n","import {\n pick,\n assign,\n filter,\n forEach,\n isArray,\n isUndefined,\n has\n} from 'min-dash';\n\nimport {\n isAny\n} from '../modelElements/services/ModelingService';\n\nimport {\n is,\n getBusinessObject,\n isExpanded,\n isEventSubProcess\n} from '../../base/BaseServices';\n\nimport { getPropertyNames } from '../copyPasteElements/ModdleCopy';\n\nfunction copyProperties(source, target, properties) {\n if (!isArray(properties)) {\n properties = [ properties ];\n }\n\n forEach(properties, function(property) {\n if (!isUndefined(source[property])) {\n target[property] = source[property];\n }\n });\n}\n\nvar CUSTOM_PROPERTIES = [\n 'cancelActivity',\n 'instantiate',\n 'eventGatewayType',\n 'triggeredByEvent',\n 'isInterrupting'\n];\n\n\nfunction toggeling(element, target) {\n\n var oldCollapsed = (\n element && has(element, 'collapsed') ? element.collapsed : !isExpanded(element)\n );\n\n var targetCollapsed;\n\n if (target && (has(target, 'collapsed') || has(target, 'isExpanded'))) {\n\n // property is explicitly set so use it\n targetCollapsed = (\n has(target, 'collapsed') ? target.collapsed : !target.isExpanded\n );\n } else {\n\n // keep old state\n targetCollapsed = oldCollapsed;\n }\n\n if (oldCollapsed !== targetCollapsed) {\n element.collapsed = oldCollapsed;\n return true;\n }\n\n return false;\n}\n\n\n\n/**\n * This module takes care of replacing BPMN elements\n */\nexport default function ReplaceElements(\n bpmnFactory,\n elementFactory,\n moddleCopy,\n modeling,\n replace,\n rules,\n selection\n) {\n /**\n * Prepares a new business object for the replacement element\n * and triggers the replace operation.\n *\n * @param {djs.model.Base} element\n * @param {Object} target\n * @param {Object} [hints]\n *\n * @return {djs.model.Base} the newly created element\n */\n function replaceElement(element, target, hints) {\n hints = hints || {};\n\n const type = target.type;\n const oldBusinessObject = element.businessObject;\n\n if (isSubProcess(oldBusinessObject) && type === 'bpmn:SubProcess' && toggeling(element, target)) {\n modeling.toggleCollapse(element);\n return element;\n }\n\n let newBusinessObject = bpmnFactory.create(type);\n let newElement = {\n type: type,\n businessObject: newBusinessObject\n };\n \n const elementProps = getPropertyNames(oldBusinessObject.$descriptor);\n const newElementProps = getPropertyNames(newBusinessObject.$descriptor, true);\n const copyProps = intersection(elementProps, newElementProps);\n\n assign(newBusinessObject, pick(target, CUSTOM_PROPERTIES));\n \n const properties = filter(copyProps, (propertyName) => {\n if (propertyName === 'eventDefinitions') {\n return hasEventDefinition(element, target.eventDefinitionType);\n }\n\n if (propertyName === 'loopCharacteristics') {\n return !isEventSubProcess(newBusinessObject);\n }\n\n if (has(newBusinessObject, propertyName)) {\n return false;\n }\n\n if (propertyName === 'processRef' && target.isExpanded === false) {\n return false;\n }\n\n if (propertyName === 'triggeredByEvent') {\n return false;\n }\n\n return true;\n });\n \n newBusinessObject = moddleCopy.copyElement(oldBusinessObject, newBusinessObject, properties);\n\n if (target.eventDefinitionType) {\n if (!hasEventDefinition(newBusinessObject, target.eventDefinitionType)) {\n newElement.eventDefinitionType = target.eventDefinitionType;\n newElement.eventDefinitionAttrs = target.eventDefinitionAttrs;\n }\n }\n \n if (is(oldBusinessObject, 'bpmn:Activity')) {\n if (isSubProcess(oldBusinessObject)) {\n newElement.isExpanded = isExpanded(oldBusinessObject);\n } else if (target && has(target, 'isExpanded')) {\n newElement.isExpanded = target.isExpanded;\n }\n\n if (isExpanded(oldBusinessObject) && !is(oldBusinessObject, 'bpmn:Task') && newElement.isExpanded) {\n newElement.width = element.width;\n newElement.height = element.height;\n }\n }\n\n if (is(oldBusinessObject, 'bpmn:Participant')) {\n if (target.isExpanded === true) {\n newBusinessObject.processRef = bpmnFactory.create('bpmn:Process');\n } else {\n hints.moveChildren = false;\n }\n\n newElement.width = element.width;\n newElement.height = elementFactory._getDefaultSize(newBusinessObject).height;\n }\n\n if (!rules.allowed('shape.resize', { shape: newBusinessObject })) {\n newElement.height = elementFactory._getDefaultSize(newBusinessObject).height;\n newElement.width = elementFactory._getDefaultSize(newBusinessObject).width;\n }\n\n newBusinessObject.name = oldBusinessObject.name;\n\n if (isAny(oldBusinessObject, ['bpmn:ExclusiveGateway', 'bpmn:InclusiveGateway', 'bpmn:Activity']) &&\n isAny(newBusinessObject, ['bpmn:ExclusiveGateway', 'bpmn:InclusiveGateway', 'bpmn:Activity'])) {\n newBusinessObject.default = oldBusinessObject.default;\n }\n\n if (target.host && !is(oldBusinessObject, 'bpmn:BoundaryEvent') && is(newBusinessObject, 'bpmn:BoundaryEvent')) {\n newElement.host = target.host;\n }\n\n if (newElement.type === 'bpmn:DataStoreReference' || newElement.type === 'bpmn:DataObjectReference') {\n newElement.x = element.x + (element.width - newElement.width) / 2;\n }\n \n newElement.di = {};\n copyProperties(oldBusinessObject.di, newElement.di, ['fill', 'stroke']);\n\n const replacedElement = replace.replaceElement(element, newElement, hints);\n \n if (hints.select !== false) {\n selection.select(replacedElement);\n }\n \n return replacedElement;\n }\n\n this.replaceElement = replaceElement;\n}\n\n\nReplaceElements.$inject = [\n 'bpmnFactory',\n 'elementFactory',\n 'moddleCopy',\n 'modeling',\n 'replace',\n 'rules',\n 'selection'\n];\n\n\nfunction isSubProcess(bo) {\n return is(bo, 'bpmn:SubProcess');\n}\n\nfunction hasEventDefinition(element, type) {\n\n var bo = getBusinessObject(element);\n\n return type && bo.get('eventDefinitions').some(function(definition) {\n return is(definition, type);\n });\n}\n\n/**\n * Compute intersection between two arrays.\n */\nfunction intersection(a1, a2) {\n return a1.filter(function(el) {\n return a2.indexOf(el) !== -1;\n });\n}\n","import CopyPasteModule from '../copyPasteElements';\nimport ReplaceModule from 'diagram-js/lib/features/replace';\nimport SelectionModule from 'diagram-js/lib/features/selection';\n\nimport ReplaceElements from './ReplaceElements';\n\nexport default {\n __depends__: [\n CopyPasteModule,\n ReplaceModule,\n SelectionModule\n ],\n bpmnReplace: [ 'type', ReplaceElements ]\n};\n","import {\n getBusinessObject,\n isExpanded\n} from '../../../base/BaseServices';\n\n\n/**\n * Returns true, if an element is from a different type\n * than a target definition. Takes into account the type,\n * event definition type and triggeredByEvent property.\n *\n * @param {djs.model.Base} element\n *\n * @return {boolean}\n */\nexport function isDifferentType(element) {\n\n return function(entry) {\n const target = entry.target;\n const businessObject = getBusinessObject(element);\n const eventDefinition = businessObject.eventDefinitions && businessObject.eventDefinitions[0];\n \n const isTypeEqual = businessObject.$type === target.type;\n const isEventDefinitionEqual = (eventDefinition && eventDefinition.$type) === target.eventDefinitionType;\n const isTriggeredByEventEqual = businessObject.triggeredByEvent === target.triggeredByEvent;\n const isExpandedEqual = target.isExpanded === undefined || target.isExpanded === isExpanded(businessObject);\n \n return !isTypeEqual || !isEventDefinitionEqual || !isTriggeredByEventEqual || !isExpandedEqual;\n };\n \n}","export var START_EVENT = [\n {\n label: 'Start Event',\n actionName: 'replace-with-none-start',\n className: 'bpmn-icon-start-event-none',\n target: {\n type: 'bpmn:StartEvent'\n }\n },\n {\n label: 'Intermediate Throw Event',\n actionName: 'replace-with-none-intermediate-throwing',\n className: 'bpmn-icon-intermediate-event-none',\n target: {\n type: 'bpmn:IntermediateThrowEvent'\n }\n },\n {\n label: 'End Event',\n actionName: 'replace-with-none-end',\n className: 'bpmn-icon-end-event-none',\n target: {\n type: 'bpmn:EndEvent'\n }\n },\n {\n label: 'Message Start Event',\n actionName: 'replace-with-message-start',\n className: 'bpmn-icon-start-event-message',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Timer Start Event',\n actionName: 'replace-with-timer-start',\n className: 'bpmn-icon-start-event-timer',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition'\n }\n },\n {\n label: 'Conditional Start Event',\n actionName: 'replace-with-conditional-start',\n className: 'bpmn-icon-start-event-condition',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition'\n }\n },\n {\n label: 'Signal Start Event',\n actionName: 'replace-with-signal-start',\n className: 'bpmn-icon-start-event-signal',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n }\n];\n\nexport var START_EVENT_SUB_PROCESS = [\n {\n label: 'Start Event',\n actionName: 'replace-with-none-start',\n className: 'bpmn-icon-start-event-none',\n target: {\n type: 'bpmn:StartEvent'\n }\n },\n {\n label: 'Intermediate Throw Event',\n actionName: 'replace-with-none-intermediate-throwing',\n className: 'bpmn-icon-intermediate-event-none',\n target: {\n type: 'bpmn:IntermediateThrowEvent'\n }\n },\n {\n label: 'End Event',\n actionName: 'replace-with-none-end',\n className: 'bpmn-icon-end-event-none',\n target: {\n type: 'bpmn:EndEvent'\n }\n }\n];\n\nexport var INTERMEDIATE_EVENT = [\n {\n label: 'Start Event',\n actionName: 'replace-with-none-start',\n className: 'bpmn-icon-start-event-none',\n target: {\n type: 'bpmn:StartEvent'\n }\n },\n {\n label: 'Intermediate Throw Event',\n actionName: 'replace-with-none-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-none',\n target: {\n type: 'bpmn:IntermediateThrowEvent'\n }\n },\n {\n label: 'End Event',\n actionName: 'replace-with-none-end',\n className: 'bpmn-icon-end-event-none',\n target: {\n type: 'bpmn:EndEvent'\n }\n },\n {\n label: 'Message Intermediate Catch Event',\n actionName: 'replace-with-message-intermediate-catch',\n className: 'bpmn-icon-intermediate-event-catch-message',\n target: {\n type: 'bpmn:IntermediateCatchEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Message Intermediate Throw Event',\n actionName: 'replace-with-message-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-throw-message',\n target: {\n type: 'bpmn:IntermediateThrowEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Timer Intermediate Catch Event',\n actionName: 'replace-with-timer-intermediate-catch',\n className: 'bpmn-icon-intermediate-event-catch-timer',\n target: {\n type: 'bpmn:IntermediateCatchEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition'\n }\n },\n {\n label: 'Escalation Intermediate Throw Event',\n actionName: 'replace-with-escalation-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-throw-escalation',\n target: {\n type: 'bpmn:IntermediateThrowEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition'\n }\n },\n {\n label: 'Conditional Intermediate Catch Event',\n actionName: 'replace-with-conditional-intermediate-catch',\n className: 'bpmn-icon-intermediate-event-catch-condition',\n target: {\n type: 'bpmn:IntermediateCatchEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition'\n }\n },\n {\n label: 'Link Intermediate Catch Event',\n actionName: 'replace-with-link-intermediate-catch',\n className: 'bpmn-icon-intermediate-event-catch-link',\n target: {\n type: 'bpmn:IntermediateCatchEvent',\n eventDefinitionType: 'bpmn:LinkEventDefinition',\n eventDefinitionAttrs: {\n name: ''\n }\n }\n },\n {\n label: 'Link Intermediate Throw Event',\n actionName: 'replace-with-link-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-throw-link',\n target: {\n type: 'bpmn:IntermediateThrowEvent',\n eventDefinitionType: 'bpmn:LinkEventDefinition',\n eventDefinitionAttrs: {\n name: ''\n }\n }\n },\n {\n label: 'Compensation Intermediate Throw Event',\n actionName: 'replace-with-compensation-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-throw-compensation',\n target: {\n type: 'bpmn:IntermediateThrowEvent',\n eventDefinitionType: 'bpmn:CompensateEventDefinition'\n }\n },\n {\n label: 'Signal Intermediate Catch Event',\n actionName: 'replace-with-signal-intermediate-catch',\n className: 'bpmn-icon-intermediate-event-catch-signal',\n target: {\n type: 'bpmn:IntermediateCatchEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n },\n {\n label: 'Signal Intermediate Throw Event',\n actionName: 'replace-with-signal-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-throw-signal',\n target: {\n type: 'bpmn:IntermediateThrowEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n }\n];\n\nexport var END_EVENT = [\n {\n label: 'Start Event',\n actionName: 'replace-with-none-start',\n className: 'bpmn-icon-start-event-none',\n target: {\n type: 'bpmn:StartEvent'\n }\n },\n {\n label: 'Intermediate Throw Event',\n actionName: 'replace-with-none-intermediate-throw',\n className: 'bpmn-icon-intermediate-event-none',\n target: {\n type: 'bpmn:IntermediateThrowEvent'\n }\n },\n {\n label: 'End Event',\n actionName: 'replace-with-none-end',\n className: 'bpmn-icon-end-event-none',\n target: {\n type: 'bpmn:EndEvent'\n }\n },\n {\n label: 'Message End Event',\n actionName: 'replace-with-message-end',\n className: 'bpmn-icon-end-event-message',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Escalation End Event',\n actionName: 'replace-with-escalation-end',\n className: 'bpmn-icon-end-event-escalation',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition'\n }\n },\n {\n label: 'Error End Event',\n actionName: 'replace-with-error-end',\n className: 'bpmn-icon-end-event-error',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:ErrorEventDefinition'\n }\n },\n {\n label: 'Cancel End Event',\n actionName: 'replace-with-cancel-end',\n className: 'bpmn-icon-end-event-cancel',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:CancelEventDefinition'\n }\n },\n {\n label: 'Compensation End Event',\n actionName: 'replace-with-compensation-end',\n className: 'bpmn-icon-end-event-compensation',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:CompensateEventDefinition'\n }\n },\n {\n label: 'Signal End Event',\n actionName: 'replace-with-signal-end',\n className: 'bpmn-icon-end-event-signal',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n },\n {\n label: 'Terminate End Event',\n actionName: 'replace-with-terminate-end',\n className: 'bpmn-icon-end-event-terminate',\n target: {\n type: 'bpmn:EndEvent',\n eventDefinitionType: 'bpmn:TerminateEventDefinition'\n }\n }\n];\n\nexport var GATEWAY = [\n {\n label: 'Exclusive Gateway',\n actionName: 'replace-with-exclusive-gateway',\n className: 'bpmn-icon-gateway-xor',\n target: {\n type: 'bpmn:ExclusiveGateway'\n }\n },\n {\n label: 'Parallel Gateway',\n actionName: 'replace-with-parallel-gateway',\n className: 'bpmn-icon-gateway-parallel',\n target: {\n type: 'bpmn:ParallelGateway'\n }\n },\n {\n label: 'Inclusive Gateway',\n actionName: 'replace-with-inclusive-gateway',\n className: 'bpmn-icon-gateway-or',\n target: {\n type: 'bpmn:InclusiveGateway'\n }\n },\n {\n label: 'Complex Gateway',\n actionName: 'replace-with-complex-gateway',\n className: 'bpmn-icon-gateway-complex',\n target: {\n type: 'bpmn:ComplexGateway'\n }\n },\n {\n label: 'Event based Gateway',\n actionName: 'replace-with-event-based-gateway',\n className: 'bpmn-icon-gateway-eventbased',\n target: {\n type: 'bpmn:EventBasedGateway',\n instantiate: false,\n eventGatewayType: 'Exclusive'\n }\n }\n];\n\nexport var SUBPROCESS_EXPANDED = [\n {\n label: 'Transaction',\n actionName: 'replace-with-transaction',\n className: 'bpmn-icon-transaction',\n target: {\n type: 'bpmn:Transaction',\n isExpanded: true\n }\n },\n {\n label: 'Event Sub Process',\n actionName: 'replace-with-event-subprocess',\n className: 'bpmn-icon-event-subprocess-expanded',\n target: {\n type: 'bpmn:SubProcess',\n triggeredByEvent: true,\n isExpanded: true\n }\n },\n {\n label: 'Sub Process (collapsed)',\n actionName: 'replace-with-collapsed-subprocess',\n className: 'bpmn-icon-subprocess-collapsed',\n target: {\n type: 'bpmn:SubProcess',\n isExpanded: false\n }\n }\n];\n\nexport var TRANSACTION = [\n {\n label: 'Sub Process',\n actionName: 'replace-with-subprocess',\n className: 'bpmn-icon-subprocess-expanded',\n target: {\n type: 'bpmn:SubProcess',\n isExpanded: true\n }\n },\n {\n label: 'Event Sub Process',\n actionName: 'replace-with-event-subprocess',\n className: 'bpmn-icon-event-subprocess-expanded',\n target: {\n type: 'bpmn:SubProcess',\n triggeredByEvent: true,\n isExpanded: true\n }\n }\n];\n\nexport var EVENT_SUB_PROCESS = [\n {\n label: 'Sub Process',\n actionName: 'replace-with-subprocess',\n className: 'bpmn-icon-subprocess-expanded',\n target: {\n type: 'bpmn:SubProcess',\n isExpanded: true\n }\n },\n {\n label: 'Transaction',\n actionName: 'replace-with-transaction',\n className: 'bpmn-icon-transaction',\n target: {\n type: 'bpmn:Transaction',\n isExpanded: true\n }\n }\n];\n\nexport var TASK = [\n {\n label: 'Task',\n actionName: 'replace-with-task',\n className: 'bpmn-icon-task',\n target: {\n type: 'bpmn:Task'\n }\n },\n {\n label: 'Send Task',\n actionName: 'replace-with-send-task',\n className: 'bpmn-icon-send',\n target: {\n type: 'bpmn:SendTask'\n }\n },\n {\n label: 'Receive Task',\n actionName: 'replace-with-receive-task',\n className: 'bpmn-icon-receive',\n target: {\n type: 'bpmn:ReceiveTask'\n }\n },\n {\n label: 'User Task',\n actionName: 'replace-with-user-task',\n className: 'bpmn-icon-user',\n target: {\n type: 'bpmn:UserTask'\n }\n },\n {\n label: 'Manual Task',\n actionName: 'replace-with-manual-task',\n className: 'bpmn-icon-manual',\n target: {\n type: 'bpmn:ManualTask'\n }\n },\n {\n label: 'Business Rule Task',\n actionName: 'replace-with-rule-task',\n className: 'bpmn-icon-business-rule',\n target: {\n type: 'bpmn:BusinessRuleTask'\n }\n },\n {\n label: 'Service Task',\n actionName: 'replace-with-service-task',\n className: 'bpmn-icon-service',\n target: {\n type: 'bpmn:ServiceTask'\n }\n },\n {\n label: 'Script Task',\n actionName: 'replace-with-script-task',\n className: 'bpmn-icon-script',\n target: {\n type: 'bpmn:ScriptTask'\n }\n },\n {\n label: 'Call Activity',\n actionName: 'replace-with-call-activity',\n className: 'bpmn-icon-call-activity',\n target: {\n type: 'bpmn:CallActivity'\n }\n },\n {\n label: 'Sub Process (collapsed)',\n actionName: 'replace-with-collapsed-subprocess',\n className: 'bpmn-icon-subprocess-collapsed',\n target: {\n type: 'bpmn:SubProcess',\n isExpanded: false\n }\n },\n {\n label: 'Sub Process (expanded)',\n actionName: 'replace-with-expanded-subprocess',\n className: 'bpmn-icon-subprocess-expanded',\n target: {\n type: 'bpmn:SubProcess',\n isExpanded: true\n }\n }\n];\n\nexport var DATA_OBJECT_REFERENCE = [\n {\n label: 'Data Store Reference',\n actionName: 'replace-with-data-store-reference',\n className: 'bpmn-icon-data-store',\n target: {\n type: 'bpmn:DataStoreReference'\n }\n }\n];\n\nexport var DATA_STORE_REFERENCE = [\n {\n label: 'Data Object Reference',\n actionName: 'replace-with-data-object-reference',\n className: 'bpmn-icon-data-object',\n target: {\n type: 'bpmn:DataObjectReference'\n }\n }\n];\n\nexport var BOUNDARY_EVENT = [\n {\n label: 'Message Boundary Event',\n actionName: 'replace-with-message-boundary',\n className: 'bpmn-icon-intermediate-event-catch-message',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Timer Boundary Event',\n actionName: 'replace-with-timer-boundary',\n className: 'bpmn-icon-intermediate-event-catch-timer',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition'\n }\n },\n {\n label: 'Escalation Boundary Event',\n actionName: 'replace-with-escalation-boundary',\n className: 'bpmn-icon-intermediate-event-catch-escalation',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition'\n }\n },\n {\n label: 'Conditional Boundary Event',\n actionName: 'replace-with-conditional-boundary',\n className: 'bpmn-icon-intermediate-event-catch-condition',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition'\n }\n },\n {\n label: 'Error Boundary Event',\n actionName: 'replace-with-error-boundary',\n className: 'bpmn-icon-intermediate-event-catch-error',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:ErrorEventDefinition'\n }\n },\n {\n label: 'Cancel Boundary Event',\n actionName: 'replace-with-cancel-boundary',\n className: 'bpmn-icon-intermediate-event-catch-cancel',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:CancelEventDefinition'\n }\n },\n {\n label: 'Signal Boundary Event',\n actionName: 'replace-with-signal-boundary',\n className: 'bpmn-icon-intermediate-event-catch-signal',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n },\n {\n label: 'Compensation Boundary Event',\n actionName: 'replace-with-compensation-boundary',\n className: 'bpmn-icon-intermediate-event-catch-compensation',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:CompensateEventDefinition'\n }\n },\n {\n label: 'Message Boundary Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-message-boundary',\n className: 'bpmn-icon-intermediate-event-catch-non-interrupting-message',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition',\n cancelActivity: false\n }\n },\n {\n label: 'Timer Boundary Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-timer-boundary',\n className: 'bpmn-icon-intermediate-event-catch-non-interrupting-timer',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition',\n cancelActivity: false\n }\n },\n {\n label: 'Escalation Boundary Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-escalation-boundary',\n className: 'bpmn-icon-intermediate-event-catch-non-interrupting-escalation',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition',\n cancelActivity: false\n }\n },\n {\n label: 'Conditional Boundary Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-conditional-boundary',\n className: 'bpmn-icon-intermediate-event-catch-non-interrupting-condition',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition',\n cancelActivity: false\n }\n },\n {\n label: 'Signal Boundary Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-signal-boundary',\n className: 'bpmn-icon-intermediate-event-catch-non-interrupting-signal',\n target: {\n type: 'bpmn:BoundaryEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition',\n cancelActivity: false\n }\n }\n];\n\nexport var EVENT_SUB_PROCESS_START_EVENT = [\n {\n label: 'Message Start Event',\n actionName: 'replace-with-message-start',\n className: 'bpmn-icon-start-event-message',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition'\n }\n },\n {\n label: 'Timer Start Event',\n actionName: 'replace-with-timer-start',\n className: 'bpmn-icon-start-event-timer',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition'\n }\n },\n {\n label: 'Conditional Start Event',\n actionName: 'replace-with-conditional-start',\n className: 'bpmn-icon-start-event-condition',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition'\n }\n },\n {\n label: 'Signal Start Event',\n actionName: 'replace-with-signal-start',\n className: 'bpmn-icon-start-event-signal',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition'\n }\n },\n {\n label: 'Error Start Event',\n actionName: 'replace-with-error-start',\n className: 'bpmn-icon-start-event-error',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:ErrorEventDefinition'\n }\n },\n {\n label: 'Escalation Start Event',\n actionName: 'replace-with-escalation-start',\n className: 'bpmn-icon-start-event-escalation',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition'\n }\n },\n {\n label: 'Compensation Start Event',\n actionName: 'replace-with-compensation-start',\n className: 'bpmn-icon-start-event-compensation',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:CompensateEventDefinition'\n }\n },\n {\n label: 'Message Start Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-message-start',\n className: 'bpmn-icon-start-event-non-interrupting-message',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:MessageEventDefinition',\n isInterrupting: false\n }\n },\n {\n label: 'Timer Start Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-timer-start',\n className: 'bpmn-icon-start-event-non-interrupting-timer',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:TimerEventDefinition',\n isInterrupting: false\n }\n },\n {\n label: 'Conditional Start Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-conditional-start',\n className: 'bpmn-icon-start-event-non-interrupting-condition',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:ConditionalEventDefinition',\n isInterrupting: false\n }\n },\n {\n label: 'Signal Start Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-signal-start',\n className: 'bpmn-icon-start-event-non-interrupting-signal',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:SignalEventDefinition',\n isInterrupting: false\n }\n },\n {\n label: 'Escalation Start Event (non-interrupting)',\n actionName: 'replace-with-non-interrupting-escalation-start',\n className: 'bpmn-icon-start-event-non-interrupting-escalation',\n target: {\n type: 'bpmn:StartEvent',\n eventDefinitionType: 'bpmn:EscalationEventDefinition',\n isInterrupting: false\n }\n }\n];\n\nexport var SEQUENCE_FLOW = [\n {\n label: 'Sequence Flow',\n actionName: 'replace-with-sequence-flow',\n className: 'bpmn-icon-connection'\n },\n {\n label: 'Default Flow',\n actionName: 'replace-with-default-flow',\n className: 'bpmn-icon-default-flow'\n },\n {\n label: 'Conditional Flow',\n actionName: 'replace-with-conditional-flow',\n className: 'bpmn-icon-conditional-flow'\n }\n];\n\nexport var PARTICIPANT = [\n {\n label: 'Expanded Pool',\n actionName: 'replace-with-expanded-pool',\n className: 'bpmn-icon-participant',\n target: {\n type: 'bpmn:Participant',\n isExpanded: true\n }\n },\n {\n label: function(element) {\n var label = 'Empty Pool';\n\n if (element.children && element.children.length) {\n label += ' (removes content)';\n }\n\n return label;\n },\n actionName: 'replace-with-collapsed-pool',\n\n className: 'bpmn-icon-lane',\n target: {\n type: 'bpmn:Participant',\n isExpanded: false\n }\n }\n];\n","import {\n getBusinessObject,\n is,\n isEventSubProcess,\n isExpanded\n} from '../../base/BaseServices';\n\nimport {\n isDifferentType\n} from './services/TypeService';\n\nimport {\n forEach,\n filter\n} from 'min-dash';\n\nimport * as replaceOptions from '../replaceElements/ReplaceOptions';\n\n\n/**\n * This module is an element agnostic replace menu provider for the popup menu.\n */\nexport default function ReplacePopupMenu(\n bpmnFactory, popupMenu, modeling, moddle,\n bpmnReplace, rules, translate) {\n\n this._bpmnFactory = bpmnFactory;\n this._popupMenu = popupMenu;\n this._modeling = modeling;\n this._moddle = moddle;\n this._bpmnReplace = bpmnReplace;\n this._rules = rules;\n this._translate = translate;\n\n this.register();\n}\n\nReplacePopupMenu.$inject = [\n 'bpmnFactory',\n 'popupMenu',\n 'modeling',\n 'moddle',\n 'bpmnReplace',\n 'rules',\n 'translate'\n];\n\n\n/**\n * Register replace menu provider in the popup menu\n */\nReplacePopupMenu.prototype.register = function() {\n this._popupMenu.registerProvider('bpmn-replace', this);\n};\n\n\n/**\n * Get all entries from replaceOptions for the given element and apply filters\n * on them. Get for example only elements, which are different from the current one.\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of menu entry items\n */\nReplacePopupMenu.prototype.getEntries = function(element) {\n\n var businessObject = element.businessObject;\n\n var rules = this._rules;\n\n var entries;\n\n if (!rules.allowed('shape.replace', { element: element })) {\n return [];\n }\n\n var differentType = isDifferentType(element);\n\n if (is(businessObject, 'bpmn:DataObjectReference')) {\n return this._createEntries(element, replaceOptions.DATA_OBJECT_REFERENCE);\n }\n\n if (is(businessObject, 'bpmn:DataStoreReference')) {\n return this._createEntries(element, replaceOptions.DATA_STORE_REFERENCE);\n }\n\n // start events outside sub processes\n if (is(businessObject, 'bpmn:StartEvent') && !is(businessObject.$parent, 'bpmn:SubProcess')) {\n\n entries = filter(replaceOptions.START_EVENT, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // expanded/collapsed pools\n if (is(businessObject, 'bpmn:Participant')) {\n\n entries = filter(replaceOptions.PARTICIPANT, function(entry) {\n return isExpanded(businessObject) !== entry.target.isExpanded;\n });\n\n return this._createEntries(element, entries);\n }\n\n // start events inside event sub processes\n if (is(businessObject, 'bpmn:StartEvent') && isEventSubProcess(businessObject.$parent)) {\n entries = filter(replaceOptions.EVENT_SUB_PROCESS_START_EVENT, function(entry) {\n\n var target = entry.target;\n\n var isInterrupting = target.isInterrupting !== false;\n\n var isInterruptingEqual = getBusinessObject(element).isInterrupting === isInterrupting;\n\n // filters elements which types and event definition are equal but have have different interrupting types\n return differentType(entry) || !differentType(entry) && !isInterruptingEqual;\n\n });\n\n return this._createEntries(element, entries);\n }\n\n // start events inside sub processes\n if (is(businessObject, 'bpmn:StartEvent') && !isEventSubProcess(businessObject.$parent)\n && is(businessObject.$parent, 'bpmn:SubProcess')) {\n entries = filter(replaceOptions.START_EVENT_SUB_PROCESS, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // end events\n if (is(businessObject, 'bpmn:EndEvent')) {\n\n entries = filter(replaceOptions.END_EVENT, function(entry) {\n var target = entry.target;\n\n // hide cancel end events outside transactions\n if (target.eventDefinitionType == 'bpmn:CancelEventDefinition' && !is(businessObject.$parent, 'bpmn:Transaction')) {\n return false;\n }\n\n return differentType(entry);\n });\n\n return this._createEntries(element, entries);\n }\n\n // boundary events\n if (is(businessObject, 'bpmn:BoundaryEvent')) {\n\n entries = filter(replaceOptions.BOUNDARY_EVENT, function(entry) {\n\n var target = entry.target;\n\n if (target.eventDefinitionType == 'bpmn:CancelEventDefinition' &&\n !is(businessObject.attachedToRef, 'bpmn:Transaction')) {\n return false;\n }\n var cancelActivity = target.cancelActivity !== false;\n\n var isCancelActivityEqual = businessObject.cancelActivity == cancelActivity;\n\n return differentType(entry) || !differentType(entry) && !isCancelActivityEqual;\n });\n\n return this._createEntries(element, entries);\n }\n\n // intermediate events\n if (is(businessObject, 'bpmn:IntermediateCatchEvent') ||\n is(businessObject, 'bpmn:IntermediateThrowEvent')) {\n\n entries = filter(replaceOptions.INTERMEDIATE_EVENT, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // gateways\n if (is(businessObject, 'bpmn:Gateway')) {\n\n entries = filter(replaceOptions.GATEWAY, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // transactions\n if (is(businessObject, 'bpmn:Transaction')) {\n\n entries = filter(replaceOptions.TRANSACTION, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // expanded event sub processes\n if (isEventSubProcess(businessObject) && isExpanded(businessObject)) {\n\n entries = filter(replaceOptions.EVENT_SUB_PROCESS, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // expanded sub processes\n if (is(businessObject, 'bpmn:SubProcess') && isExpanded(businessObject)) {\n\n entries = filter(replaceOptions.SUBPROCESS_EXPANDED, differentType);\n\n return this._createEntries(element, entries);\n }\n\n // collapsed ad hoc sub processes\n if (is(businessObject, 'bpmn:AdHocSubProcess') && !isExpanded(businessObject)) {\n\n entries = filter(replaceOptions.TASK, function(entry) {\n\n var target = entry.target;\n\n var isTargetSubProcess = target.type === 'bpmn:SubProcess';\n\n var isTargetExpanded = target.isExpanded === true;\n\n return isDifferentType(element, target) && (!isTargetSubProcess || isTargetExpanded);\n });\n\n return this._createEntries(element, entries);\n }\n\n // sequence flows\n if (is(businessObject, 'bpmn:SequenceFlow')) {\n return this._createSequenceFlowEntries(element, replaceOptions.SEQUENCE_FLOW);\n }\n\n // flow nodes\n if (is(businessObject, 'bpmn:FlowNode')) {\n entries = filter(replaceOptions.TASK, differentType);\n\n // collapsed SubProcess can not be replaced with itself\n if (is(businessObject, 'bpmn:SubProcess') && !isExpanded(businessObject)) {\n entries = filter(entries, function(entry) {\n return entry.label !== 'Sub Process (collapsed)';\n });\n }\n\n return this._createEntries(element, entries);\n }\n\n return [];\n};\n\n\n/**\n * Get a list of header items for the given element. This includes buttons\n * for multi instance markers and for the ad hoc marker.\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of menu entry items\n */\nReplacePopupMenu.prototype.getHeaderEntries = function(element) {\n\n var headerEntries = [];\n\n if (is(element, 'bpmn:Activity') && !isEventSubProcess(element)) {\n headerEntries = headerEntries.concat(this._getLoopEntries(element));\n }\n\n if (is(element, 'bpmn:DataObjectReference')) {\n headerEntries = headerEntries.concat(this._getDataObjectIsCollection(element));\n }\n\n if (is(element, 'bpmn:Participant')) {\n headerEntries = headerEntries.concat(this._getParticipantMultiplicity(element));\n }\n\n if (is(element, 'bpmn:SubProcess') &&\n !is(element, 'bpmn:Transaction') &&\n !isEventSubProcess(element)) {\n headerEntries.push(this._getAdHocEntry(element));\n }\n\n return headerEntries;\n};\n\n\n/**\n * Creates an array of menu entry objects for a given element and filters the replaceOptions\n * according to a filter function.\n *\n * @param {djs.model.Base} element\n * @param {Object} replaceOptions\n *\n * @return {Array} a list of menu items\n */\nReplacePopupMenu.prototype._createEntries = function(element, replaceOptions) {\n var menuEntries = [];\n\n var self = this;\n\n forEach(replaceOptions, function(definition) {\n var entry = self._createMenuEntry(definition, element);\n\n menuEntries.push(entry);\n });\n\n return menuEntries;\n};\n\n/**\n * Creates an array of menu entry objects for a given sequence flow.\n *\n * @param {djs.model.Base} element\n * @param {Object} replaceOptions\n\n * @return {Array} a list of menu items\n */\nReplacePopupMenu.prototype._createSequenceFlowEntries = function(element, replaceOptions) {\n\n var businessObject = getBusinessObject(element);\n\n var menuEntries = [];\n\n var modeling = this._modeling,\n moddle = this._moddle;\n\n var self = this;\n\n forEach(replaceOptions, function(entry) {\n\n switch (entry.actionName) {\n case 'replace-with-default-flow':\n if (businessObject.sourceRef.default !== businessObject &&\n (is(businessObject.sourceRef, 'bpmn:ExclusiveGateway') ||\n is(businessObject.sourceRef, 'bpmn:InclusiveGateway') ||\n is(businessObject.sourceRef, 'bpmn:ComplexGateway') ||\n is(businessObject.sourceRef, 'bpmn:Activity'))) {\n\n menuEntries.push(self._createMenuEntry(entry, element, function() {\n modeling.updateProperties(element.source, { default: businessObject });\n }));\n }\n break;\n case 'replace-with-conditional-flow':\n if (!businessObject.conditionExpression && is(businessObject.sourceRef, 'bpmn:Activity')) {\n\n menuEntries.push(self._createMenuEntry(entry, element, function() {\n var conditionExpression = moddle.create('bpmn:FormalExpression', { body: '' });\n\n modeling.updateProperties(element, { conditionExpression: conditionExpression });\n }));\n }\n break;\n default:\n\n // default flows\n if (is(businessObject.sourceRef, 'bpmn:Activity') && businessObject.conditionExpression) {\n return menuEntries.push(self._createMenuEntry(entry, element, function() {\n modeling.updateProperties(element, { conditionExpression: undefined });\n }));\n }\n\n // conditional flows\n if ((is(businessObject.sourceRef, 'bpmn:ExclusiveGateway') ||\n is(businessObject.sourceRef, 'bpmn:InclusiveGateway') ||\n is(businessObject.sourceRef, 'bpmn:ComplexGateway') ||\n is(businessObject.sourceRef, 'bpmn:Activity')) &&\n businessObject.sourceRef.default === businessObject) {\n\n return menuEntries.push(self._createMenuEntry(entry, element, function() {\n modeling.updateProperties(element.source, { default: undefined });\n }));\n }\n }\n });\n\n return menuEntries;\n};\n\n\n/**\n * Creates and returns a single menu entry item.\n *\n * @param {Object} definition a single replace options definition object\n * @param {djs.model.Base} element\n * @param {Function} [action] an action callback function which gets called when\n * the menu entry is being triggered.\n *\n * @return {Object} menu entry item\n */\nReplacePopupMenu.prototype._createMenuEntry = function(definition, element, action) {\n var translate = this._translate;\n var replaceElement = this._bpmnReplace.replaceElement;\n\n var replaceAction = function() {\n return replaceElement(element, definition.target);\n };\n\n var label = definition.label;\n if (label && typeof label === 'function') {\n label = label(element);\n }\n\n action = action || replaceAction;\n\n var menuEntry = {\n label: translate(label),\n className: definition.className,\n id: definition.actionName,\n action: action\n };\n\n return menuEntry;\n};\n\n/**\n * Get a list of menu items containing buttons for multi instance markers\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of menu items\n */\nReplacePopupMenu.prototype._getLoopEntries = function(element) {\n\n var self = this;\n var translate = this._translate;\n\n function toggleLoopEntry(event, entry) {\n var loopCharacteristics;\n\n if (entry.active) {\n loopCharacteristics = undefined;\n } else {\n loopCharacteristics = self._moddle.create(entry.options.loopCharacteristics);\n\n if (entry.options.isSequential) {\n loopCharacteristics.isSequential = entry.options.isSequential;\n }\n }\n self._modeling.updateProperties(element, { loopCharacteristics: loopCharacteristics });\n }\n\n var businessObject = getBusinessObject(element),\n loopCharacteristics = businessObject.loopCharacteristics;\n\n var isSequential,\n isLoop,\n isParallel;\n\n if (loopCharacteristics) {\n isSequential = loopCharacteristics.isSequential;\n isLoop = loopCharacteristics.isSequential === undefined;\n isParallel = loopCharacteristics.isSequential !== undefined && !loopCharacteristics.isSequential;\n }\n\n\n var loopEntries = [\n {\n id: 'toggle-parallel-mi',\n className: 'bpmn-icon-parallel-mi-marker',\n title: translate('Parallel Multi Instance'),\n active: isParallel,\n action: toggleLoopEntry,\n options: {\n loopCharacteristics: 'bpmn:MultiInstanceLoopCharacteristics',\n isSequential: false\n }\n },\n {\n id: 'toggle-sequential-mi',\n className: 'bpmn-icon-sequential-mi-marker',\n title: translate('Sequential Multi Instance'),\n active: isSequential,\n action: toggleLoopEntry,\n options: {\n loopCharacteristics: 'bpmn:MultiInstanceLoopCharacteristics',\n isSequential: true\n }\n },\n {\n id: 'toggle-loop',\n className: 'bpmn-icon-loop-marker',\n title: translate('Loop'),\n active: isLoop,\n action: toggleLoopEntry,\n options: {\n loopCharacteristics: 'bpmn:StandardLoopCharacteristics'\n }\n }\n ];\n return loopEntries;\n};\n\n/**\n * Get a list of menu items containing a button for the collection marker\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of menu items\n */\nReplacePopupMenu.prototype._getDataObjectIsCollection = function(element) {\n\n var self = this;\n var translate = this._translate;\n\n function toggleIsCollection(event, entry) {\n self._modeling.updateModdleProperties(\n element,\n dataObject,\n { isCollection: !entry.active });\n }\n\n var dataObject = element.businessObject.dataObjectRef,\n isCollection = dataObject.isCollection;\n\n var dataObjectEntries = [\n {\n id: 'toggle-is-collection',\n className: 'bpmn-icon-parallel-mi-marker',\n title: translate('Collection'),\n active: isCollection,\n action: toggleIsCollection,\n }\n ];\n return dataObjectEntries;\n};\n\n/**\n * Get a list of menu items containing a button for the participant multiplicity marker\n *\n * @param {djs.model.Base} element\n *\n * @return {Array} a list of menu items\n */\nReplacePopupMenu.prototype._getParticipantMultiplicity = function(element) {\n\n var self = this;\n var bpmnFactory = this._bpmnFactory;\n var translate = this._translate;\n\n function toggleParticipantMultiplicity(event, entry) {\n var isActive = entry.active;\n var participantMultiplicity;\n\n if (!isActive) {\n participantMultiplicity = bpmnFactory.create('bpmn:ParticipantMultiplicity');\n }\n\n self._modeling.updateProperties(\n element,\n { participantMultiplicity: participantMultiplicity });\n }\n\n var participantMultiplicity = element.businessObject.participantMultiplicity;\n\n var participantEntries = [\n {\n id: 'toggle-participant-multiplicity',\n className: 'bpmn-icon-parallel-mi-marker',\n title: translate('Participant Multiplicity'),\n active: !!participantMultiplicity,\n action: toggleParticipantMultiplicity,\n }\n ];\n return participantEntries;\n};\n\n\n/**\n * Get the menu items containing a button for the ad hoc marker\n *\n * @param {djs.model.Base} element\n *\n * @return {Object} a menu item\n */\nReplacePopupMenu.prototype._getAdHocEntry = function(element) {\n var translate = this._translate;\n var businessObject = getBusinessObject(element);\n\n var isAdHoc = is(businessObject, 'bpmn:AdHocSubProcess');\n\n var replaceElement = this._bpmnReplace.replaceElement;\n\n var adHocEntry = {\n id: 'toggle-adhoc',\n className: 'bpmn-icon-ad-hoc-marker',\n title: translate('Ad-hoc'),\n active: isAdHoc,\n action: function(event, entry) {\n if (isAdHoc) {\n return replaceElement(element, { type: 'bpmn:SubProcess' }, {\n autoResize: false,\n layoutConnection: false\n });\n } else {\n return replaceElement(element, { type: 'bpmn:AdHocSubProcess' }, {\n autoResize: false,\n layoutConnection: false\n });\n }\n }\n };\n\n return adHocEntry;\n};\n","import PopupMenuModule from 'diagram-js/lib/features/popup-menu';\nimport ReplaceModule from '../replaceElements';\n\nimport ReplacePopupMenu from './PopupMenu';\n\n\nexport default {\n __depends__: [\n PopupMenuModule,\n ReplaceModule\n ],\n __init__: [ 'replacePopupMenu' ],\n replacePopupMenu: [ 'type', ReplacePopupMenu ]\n};","import { is } from '../../../base/BaseServices';\n\nimport {\n getParent\n} from './ModelingService';\n\nimport {\n asTRBL\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n substractTRBL,\n resizeTRBL\n} from 'diagram-js/lib/features/resize/ResizeUtil';\n\nvar abs = Math.abs;\n\n\nfunction getTRBLResize(oldBounds, newBounds) {\n return substractTRBL(asTRBL(newBounds), asTRBL(oldBounds));\n}\n\n\nvar LANE_PARENTS = [\n 'bpmn:Participant',\n 'bpmn:Process',\n 'bpmn:SubProcess'\n];\n\nexport var LANE_INDENTATION = 30;\n\n\n/**\n * Collect all lane shapes in the given paren\n *\n * @param {djs.model.Shape} shape\n * @param {Array} [collectedShapes]\n *\n * @return {Array}\n */\nexport function collectLanes(shape, collectedShapes = []) {\n shape.children.forEach(s => {\n if (is(s, 'bpmn:Lane')) {\n collectLanes(s, collectedShapes);\n collectedShapes.push(s);\n }\n });\n\n return collectedShapes;\n}\n\n\n/**\n * Return the lane children of the given element.\n *\n * @param {djs.model.Shape} shape\n *\n * @return {Array}\n */\nexport function getChildLanes(shape) {\n return shape.children.filter(c => is(c, 'bpmn:Lane'));\n}\n\n\n/**\n * Return the root element containing the given lane shape\n *\n * @param {djs.model.Shape} shape\n *\n * @return {djs.model.Shape}\n */\nexport function getLanesRoot(shape) {\n return getParent(shape, LANE_PARENTS) || shape;\n}\n\n\n/**\n * Compute the required resize operations for lanes\n * adjacent to the given shape, assuming it will be\n * resized to the given new bounds.\n *\n * @param {djs.model.Shape} shape\n * @param {Bounds} newBounds\n *\n * @return {Array}\n */\nexport function computeLanesResize(shape, newBounds) {\n const rootElement = getLanesRoot(shape);\n\n const initialShapes = is(rootElement, 'bpmn:Process') ? [] : [rootElement];\n\n const allLanes = collectLanes(rootElement, initialShapes);\n const { top, right, bottom, left } = getTRBLResize(shape, newBounds);\n \n const shapeTrbl = asTRBL(shape);\n const shapeNewTrbl = asTRBL(newBounds);\n\n const resizeNeeded = allLanes.map(other => {\n if (other === shape) {\n return null;\n }\n\n const otherTrbl = asTRBL(other);\n\n let topResize = 0;\n let rightResize = right;\n let bottomResize = 0;\n let leftResize = left;\n\n if (top) {\n if (abs(otherTrbl.bottom - shapeTrbl.top) < 10) {\n bottomResize = shapeNewTrbl.top - otherTrbl.bottom;\n }\n\n if (abs(otherTrbl.top - shapeTrbl.top) < 5) {\n topResize = shapeNewTrbl.top - otherTrbl.top;\n }\n }\n\n if (bottom) {\n if (abs(otherTrbl.top - shapeTrbl.bottom) < 10) {\n topResize = shapeNewTrbl.bottom - otherTrbl.top;\n }\n\n if (abs(otherTrbl.bottom - shapeTrbl.bottom) < 5) {\n bottomResize = shapeNewTrbl.bottom - otherTrbl.bottom;\n }\n }\n\n if (topResize || rightResize || bottomResize || leftResize) {\n return {\n shape: other,\n newBounds: resizeTRBL(other, {\n top: topResize,\n right: rightResize,\n bottom: bottomResize,\n left: leftResize,\n }),\n };\n }\n\n return null;\n }).filter(Boolean);\n\n return resizeNeeded;\n}\n","import {\n assign,\n forEach,\n isArray\n} from 'min-dash';\n\nimport {\n is,\n isExpanded,\n isEventSubProcess\n} from '../../base/BaseServices';\n\nimport {\n isAny\n} from '../modelElements/services/ModelingService';\n\nimport {\n getChildLanes\n} from '../modelElements/services/LaneService';\n\nimport {\n hasPrimaryModifier\n} from 'diagram-js/lib/util/Mouse';\n\n\nexport default function ContextMenu(\n config,\n injector,\n eventBus,\n contextPad,\n modeling,\n elementFactory,\n connect,\n create,\n popupMenu,\n canvas,\n rules,\n translate\n) {\nconfig = config || {};\ncontextPad.registerProvider(this);\n\nthis._contextPad = contextPad;\nthis._modeling = modeling;\nthis._elementFactory = elementFactory;\nthis._connect = connect;\nthis._create = create;\nthis._popupMenu = popupMenu;\nthis._canvas = canvas;\nthis._rules = rules;\nthis._translate = translate;\n\nthis._locateElements = config.autoPlace !== false ? injector.get('autoPlace', false) : undefined;\n\neventBus.on('create.end', 250, function (event) {\n const { context } = event;\n const { shape } = context;\n\n if (hasPrimaryModifier(event) && contextPad.isOpen(shape)) {\n const entries = contextPad.getEntries(shape);\n\n if (entries.replace && entries.replace.action) {\n entries.replace.action.click(event, shape);\n }\n }\n});\n}\n\n\nContextMenu.$inject = [\n 'config.contextPad',\n 'injector',\n 'eventBus',\n 'contextPad',\n 'modeling',\n 'elementFactory',\n 'connect',\n 'create',\n 'popupMenu',\n 'canvas',\n 'rules',\n 'translate'\n];\n\n\nContextMenu.prototype.getContextPadEntries = function (element) {\n const {\n _contextPad: contextPad,\n _modeling: modeling,\n _elementFactory: elementFactory,\n _connect: connect,\n _create: create,\n _popupMenu: popupMenu,\n _canvas: canvas,\n _rules: rules,\n _locateElements: locateElements,\n _translate: translate,\n } = this;\n\n const actions = {};\n\n if (element.type === 'label') {\n return actions;\n }\n\n const businessObject = element.businessObject;\n\n function startConnect(event, element) {\n connect.start(event, element);\n }\n\n function removeElement(e) {\n modeling.removeElements([element]);\n }\n\n function getReplaceMenuPosition(element) {\n const Y_OFFSET = 5;\n\n const diagramContainer = canvas.getContainer(),\n pad = contextPad.getPad(element).html;\n\n const diagramRect = diagramContainer.getBoundingClientRect(),\n padRect = pad.getBoundingClientRect();\n\n const top = padRect.top - diagramRect.top;\n const left = padRect.left - diagramRect.left;\n\n const pos = {\n x: left,\n y: top + padRect.height + Y_OFFSET,\n };\n\n return pos;\n }\n\n function appendAction(type, className, title, options) {\n if (typeof title !== 'string') {\n options = title;\n title = translate(`Append ${type.replace(/^bpmn:/, '')}`);\n }\n\n function appendStart(event, element) {\n const shape = elementFactory.createShape(assign({ type: type }, options));\n create.start(event, shape, {\n source: element,\n });\n }\n\n const append = locateElements\n ? function (event, element) {\n const shape = elementFactory.createShape(assign({ type: type }, options));\n locateElements.append(element, shape);\n }\n : appendStart;\n\n return {\n group: 'model',\n className: className,\n title: title,\n action: {\n dragstart: appendStart,\n click: append,\n },\n };\n }\n\n function splitLaneHandler(count) {\n return function (event, element) {\n modeling.splitLane(element, count);\n contextPad.open(element, true);\n };\n }\n\n if (isAny(businessObject, ['bpmn:Lane', 'bpmn:Participant']) && isExpanded(businessObject)) {\n const childLanes = getChildLanes(element);\n\n assign(actions, {\n 'lane-insert-above': {\n group: 'lane-insert-above',\n className: 'bpmn-icon-lane-insert-above',\n title: translate('Add Lane above'),\n action: {\n click: function (event, element) {\n modeling.addLane(element, 'top');\n },\n },\n },\n });\n\n if (childLanes.length < 2) {\n if (element.height >= 120) {\n assign(actions, {\n 'lane-divide-two': {\n group: 'lane-divide',\n className: 'bpmn-icon-lane-divide-two',\n title: translate('Divide into two Lanes'),\n action: {\n click: splitLaneHandler(2),\n },\n },\n });\n }\n\n if (element.height >= 180) {\n assign(actions, {\n 'lane-divide-three': {\n group: 'lane-divide',\n className: 'bpmn-icon-lane-divide-three',\n title: translate('Divide into three Lanes'),\n action: {\n click: splitLaneHandler(3),\n },\n },\n });\n }\n }\n\n assign(actions, {\n 'lane-insert-below': {\n group: 'lane-insert-below',\n className: 'bpmn-icon-lane-insert-below',\n title: translate('Add Lane below'),\n action: {\n click: function (event, element) {\n modeling.addLane(element, 'bottom');\n },\n },\n },\n });\n }\n\n if (is(businessObject, 'bpmn:FlowNode')) {\n if (is(businessObject, 'bpmn:EventBasedGateway')) {\n assign(actions, {\n 'append.receive-task': appendAction('bpmn:ReceiveTask', 'bpmn-icon-receive-task', translate('Append ReceiveTask')),\n 'append.message-intermediate-event': appendAction(\n 'bpmn:IntermediateCatchEvent',\n 'bpmn-icon-intermediate-event-catch-message',\n translate('Append MessageIntermediateCatchEvent'),\n { eventDefinitionType: 'bpmn:MessageEventDefinition' }\n ),\n 'append.timer-intermediate-event': appendAction(\n 'bpmn:IntermediateCatchEvent',\n 'bpmn-icon-intermediate-event-catch-timer',\n translate('Append TimerIntermediateCatchEvent'),\n { eventDefinitionType: 'bpmn:TimerEventDefinition' }\n ),\n 'append.condition-intermediate-event': appendAction(\n 'bpmn:IntermediateCatchEvent',\n 'bpmn-icon-intermediate-event-catch-condition',\n translate('Append ConditionIntermediateCatchEvent'),\n { eventDefinitionType: 'bpmn:ConditionalEventDefinition' }\n ),\n 'append.signal-intermediate-event': appendAction(\n 'bpmn:IntermediateCatchEvent',\n 'bpmn-icon-intermediate-event-catch-signal',\n translate('Append SignalIntermediateCatchEvent'),\n { eventDefinitionType: 'bpmn:SignalEventDefinition' }\n ),\n });\n } else if (isEventType(businessObject, 'bpmn:BoundaryEvent', 'bpmn:CompensateEventDefinition')) {\n assign(actions, {\n 'append.compensation-activity': appendAction(\n 'bpmn:Task',\n 'bpmn-icon-task',\n translate('Append compensation activity'),\n {\n isForCompensation: true,\n }\n ),\n });\n } else if (\n !is(businessObject, 'bpmn:EndEvent') &&\n !businessObject.isForCompensation &&\n !isEventType(businessObject, 'bpmn:IntermediateThrowEvent', 'bpmn:LinkEventDefinition') &&\n !isEventSubProcess(businessObject)\n ) {\n assign(actions, {\n 'append.end-event': appendAction('bpmn:EndEvent', 'bpmn-icon-end-event-none', translate('Append EndEvent')),\n 'append.gateway': appendAction('bpmn:ExclusiveGateway', 'bpmn-icon-gateway-none', translate('Append Gateway')),\n 'append.append-task': appendAction('bpmn:Task', 'bpmn-icon-task', translate('Append Task')),\n 'append.intermediate-event': appendAction(\n 'bpmn:IntermediateThrowEvent',\n 'bpmn-icon-intermediate-event-none',\n translate('Append Intermediate/Boundary Event')\n ),\n });\n }\n }\n\n if (!popupMenu.isEmpty(element, 'bpmn-replace')) {\n assign(actions, {\n replace: {\n group: 'edit',\n className: 'bpmn-icon-screw-wrench',\n title: translate('Change type'),\n action: {\n click: function (event, element) {\n const position = assign(getReplaceMenuPosition(element), {\n cursor: { x: event.x, y: event.y },\n });\n popupMenu.open(element, 'bpmn-replace', position);\n },\n },\n },\n });\n }\n\n if (isAny(businessObject, ['bpmn:FlowNode', 'bpmn:InteractionNode', 'bpmn:DataObjectReference', 'bpmn:DataStoreReference'])) {\n assign(actions, {\n 'append.text-annotation': appendAction('bpmn:TextAnnotation', 'bpmn-icon-text-annotation'),\n connect: {\n group: 'connect',\n className: 'bpmn-icon-connection-multi',\n title: translate(\n 'Connect using ' +\n (businessObject.isForCompensation ? '' : 'Sequence/MessageFlow or ') +\n 'Association'\n ),\n action: {\n click: startConnect,\n dragstart: startConnect,\n },\n },\n });\n }\n\n if (is(businessObject, 'bpmn:TextAnnotation')) {\n assign(actions, {\n connect: {\n group: 'connect',\n className: 'bpmn-icon-connection-multi',\n title: translate('Connect using Association'),\n action: {\n click: startConnect,\n dragstart: startConnect,\n },\n },\n });\n }\n\n if (isAny(businessObject, ['bpmn:DataObjectReference', 'bpmn:DataStoreReference'])) {\n assign(actions, {\n connect: {\n group: 'connect',\n className: 'bpmn-icon-connection-multi',\n title: translate('Connect using DataInputAssociation'),\n action: {\n click: startConnect,\n dragstart: startConnect,\n },\n },\n });\n }\n\n if (is(businessObject, 'bpmn:Group')) {\n assign(actions, {\n 'append.text-annotation': appendAction('bpmn:TextAnnotation', 'bpmn-icon-text-annotation'),\n });\n }\n\n // delete element entry, only show if allowed by rules\n let deleteAllowed = rules.allowed('elements.delete', { elements: [element] });\n\n if (isArray(deleteAllowed)) {\n // was the element returned as a deletion candidate?\n deleteAllowed = deleteAllowed[0] === element;\n }\n\n if (deleteAllowed) {\n assign(actions, {\n delete: {\n group: 'edit',\n className: 'bpmn-icon-trash',\n title: translate('Remove'),\n action: {\n click: removeElement,\n },\n },\n });\n }\n\n return actions;\n};\n\n\n// helpers /////////\n\nfunction isEventType(eventBo, type, definition) {\n const isType = eventBo.$instanceOf(type);\n \n var isDefinition = false;\n\n var definitions = eventBo.eventDefinitions || [];\n forEach(definitions, function(def) {\n if (def.$type === definition) {\n isDefinition = true;\n }\n });\n\n return isType && isDefinition;\n}","import DirectEditingModule from 'diagram-js-direct-editing';\nimport ContextPadModule from 'diagram-js/lib/features/context-pad';\nimport SelectionModule from 'diagram-js/lib/features/selection';\nimport ConnectModule from 'diagram-js/lib/features/connect';\nimport CreateModule from 'diagram-js/lib/features/create';\nimport PopupMenuModule from '../popupMenu';\n\nimport ContextMenu from './ContextMenu';\n\nexport default {\n __depends__: [\n DirectEditingModule,\n ContextPadModule,\n SelectionModule,\n ConnectModule,\n CreateModule,\n PopupMenuModule\n ],\n __init__: [ 'contextMenu' ],\n contextMenu: [ 'type', ContextMenu ]\n};","import {\n filter\n} from 'min-dash';\n\nimport {\n isAny\n} from '../modelElements/services/ModelingService';\n\n\nexport default function DistributionCheck(distributeElements) {\n\n distributeElements.registerFilter(function(elements) {\n return filter(elements, function(element) {\n const cannotDistribute = isAny(element, [\n 'bpmn:Association',\n 'bpmn:BoundaryEvent',\n 'bpmn:DataInputAssociation',\n 'bpmn:DataOutputAssociation',\n 'bpmn:Lane',\n 'bpmn:MessageFlow',\n 'bpmn:Participant',\n 'bpmn:SequenceFlow',\n 'bpmn:TextAnnotation'\n ]);\n\n return !(element.labelTarget || cannotDistribute);\n });\n });\n}\n\nDistributionCheck.$inject = [ 'distributeElements' ];","import DistributeElementsModule from 'diagram-js/lib/features/distribute-elements';\n\nimport DistributionCheck from './DistributionCheck';\n\n\nexport default {\n __depends__: [\n DistributeElementsModule\n ],\n __init__: [ 'distributionCheck' ],\n distributionCheck: [ 'type', DistributionCheck ]\n};\n","import inherits from 'inherits';\n\nimport EditorActions from 'diagram-js/lib/features/editor-actions/EditorActions';\n\nimport { filter } from 'min-dash';\n\nimport { is } from '../../base/BaseServices';\n\nimport {\n getBBox\n} from 'diagram-js/lib/util/Elements';\n\n\n/**\n * Registers and executes BPMN specific editor actions.\n *\n * @param {Injector} injector\n */\nexport default function RegisterActions(injector) {\n injector.invoke(EditorActions, this);\n}\n\ninherits(RegisterActions, EditorActions);\n\nRegisterActions.$inject = [\n 'injector'\n];\n\n/**\n * Register default actions.\n *\n * @param {Injector} injector\n */\nRegisterActions.prototype._registerDefaultActions = function(injector) {\n\n // (0) invoke super method\n EditorActions.prototype._registerDefaultActions.call(this, injector);\n\n // (1) retrieve optional components to integrate with\n const components = {\n canvas: 'canvas',\n elementRegistry: 'elementRegistry',\n selection: 'selection',\n spaceTool: 'spaceTool',\n lassoTool: 'lassoTool',\n handTool: 'handTool',\n globalConnect: 'globalConnect',\n distributeElements: 'distributeElements',\n alignElements: 'alignElements',\n directEditing: 'directEditing',\n searchPad: 'searchPad',\n modeling: 'modeling'\n };\n\n const componentInstances = Object.fromEntries(\n Object.entries(components).map(([key, value]) => [key, injector.get(value, false)])\n );\n\n // (2) check components and register actions\n this._registerAction('selectElements', function() {\n const { canvas, elementRegistry, selection } = componentInstances;\n\n if (canvas && elementRegistry && selection) {\n // select all elements except for the invisible\n // root element\n const rootElement = canvas.getRootElement();\n const elements = elementRegistry.filter(element => element !== rootElement);\n selection.select(elements);\n return elements;\n }\n });\n\n this._registerToggleAction('spaceTool', componentInstances.spaceTool);\n this._registerToggleAction('lassoTool', componentInstances.lassoTool);\n this._registerToggleAction('handTool', componentInstances.handTool);\n this._registerToggleAction('globalConnectTool', componentInstances.globalConnect);\n\n this._registerAction('distributeElements', function(opts) {\n const { selection, distributeElements } = componentInstances;\n const currentSelection = selection.get();\n if (currentSelection.length && distributeElements) {\n distributeElements.trigger(currentSelection, opts.type);\n }\n });\n\n this._registerAction('alignElements', function(opts) {\n const { selection, alignElements } = componentInstances;\n const currentSelection = selection.get();\n if (currentSelection.length && alignElements) {\n const aligneableElements = filter(currentSelection, function(element) {\n return !is(element, 'bpmn:Lane');\n });\n alignElements.trigger(aligneableElements, opts.type);\n }\n });\n\n this._registerAction('setColor', function(opts) {\n const { selection, modeling } = componentInstances;\n const currentSelection = selection.get();\n if (currentSelection.length && modeling) {\n modeling.setColor(currentSelection, opts);\n }\n });\n\n this._registerAction('directEditing', function() {\n const { selection, directEditing } = componentInstances;\n const currentSelection = selection.get();\n if (currentSelection.length && directEditing) {\n directEditing.activate(currentSelection[0]);\n }\n });\n\n this._registerToggleAction('find', componentInstances.searchPad);\n\n this._registerAction('moveToOrigin', function() {\n const { canvas, modeling, elementRegistry } = componentInstances;\n const rootElement = canvas.getRootElement();\n let elements;\n\n if (is(rootElement, 'bpmn:Collaboration')) {\n elements = elementRegistry.filter(element => is(element.parent, 'bpmn:Collaboration'));\n } else {\n elements = elementRegistry.filter(element => element !== rootElement && !is(element.parent, 'bpmn:SubProcess'));\n }\n\n const boundingBox = getBBox(elements);\n\n if (modeling) {\n modeling.moveElements(elements, { x: -boundingBox.x, y: -boundingBox.y }, rootElement);\n }\n });\n};\n\nRegisterActions.prototype._registerToggleAction = function(actionName, tool) {\n if (tool) {\n this._registerAction(actionName, function() {\n tool.toggle();\n });\n }\n};","import EditorActionsModule from 'diagram-js/lib/features/editor-actions';\n\nimport RegisterActions from './RegisterActions';\n\nexport default {\n __depends__: [\n EditorActionsModule\n ],\n registerActions: [ 'type', RegisterActions ]\n};\n","import { isAny } from '../modelElements/services/ModelingService';\r\n\r\nexport default function SnapToGrid(eventBus) {\r\n eventBus.on([\r\n 'create.init',\r\n 'shape.move.init'\r\n ], function(event) {\r\n var context = event.context,\r\n shape = event.shape;\r\n\r\n if (isAny(shape, [\r\n 'bpmn:Participant',\r\n 'bpmn:SubProcess',\r\n 'bpmn:TextAnnotation'\r\n ])) {\r\n if (!context.gridSnappingContext) {\r\n context.gridSnappingContext = {};\r\n }\r\n\r\n context.gridSnappingContext.snapLocation = 'top-left';\r\n }\r\n });\r\n}\r\n\r\nSnapToGrid.$inject = [ 'eventBus' ];","import { getNewShapePosition } from '../../locateElements/LocateElementsService';\r\n\r\nimport { getMid } from 'diagram-js/lib/layout/LayoutUtil';\r\nimport { is } from '../../../base/BaseServices';\r\n\r\nvar HIGH_PRIORITY = 2000;\r\n\r\n\r\nexport default function LocateElementsAction(eventBus, gridSnapping) {\r\n eventBus.on('autoPlace', HIGH_PRIORITY, function(context) {\r\n const { source, shape } = context;\r\n const sourceMid = getMid(source);\r\n\r\n const position = getNewShapePosition(source, shape);\r\n\r\n ['x', 'y'].forEach(axis => {\r\n // do not snap if x/y equal\r\n if (position[axis] === sourceMid[axis]) {\r\n return;\r\n }\r\n\r\n const options = getSnapOptions(position, sourceMid, axis, shape);\r\n\r\n position[axis] = gridSnapping.snapValue(position[axis], options);\r\n });\r\n\r\n // must be returned to be considered by auto place\r\n return position;\r\n });\r\n\r\n function getSnapOptions(position, sourceMid, axis, shape) {\r\n const options = {};\r\n\r\n if (position[axis] > sourceMid[axis]) {\r\n options.min = position[axis];\r\n } else {\r\n options.max = position[axis];\r\n }\r\n\r\n if (is(shape, 'bpmn:TextAnnotation')) {\r\n const offset = isHorizontal(axis) ? -shape.width / 2 : -shape.height / 2;\r\n options.offset = offset;\r\n }\r\n\r\n return options;\r\n }\r\n}\r\n\r\nLocateElementsAction.$inject = [\r\n 'eventBus',\r\n 'gridSnapping'\r\n];\r\n\r\n// helpers //////////\r\n\r\nfunction isHorizontal(axis) {\r\n return axis === 'x';\r\n}","import { is } from '../../../base/BaseServices';\r\n\r\nvar HIGHER_PRIORITY = 1750;\r\n\r\n\r\nexport default function CreateParticipantAction(canvas, eventBus, gridSnapping) {\r\n eventBus.on(['create.start', 'shape.move.start'], HIGHER_PRIORITY, handleCreateStart);\r\n\r\n function handleCreateStart(event) {\r\n const context = event.context;\r\n const shape = context.shape;\r\n const rootElement = canvas.getRootElement();\r\n\r\n if (!isParticipant(shape, rootElement)) {\r\n return;\r\n }\r\n\r\n const createConstraints = context.createConstraints;\r\n\r\n if (!createConstraints) {\r\n return;\r\n }\r\n\r\n snapParticipantDimensions(shape, gridSnapping);\r\n }\r\n\r\n function isParticipant(shape, rootElement) {\r\n return is(shape, 'bpmn:Participant') &&\r\n is(rootElement, 'bpmn:Process') &&\r\n rootElement.children.length > 0;\r\n }\r\n\r\n function snapParticipantDimensions(shape, gridSnapping) {\r\n shape.width = gridSnapping.snapValue(shape.width, { min: shape.width });\r\n shape.height = gridSnapping.snapValue(shape.height, { min: shape.height });\r\n }\r\n}\r\n\r\nCreateParticipantAction.$inject = [\r\n 'canvas',\r\n 'eventBus',\r\n 'gridSnapping'\r\n];","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { pointsAligned } from 'diagram-js/lib/util/Geometry';\n\nimport {\n assign\n} from 'min-dash';\n\nvar HIGH_PRIORITY = 3000;\n\n\n/**\n * Snaps connections with Manhattan layout.\n */\nexport default function LayoutConnectionAction(eventBus, gridSnapping, modeling) {\n CommandInterceptor.call(this, eventBus);\n\n this._gridSnapping = gridSnapping;\n\n var self = this;\n\n this.postExecuted([\n 'connection.create',\n 'connection.layout'\n ], HIGH_PRIORITY, function(event) {\n var context = event.context,\n connection = context.connection,\n hints = context.hints || {},\n waypoints = connection.waypoints;\n\n if (hints.connectionStart || hints.connectionEnd || hints.createElementsBehavior === false) {\n return;\n }\n\n if (!hasMiddleSegments(waypoints)) {\n return;\n }\n\n modeling.updateWaypoints(connection, self.snapMiddleSegments(waypoints));\n });\n}\n\nLayoutConnectionAction.$inject = [\n 'eventBus',\n 'gridSnapping',\n 'modeling'\n];\n\ninherits(LayoutConnectionAction, CommandInterceptor);\n\n/**\n * Snap middle segments of a given connection.\n *\n * @param {Array} waypoints\n *\n * @returns {Array}\n */\nLayoutConnectionAction.prototype.snapMiddleSegments = function(waypoints) {\n var gridSnapping = this._gridSnapping,\n snapped;\n\n waypoints = waypoints.slice();\n\n for (var i = 1; i < waypoints.length - 2; i++) {\n\n snapped = snapSegment(gridSnapping, waypoints[i], waypoints[i + 1]);\n\n waypoints[i] = snapped[0];\n waypoints[i + 1] = snapped[1];\n }\n\n return waypoints;\n};\n\n\n// helpers //////////\n\n/**\n * Check whether a connection has a middle segments.\n *\n * @param {Array} waypoints\n *\n * @returns {boolean}\n */\nfunction hasMiddleSegments(waypoints) {\n return waypoints.length > 3;\n}\n\n/**\n * Check whether an alignment is horizontal.\n *\n * @param {string} aligned\n *\n * @returns {boolean}\n */\nfunction horizontallyAligned(aligned) {\n return aligned === 'h';\n}\n\n/**\n * Check whether an alignment is vertical.\n *\n * @param {string} aligned\n *\n * @returns {boolean}\n */\nfunction verticallyAligned(aligned) {\n return aligned === 'v';\n}\n\n/**\n * Get middle segments from a given connection.\n *\n * @param {Array} waypoints\n *\n * @returns {Array}\n */\nfunction snapSegment(gridSnapping, segmentStart, segmentEnd) {\n\n var aligned = pointsAligned(segmentStart, segmentEnd);\n\n var snapped = {};\n\n if (horizontallyAligned(aligned)) {\n\n // snap horizontally\n snapped.y = gridSnapping.snapValue(segmentStart.y);\n }\n\n if (verticallyAligned(aligned)) {\n\n // snap vertically\n snapped.x = gridSnapping.snapValue(segmentStart.x);\n }\n\n if ('x' in snapped || 'y' in snapped) {\n segmentStart = assign({}, segmentStart, snapped);\n segmentEnd = assign({}, segmentEnd, snapped);\n }\n\n return [ segmentStart, segmentEnd ];\n}","import LocateElementsAction from './LocateElementsAction';\r\nimport CreateParticipantAction from './CreateParticipantAction';\r\nimport LayoutConnectionAction from './LayoutConnectionAction';\r\n\r\nexport default {\r\n __init__: [\r\n 'gridSnappingLocateElementsAction',\r\n 'gridSnappingCreateParticipantAction',\r\n 'gridSnappingLayoutConnectionAction',\r\n ],\r\n gridSnappingLocateElementsAction: [ 'type', LocateElementsAction ],\r\n gridSnappingCreateParticipantAction: [ 'type', CreateParticipantAction ],\r\n gridSnappingLayoutConnectionAction: [ 'type', LayoutConnectionAction ]\r\n};","import SnapToGrid from './SnapToGrid';\r\nimport GridSnappingModule from 'diagram-js/lib/features/grid-snapping';\r\n\r\nimport GridSnappingActionsModule from './actions';\r\n\r\nexport default {\r\n __depends__: [\r\n GridSnappingModule,\r\n GridSnappingActionsModule\r\n ],\r\n __init__: [ 'snapToGrid' ],\r\n snapToGrid: [ 'type', SnapToGrid ]\r\n};","import { is, isExpanded } from '../../base/BaseServices';\n\nvar LABEL_WIDTH = 30,\n LABEL_HEIGHT = 30;\n\n\n/**\n * @param {EventBus} eventBus\n * @param {InteractionEvents} interactionEvents\n */\nexport default function HitZones(eventBus, interactionEvents) {\n\n this._interactionEvents = interactionEvents;\n\n var self = this;\n\n eventBus.on([\n 'interactionEvents.createHit',\n 'interactionEvents.updateHit'\n ], function(context) {\n var element = context.element,\n gfx = context.gfx;\n\n if (is(element, 'bpmn:Lane')) {\n return self.createParticipantHit(element, gfx);\n } else\n\n if (is(element, 'bpmn:Participant')) {\n if (isExpanded(element)) {\n return self.createParticipantHit(element, gfx);\n } else {\n return self.createDefaultHit(element, gfx);\n }\n } else\n\n if (is(element, 'bpmn:SubProcess')) {\n if (isExpanded(element)) {\n return self.createSubProcessHit(element, gfx);\n } else {\n return self.createDefaultHit(element, gfx);\n }\n }\n });\n\n}\n\nHitZones.$inject = [\n 'eventBus',\n 'interactionEvents'\n];\n\n\nHitZones.prototype.createDefaultHit = function(element, gfx) {\n this._interactionEvents.removeHits(gfx);\n\n this._interactionEvents.createDefaultHit(element, gfx);\n\n // indicate that we created a hit\n return true;\n};\n\nHitZones.prototype.createParticipantHit = function(element, gfx) {\n\n // remove existing hits\n this._interactionEvents.removeHits(gfx);\n\n // add outline hit\n this._interactionEvents.createBoxHit(gfx, 'click-stroke', {\n width: element.width,\n height: element.height\n });\n\n // add label hit\n this._interactionEvents.createBoxHit(gfx, 'all', {\n width: LABEL_WIDTH,\n height: element.height\n });\n\n // indicate that we created a hit\n return true;\n};\n\nHitZones.prototype.createSubProcessHit = function(element, gfx) {\n\n // remove existing hits\n this._interactionEvents.removeHits(gfx);\n\n // add outline hit\n this._interactionEvents.createBoxHit(gfx, 'click-stroke', {\n width: element.width,\n height: element.height\n });\n\n // add label hit\n this._interactionEvents.createBoxHit(gfx, 'all', {\n width: element.width,\n height: LABEL_HEIGHT\n });\n\n // indicate that we created a hit\n return true;\n};","import HitZones from './HitZones';\n\nexport default {\n __init__: [ 'hitZones' ],\n hitZones: [ 'type', HitZones ]\n};","import {\n add as collectionAdd\n} from 'diagram-js/lib/util/Collections';\n\nimport {\n getBusinessObject\n} from '../../../../base/BaseServices';\n\n/**\n * Creates a new bpmn:CategoryValue inside a new bpmn:Category\n *\n * @param {ModdleElement} definitions\n * @param {BpmnFactory} bpmnFactory\n *\n * @return {ModdleElement} categoryValue.\n */\nexport function createCategoryValue(definitions, bpmnFactory) {\n // Create CategoryValue and Category using bpmnFactory\n const categoryValue = bpmnFactory.create('bpmn:CategoryValue');\n const category = bpmnFactory.create('bpmn:Category', {\n categoryValue: [categoryValue],\n });\n\n // Add Category to the rootElements collection\n collectionAdd(definitions.get('rootElements'), category);\n\n // Set $parent for Category and CategoryValue\n const categoryBusinessObject = getBusinessObject(category);\n const categoryValueBusinessObject = getBusinessObject(categoryValue);\n\n categoryBusinessObject.$parent = definitions;\n categoryValueBusinessObject.$parent = category;\n\n return categoryValue;\n}","import {\n assign\n} from 'min-dash';\n\nimport {\n getLabel\n} from './LabelService';\n\nimport {\n createCategoryValue\n} from '../modelElements/actions/services/CategoryService';\n\nimport { isAny } from '../modelElements/services/ModelingService';\n\nimport {\n getBusinessObject,\n is,\n isExpanded,\n getExternalLabelMid,\n isLabelExternal,\n hasExternalLabel,\n isLabel\n} from '../../base/BaseServices';\n\n\nexport default function LabelElements(\n eventBus, bpmnFactory, canvas, directEditing,\n modeling, resizeHandles, textRenderer) {\n\n this._bpmnFactory = bpmnFactory;\n this._canvas = canvas;\n this._modeling = modeling;\n this._textRenderer = textRenderer;\n\n directEditing.registerProvider(this);\n\n // listen to dblclick on non-root elements\n eventBus.on('element.dblclick', function(event) {\n activateDirectEdit(event.element, true);\n });\n\n // complete on followup canvas operation\n eventBus.on([\n 'locateElements.start',\n 'canvas.viewbox.changing',\n 'drag.init',\n 'element.mousedown',\n 'popupMenu.open'\n ], function(event) {\n\n if (directEditing.isActive()) {\n directEditing.complete();\n }\n });\n\n // cancel on command stack changes\n eventBus.on([ 'commandStack.changed' ], function(e) {\n if (directEditing.isActive()) {\n directEditing.cancel();\n }\n });\n\n\n eventBus.on('directEditing.activate', function(event) {\n resizeHandles.removeResizers();\n });\n\n eventBus.on('create.end', 500, function(event) {\n\n var context = event.context,\n element = context.shape,\n canExecute = event.context.canExecute,\n isTouch = event.isTouch;\n\n if (isTouch) {\n return;\n }\n\n if (!canExecute) {\n return;\n }\n\n if (context.hints && context.hints.createElementsBehavior === false) {\n return;\n }\n\n activateDirectEdit(element);\n });\n\n eventBus.on('locateElements.end', 500, function(event) {\n activateDirectEdit(event.shape);\n });\n\n\n function activateDirectEdit(element, force) {\n if (force ||\n isAny(element, [ 'bpmn:Task', 'bpmn:TextAnnotation', 'bpmn:Group' ]) ||\n isCollapsedSubProcess(element)) {\n\n directEditing.activate(element);\n }\n }\n\n}\n\nLabelElements.$inject = [\n 'eventBus',\n 'bpmnFactory',\n 'canvas',\n 'directEditing',\n 'modeling',\n 'resizeHandles',\n 'textRenderer'\n];\n\n\n/**\n * Activate direct editing for activities and text annotations.\n *\n * @param {djs.model.Base} element\n *\n * @return {Object} an object with properties bounds (position and size), text and options\n */\nLabelElements.prototype.activate = function(element) {\n\n // text\n var text = getLabel(element);\n\n if (text === undefined) {\n return;\n }\n\n var context = {\n text: text\n };\n\n // bounds\n var bounds = this.getEditingBBox(element);\n\n assign(context, bounds);\n\n var options = {};\n\n // tasks\n if (\n isAny(element, [\n 'bpmn:Task',\n 'bpmn:Participant',\n 'bpmn:Lane',\n 'bpmn:CallActivity'\n ]) ||\n isCollapsedSubProcess(element)\n ) {\n assign(options, {\n centerVertically: true\n });\n }\n\n // external labels\n if (isLabelExternal(element)) {\n assign(options, {\n autoResize: true\n });\n }\n\n // text annotations\n if (is(element, 'bpmn:TextAnnotation')) {\n assign(options, {\n resizable: true,\n autoResize: true\n });\n }\n\n assign(context, {\n options: options\n });\n\n return context;\n};\n\n\n/**\n * Get the editing bounding box based on the element's size and position\n *\n * @param {djs.model.Base} element\n *\n * @return {Object} an object containing information about position\n * and size (fixed or minimum and/or maximum)\n */\nLabelElements.prototype.getEditingBBox = function(element) {\n var canvas = this._canvas;\n\n var target = element.label || element;\n\n var bbox = canvas.getAbsoluteBBox(target);\n\n var mid = {\n x: bbox.x + bbox.width / 2,\n y: bbox.y + bbox.height / 2\n };\n\n // default position\n var bounds = { x: bbox.x, y: bbox.y };\n\n var zoom = canvas.zoom();\n\n var defaultStyle = this._textRenderer.getDefaultStyle(),\n externalStyle = this._textRenderer.getExternalStyle();\n\n // take zoom into account\n var externalFontSize = externalStyle.fontSize * zoom,\n externalLineHeight = externalStyle.lineHeight,\n defaultFontSize = defaultStyle.fontSize * zoom,\n defaultLineHeight = defaultStyle.lineHeight;\n\n var style = {\n fontFamily: this._textRenderer.getDefaultStyle().fontFamily,\n fontWeight: this._textRenderer.getDefaultStyle().fontWeight\n };\n\n // adjust for expanded pools AND lanes\n if (is(element, 'bpmn:Lane') || isExpandedPool(element)) {\n\n assign(bounds, {\n width: bbox.height,\n height: 30 * zoom,\n x: bbox.x - bbox.height / 2 + (15 * zoom),\n y: mid.y - (30 * zoom) / 2\n });\n\n assign(style, {\n fontSize: defaultFontSize + 'px',\n lineHeight: defaultLineHeight,\n paddingTop: (7 * zoom) + 'px',\n paddingBottom: (7 * zoom) + 'px',\n paddingLeft: (5 * zoom) + 'px',\n paddingRight: (5 * zoom) + 'px',\n transform: 'rotate(-90deg)'\n });\n }\n\n\n // internal labels for tasks and collapsed call activities,\n // sub processes and participants\n if (isAny(element, [ 'bpmn:Task', 'bpmn:CallActivity']) ||\n isCollapsedPool(element) ||\n isCollapsedSubProcess(element)) {\n\n assign(bounds, {\n width: bbox.width,\n height: bbox.height\n });\n\n assign(style, {\n fontSize: defaultFontSize + 'px',\n lineHeight: defaultLineHeight,\n paddingTop: (7 * zoom) + 'px',\n paddingBottom: (7 * zoom) + 'px',\n paddingLeft: (5 * zoom) + 'px',\n paddingRight: (5 * zoom) + 'px'\n });\n }\n\n\n // internal labels for expanded sub processes\n if (isExpandedSubProcess(element)) {\n assign(bounds, {\n width: bbox.width,\n x: bbox.x\n });\n\n assign(style, {\n fontSize: defaultFontSize + 'px',\n lineHeight: defaultLineHeight,\n paddingTop: (7 * zoom) + 'px',\n paddingBottom: (7 * zoom) + 'px',\n paddingLeft: (5 * zoom) + 'px',\n paddingRight: (5 * zoom) + 'px'\n });\n }\n\n var width = 90 * zoom,\n paddingTop = 7 * zoom,\n paddingBottom = 4 * zoom;\n\n // external labels for events, data elements, gateways, groups and connections\n if (target.labelTarget) {\n assign(bounds, {\n width: width,\n height: bbox.height + paddingTop + paddingBottom,\n x: mid.x - width / 2,\n y: bbox.y - paddingTop\n });\n\n assign(style, {\n fontSize: externalFontSize + 'px',\n lineHeight: externalLineHeight,\n paddingTop: paddingTop + 'px',\n paddingBottom: paddingBottom + 'px'\n });\n }\n\n // external label not yet created\n if (isLabelExternal(target)\n && !hasExternalLabel(target)\n && !isLabel(target)) {\n\n var externalLabelMid = getExternalLabelMid(element);\n\n var absoluteBBox = canvas.getAbsoluteBBox({\n x: externalLabelMid.x,\n y: externalLabelMid.y,\n width: 0,\n height: 0\n });\n\n var height = externalFontSize + paddingTop + paddingBottom;\n\n assign(bounds, {\n width: width,\n height: height,\n x: absoluteBBox.x - width / 2,\n y: absoluteBBox.y - height / 2\n });\n\n assign(style, {\n fontSize: externalFontSize + 'px',\n lineHeight: externalLineHeight,\n paddingTop: paddingTop + 'px',\n paddingBottom: paddingBottom + 'px'\n });\n }\n\n // text annotations\n if (is(element, 'bpmn:TextAnnotation')) {\n assign(bounds, {\n width: bbox.width,\n height: bbox.height,\n minWidth: 30 * zoom,\n minHeight: 10 * zoom\n });\n\n assign(style, {\n textAlign: 'left',\n paddingTop: (5 * zoom) + 'px',\n paddingBottom: (7 * zoom) + 'px',\n paddingLeft: (7 * zoom) + 'px',\n paddingRight: (5 * zoom) + 'px',\n fontSize: defaultFontSize + 'px',\n lineHeight: defaultLineHeight\n });\n }\n\n return { bounds: bounds, style: style };\n};\n\n\nLabelElements.prototype.update = function(\n element, newLabel,\n activeContextText, bounds) {\n\n var newBounds,\n bbox;\n\n if (is(element, 'bpmn:TextAnnotation')) {\n\n bbox = this._canvas.getAbsoluteBBox(element);\n\n newBounds = {\n x: element.x,\n y: element.y,\n width: element.width / bbox.width * bounds.width,\n height: element.height / bbox.height * bounds.height\n };\n }\n\n if (is(element, 'bpmn:Group')) {\n\n var businessObject = getBusinessObject(element);\n\n // initialize categoryValue if not existing\n if (!businessObject.categoryValueRef) {\n\n var rootElement = this._canvas.getRootElement(),\n definitions = getBusinessObject(rootElement).$parent;\n\n var categoryValue = createCategoryValue(definitions, this._bpmnFactory);\n\n getBusinessObject(element).categoryValueRef = categoryValue;\n }\n\n }\n\n if (isEmptyText(newLabel)) {\n newLabel = null;\n }\n\n this._modeling.updateLabel(element, newLabel, newBounds);\n};\n\n\n\n// helpers //////////////////////\n\nfunction isCollapsedSubProcess(element) {\n return is(element, 'bpmn:SubProcess') && !isExpanded(element);\n}\n\nfunction isExpandedSubProcess(element) {\n return is(element, 'bpmn:SubProcess') && isExpanded(element);\n}\n\nfunction isCollapsedPool(element) {\n return is(element, 'bpmn:Participant') && !isExpanded(element);\n}\n\nfunction isExpandedPool(element) {\n return is(element, 'bpmn:Participant') && isExpanded(element);\n}\n\nfunction isEmptyText(label) {\n return !label || !label.trim();\n}","import {\n append as svgAppend,\n attr as svgAttr,\n create as svgCreate,\n remove as svgRemove\n} from 'tiny-svg';\n\nimport {\n getBusinessObject,\n is\n} from '../../base/BaseServices';\n\nimport {\n translate\n} from 'diagram-js/lib/util/SvgTransformUtil';\n\nvar MARKER_HIDDEN = 'djs-element-hidden',\n MARKER_LABEL_HIDDEN = 'djs-label-hidden';\n\n\nexport default function LabelElementsPreview(\n eventBus, canvas, elementRegistry,\n pathMap) {\n\n var self = this;\n\n var defaultLayer = canvas.getDefaultLayer();\n\n var element, absoluteElementBBox, gfx;\n\n eventBus.on('directEditing.activate', function(context) {\n var activeProvider = context.active;\n\n element = activeProvider.element.label || activeProvider.element;\n\n // text annotation\n if (is(element, 'bpmn:TextAnnotation')) {\n absoluteElementBBox = canvas.getAbsoluteBBox(element);\n\n gfx = svgCreate('g');\n\n var textPathData = pathMap.getScaledPath('TEXT_ANNOTATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: element.height,\n position: {\n mx: 0.0,\n my: 0.0\n }\n });\n\n var path = self.path = svgCreate('path');\n\n svgAttr(path, {\n d: textPathData,\n strokeWidth: 2,\n stroke: getStrokeColor(element)\n });\n\n svgAppend(gfx, path);\n\n svgAppend(defaultLayer, gfx);\n\n translate(gfx, element.x, element.y);\n }\n\n if (is(element, 'bpmn:TextAnnotation') ||\n element.labelTarget) {\n canvas.addMarker(element, MARKER_HIDDEN);\n } else if (is(element, 'bpmn:Task') ||\n is(element, 'bpmn:CallActivity') ||\n is(element, 'bpmn:SubProcess') ||\n is(element, 'bpmn:Participant')) {\n canvas.addMarker(element, MARKER_LABEL_HIDDEN);\n }\n });\n\n eventBus.on('directEditing.resize', function(context) {\n\n // text annotation\n if (is(element, 'bpmn:TextAnnotation')) {\n var height = context.height,\n dy = context.dy;\n\n var newElementHeight = Math.max(element.height / absoluteElementBBox.height * (height + dy), 0);\n\n var textPathData = pathMap.getScaledPath('TEXT_ANNOTATION', {\n xScaleFactor: 1,\n yScaleFactor: 1,\n containerWidth: element.width,\n containerHeight: newElementHeight,\n position: {\n mx: 0.0,\n my: 0.0\n }\n });\n\n svgAttr(self.path, {\n d: textPathData\n });\n }\n });\n\n eventBus.on([ 'directEditing.complete', 'directEditing.cancel' ], function(context) {\n var activeProvider = context.active;\n\n if (activeProvider) {\n canvas.removeMarker(activeProvider.element.label || activeProvider.element, MARKER_HIDDEN);\n canvas.removeMarker(element, MARKER_LABEL_HIDDEN);\n }\n\n element = undefined;\n absoluteElementBBox = undefined;\n\n if (gfx) {\n svgRemove(gfx);\n\n gfx = undefined;\n }\n });\n}\n\nLabelElementsPreview.$inject = [\n 'eventBus',\n 'canvas',\n 'elementRegistry',\n 'pathMap'\n];\n\n\n// helpers ///////////////////\n\nfunction getStrokeColor(element, defaultColor) {\n var bo = getBusinessObject(element);\n\n return bo.di.get('stroke') || defaultColor || 'black';\n}","import ChangeSupportModule from 'diagram-js/lib/features/change-support';\nimport ResizeModule from 'diagram-js/lib/features/resize';\nimport DirectEditingModule from 'diagram-js-direct-editing';\n\nimport LabelElements from './LabelElements';\nimport LabelElementsPreview from './LabelElementsPreview';\n\n\nexport default {\n __depends__: [\n ChangeSupportModule,\n ResizeModule,\n DirectEditingModule\n ],\n __init__: [\n 'labelElements',\n 'labelElementsPreview'\n ],\n labelElements: [ 'type', LabelElements ],\n labelElementsPreview: [ 'type', LabelElementsPreview ]\n};\n","import inherits from 'inherits';\n\nimport { is } from '../../../base/BaseServices';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\n\nexport default function AppendAction(eventBus, elementFactory, bpmnRules) {\n\n CommandInterceptor.call(this, eventBus);\n\n // assign correct shape position unless already set\n\n this.preExecute('shape.append', function(context) {\n const { source, shape } = context;\n \n if (!context.position) {\n const isTextAnnotation = is(shape, 'bpmn:TextAnnotation');\n \n context.position = isTextAnnotation\n ? {\n x: source.x + source.width / 2 + 75,\n y: source.y - 50 - shape.height / 2\n }\n : {\n x: source.x + source.width + 80 + shape.width / 2,\n y: source.y + source.height / 2\n };\n }\n }, true); \n}\n\ninherits(AppendAction, CommandInterceptor);\n\nAppendAction.$inject = [\n 'eventBus',\n 'elementFactory',\n 'bpmnRules'\n];","import inherits from 'inherits';\r\n\r\nimport { is } from '../../../base/BaseServices';\r\n\r\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\r\n\r\nimport {\r\n filter,\r\n forEach\r\n} from 'min-dash';\r\n\r\nexport default function AssociationAction(injector, modeling) {\r\n injector.invoke(CommandInterceptor, this);\r\n\r\n this.postExecute('shape.move', function(context) {\r\n const { newParent, shape } = context;\r\n \r\n const associations = filter(shape.incoming.concat(shape.outgoing), function(connection) {\r\n return is(connection, 'bpmn:Association');\r\n });\r\n \r\n forEach(associations, function(association) {\r\n modeling.moveConnection(association, { x: 0, y: 0 }, newParent);\r\n });\r\n }, true); \r\n}\r\n\r\ninherits(AssociationAction, CommandInterceptor);\r\n\r\nAssociationAction.$inject = [\r\n 'injector',\r\n 'modeling'\r\n];","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { getBusinessObject, isLabel } from '../../../base/BaseServices';\n\nimport { isAny } from '../services/ModelingService';\n\nvar LOW_PRIORITY = 500;\n\n\n/**\n * Replace intermediate event with boundary event when creating or moving results in attached event.\n */\nexport default function AttachEventAction(bpmnReplace, injector) {\n injector.invoke(CommandInterceptor, this);\n\n this._bpmnReplace = bpmnReplace;\n\n var self = this;\n\n this.postExecuted('elements.create', LOW_PRIORITY, function(context) {\n const { elements } = context;\n \n const filteredElements = elements.filter(shape => shouldReplace(shape, shape.host));\n \n if (filteredElements.length !== 1) {\n return;\n }\n \n context.elements = filteredElements.map((element) => self.replaceShape(element, element.host));\n }, true); \n\n this.preExecute('elements.move', LOW_PRIORITY, function(context) {\n const { shapes, newHost } = context;\n \n if (shapes.length !== 1) {\n return;\n }\n \n const [shape] = shapes;\n \n if (shouldReplace(shape, newHost)) {\n context.shapes = [self.replaceShape(shape, newHost)];\n }\n }, true); \n}\n\nAttachEventAction.$inject = [\n 'bpmnReplace',\n 'injector'\n];\n\ninherits(AttachEventAction, CommandInterceptor);\n\nAttachEventAction.prototype.replaceShape = function(shape, host) {\n const eventDefinition = getEventDefinition(shape);\n\n const boundaryEvent = {\n type: 'bpmn:BoundaryEvent',\n host\n };\n\n if (eventDefinition) {\n boundaryEvent.eventDefinitionType = eventDefinition.$type;\n }\n\n return this._bpmnReplace.replaceElement(shape, boundaryEvent, { layoutConnection: false });\n};\n\n\n// helpers //////////\n\nfunction getEventDefinition(element) {\n const businessObject = getBusinessObject(element);\n const eventDefinitions = businessObject.eventDefinitions;\n\n return eventDefinitions && eventDefinitions[0];\n}\n\nfunction shouldReplace(shape, host) {\n return !isLabel(shape) &&\n isAny(shape, ['bpmn:IntermediateThrowEvent', 'bpmn:IntermediateCatchEvent']) &&\n !!host;\n}\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\nimport {\n filter,\n forEach\n} from 'min-dash';\n\nvar HIGH_PRIORITY = 2000;\n\n\n/**\n * BPMN specific boundary event behavior\n */\nexport default function BoundaryEventAction(eventBus, moddle, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n function getBoundaryEvents(element) {\n return filter(element.attachers, attacher => is(attacher, 'bpmn:BoundaryEvent'));\n } \n\n // remove after connecting to event-based gateway\n this.postExecute('connection.create', function(event) {\n const { source, target } = event.context;\n const boundaryEvents = getBoundaryEvents(target);\n \n if (is(source, 'bpmn:EventBasedGateway') &&\n is(target, 'bpmn:ReceiveTask') &&\n boundaryEvents.length > 0) {\n modeling.removeElements(boundaryEvents);\n }\n }); \n\n // remove after replacing connected gateway with event-based gateway\n this.postExecute('connection.reconnect', function(event) {\n const { oldSource, newSource } = event.context;\n \n if (is(oldSource, 'bpmn:Gateway') &&\n is(newSource, 'bpmn:EventBasedGateway')) {\n forEach(newSource.outgoing, function(connection) {\n const target = connection.target;\n const attachedBoundaryEvents = getBoundaryEvents(target);\n \n if (is(target, 'bpmn:ReceiveTask') &&\n attachedBoundaryEvents.length > 0) {\n modeling.removeElements(attachedBoundaryEvents);\n }\n });\n }\n }); \n\n // copy reference to root element on replace\n eventBus.on('moddleCopy.canCopyProperty', HIGH_PRIORITY, function(context) {\n const { parent, property, propertyName } = context;\n \n const propertyDescriptor = moddle.getPropertyDescriptor(parent, propertyName);\n \n if (propertyDescriptor && propertyDescriptor.isReference && is(property, 'bpmn:RootElement')) {\n parent.set(propertyName, property);\n }\n }); \n}\n\nBoundaryEventAction.$inject = [\n 'eventBus',\n 'moddle',\n 'modeling'\n];\n\ninherits(BoundaryEventAction, CommandInterceptor);","import inherits from 'inherits';\r\n\r\nimport {\r\n find,\r\n isArray,\r\n matchPattern,\r\n some\r\n} from 'min-dash';\r\n\r\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\r\n\r\nimport {\r\n add as collectionAdd,\r\n remove as collectionRemove\r\n} from 'diagram-js/lib/util/Collections';\r\n\r\nimport {\r\n getBusinessObject,\r\n is,\r\n hasEventDefinition\r\n} from '../../../base/BaseServices';\r\n\r\nimport { isAny } from '../services/ModelingService';\r\n\r\nvar LOW_PRIORITY = 500;\r\n\r\n\r\n/**\r\n * Add referenced root elements (error, escalation, message, signal) if they don't exist.\r\n * Copy referenced root elements on copy & paste.\r\n */\r\nexport default function RootElementAction(\r\n bpmnjs, eventBus, injector, moddleCopy, bpmnFactory\r\n) {\r\n injector.invoke(CommandInterceptor, this);\r\n\r\n function canHaveRootElementReference(element) {\r\n const taskTypes = ['bpmn:ReceiveTask', 'bpmn:SendTask'];\r\n const eventDefinitionTypes = [\r\n 'bpmn:ErrorEventDefinition',\r\n 'bpmn:EscalationEventDefinition',\r\n 'bpmn:MessageEventDefinition',\r\n 'bpmn:SignalEventDefinition'\r\n ];\r\n \r\n return isAny(element, taskTypes) || hasAnyEventDefinition(element, eventDefinitionTypes);\r\n }\r\n \r\n\r\n function hasRootElement(rootElement) {\r\n const definitions = bpmnjs.getDefinitions();\r\n const rootElements = definitions.get('rootElements');\r\n \r\n return !!find(rootElements, matchPattern({ id: rootElement.id }));\r\n }\r\n \r\n\r\n function getRootElementReferencePropertyName(eventDefinition) {\r\n if (isErrorEventDefinition(eventDefinition)) {\r\n return 'errorRef';\r\n } else if (isEscalationEventDefinition(eventDefinition)) {\r\n return 'escalationRef';\r\n } else if (isMessageEventDefinition(eventDefinition)) {\r\n return 'messageRef';\r\n } else if (isSignalEventDefinition(eventDefinition)) {\r\n return 'signalRef';\r\n }\r\n }\r\n \r\n function isErrorEventDefinition(eventDefinition) {\r\n return is(eventDefinition, 'bpmn:ErrorEventDefinition');\r\n }\r\n \r\n function isEscalationEventDefinition(eventDefinition) {\r\n return is(eventDefinition, 'bpmn:EscalationEventDefinition');\r\n }\r\n \r\n function isMessageEventDefinition(eventDefinition) {\r\n return is(eventDefinition, 'bpmn:MessageEventDefinition');\r\n }\r\n \r\n function isSignalEventDefinition(eventDefinition) {\r\n return is(eventDefinition, 'bpmn:SignalEventDefinition');\r\n }\r\n \r\n\r\n function getRootElement(businessObject) {\r\n if (canHaveRootElementReference(businessObject)) {\r\n return businessObject.get(getRootElementReferencePropertyName(businessObject));\r\n }\r\n \r\n var eventDefinitions = businessObject.get('eventDefinitions');\r\n if (eventDefinitions && eventDefinitions.length > 0) {\r\n var eventDefinition = eventDefinitions[0];\r\n return eventDefinition.get(getRootElementReferencePropertyName(eventDefinition));\r\n }\r\n \r\n return null;\r\n }\r\n \r\n\r\n function setRootElement(businessObject, rootElement) {\r\n if (canHaveRootElementReference(businessObject)) {\r\n return businessObject.set(getRootElementReferencePropertyName(businessObject), rootElement);\r\n }\r\n \r\n var eventDefinitions = businessObject.get('eventDefinitions');\r\n if (eventDefinitions && eventDefinitions.length > 0) {\r\n var eventDefinition = eventDefinitions[0];\r\n return eventDefinition.set(getRootElementReferencePropertyName(eventDefinition), rootElement);\r\n }\r\n \r\n return null;\r\n }\r\n \r\n\r\n // create shape\r\n this.executed('shape.create', function(context) {\r\n var shape = context.shape;\r\n \r\n if (!canHaveRootElementReference(shape)) {\r\n return;\r\n }\r\n \r\n var businessObject = getBusinessObject(shape),\r\n rootElement = getRootElement(businessObject);\r\n \r\n if (rootElement && !hasRootElement(rootElement)) {\r\n addRootElementToDefinitions(rootElement);\r\n context.addedRootElement = rootElement;\r\n }\r\n }, true);\r\n \r\n function addRootElementToDefinitions(rootElement) {\r\n var rootElements = bpmnjs.getDefinitions().get('rootElements');\r\n collectionAdd(rootElements, rootElement);\r\n }\r\n \r\n\r\n this.reverted('shape.create', function(context) {\r\n var addedRootElement = context.addedRootElement;\r\n \r\n if (addedRootElement) {\r\n removeRootElementFromDefinitions(addedRootElement);\r\n }\r\n }, true);\r\n \r\n function removeRootElementFromDefinitions(rootElement) {\r\n var rootElements = bpmnjs.getDefinitions().get('rootElements');\r\n collectionRemove(rootElements, rootElement);\r\n }\r\n \r\n\r\n eventBus.on('copyPaste.copyElement', function(context) {\r\n var descriptor = context.descriptor,\r\n element = context.element;\r\n \r\n if (canHaveRootElementReference(element)) {\r\n var businessObject = getBusinessObject(element),\r\n rootElement = getRootElement(businessObject);\r\n \r\n if (rootElement) {\r\n descriptor.referencedRootElement = rootElement;\r\n }\r\n }\r\n });\r\n \r\n\r\n eventBus.on('copyPaste.pasteElement', LOW_PRIORITY, function(context) {\r\n var descriptor = context.descriptor,\r\n businessObject = descriptor.businessObject;\r\n \r\n if (canHaveRootElementReference(businessObject)) {\r\n var referencedRootElement = descriptor.referencedRootElement;\r\n \r\n if (referencedRootElement && !hasRootElement(referencedRootElement)) {\r\n referencedRootElement = moddleCopy.copyElement(\r\n referencedRootElement,\r\n bpmnFactory.create(referencedRootElement.$type)\r\n );\r\n \r\n setRootElement(businessObject, referencedRootElement);\r\n }\r\n }\r\n });\r\n \r\n}\r\n\r\nRootElementAction.$inject = [\r\n 'bpmnjs',\r\n 'eventBus',\r\n 'injector',\r\n 'moddleCopy',\r\n 'bpmnFactory'\r\n];\r\n\r\ninherits(RootElementAction, CommandInterceptor);\r\n\r\n// helpers //////////\r\n\r\nfunction hasAnyEventDefinition(element, types) {\r\n if (!isArray(types)) {\r\n types = [ types ];\r\n }\r\n\r\n return some(types, function(type) {\r\n return hasEventDefinition(element, type);\r\n });\r\n}\r\n","import inherits from 'inherits';\n\nimport { is } from '../../../base/BaseServices';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { getParent } from '../services/ModelingService';\n\n\nexport default function CreateAction(injector) {\n injector.invoke(CommandInterceptor, this);\n\n this.preExecute('shape.create', 1500, function(event) {\n const { context } = event;\n let { parent, shape } = context;\n \n if (is(parent, 'bpmn:Lane') && !is(shape, 'bpmn:Lane')) {\n context.parent = getParent(parent, 'bpmn:Participant');\n }\n }); \n\n}\n\n\nCreateAction.$inject = [ 'injector' ];\n\ninherits(CreateAction, CommandInterceptor);","import { getLanesRoot } from '../services/LaneService';\r\n\r\nimport { is } from '../../../base/BaseServices';\r\n\r\nimport { isAny } from '../services/ModelingService';\r\n\r\nvar HIGH_PRIORITY = 1500;\r\nvar HIGHEST_PRIORITY = 2000;\r\n\r\n\r\n/**\r\n * Correct hover targets in certain situations to improve diagram interaction.\r\n *\r\n * @param {ElementRegistry} elementRegistry\r\n * @param {EventBus} eventBus\r\n * @param {Canvas} canvas\r\n */\r\nexport default function FixHoverAction(elementRegistry, eventBus, canvas) {\r\n\r\n eventBus.on([\r\n 'create.hover',\r\n 'create.move',\r\n 'create.out',\r\n 'create.end',\r\n 'shape.move.hover',\r\n 'shape.move.move',\r\n 'shape.move.out',\r\n 'shape.move.end'\r\n ], HIGH_PRIORITY, function (event) {\r\n var context = event.context,\r\n shape = context.shape || event.shape,\r\n hover = event.hover;\r\n \r\n handleLaneDrop(event, hover, shape);\r\n \r\n handleGroupAndLabelDrop(event, hover, shape);\r\n });\r\n \r\n function handleLaneDrop(event, hover, shape) {\r\n if (isLaneAndNotParticipant(hover, shape)) {\r\n event.hover = getLanesRoot(hover);\r\n event.hoverGfx = elementRegistry.getGraphics(event.hover);\r\n }\r\n }\r\n \r\n function isLaneAndNotParticipant(hover, shape) {\r\n return is(hover, 'bpmn:Lane') && !isAny(shape, ['bpmn:Lane', 'bpmn:Participant']);\r\n }\r\n \r\n function handleGroupAndLabelDrop(event, hover, shape) {\r\n var rootElement = canvas.getRootElement();\r\n \r\n if (shouldDropOnRoot(hover, shape, rootElement)) {\r\n event.hover = rootElement;\r\n event.hoverGfx = elementRegistry.getGraphics(event.hover);\r\n }\r\n }\r\n \r\n function shouldDropOnRoot(hover, shape, rootElement) {\r\n return hover !== rootElement && (shape.labelTarget || is(shape, 'bpmn:Group'));\r\n }\r\n \r\n\r\n eventBus.on([\r\n 'connect.hover',\r\n 'connect.out',\r\n 'connect.end',\r\n 'connect.cleanup',\r\n 'global-connect.hover',\r\n 'global-connect.out',\r\n 'global-connect.end',\r\n 'global-connect.cleanup'\r\n ], HIGH_PRIORITY, function (event) {\r\n handleLaneConnection(event);\r\n });\r\n \r\n function handleLaneConnection(event) {\r\n var hover = event.hover;\r\n \r\n if (isLane(hover)) {\r\n updateHoverForLaneConnection(event, hover);\r\n }\r\n }\r\n \r\n function updateHoverForLaneConnection(event, hover) {\r\n event.hover = getLanesRoot(hover) || hover;\r\n event.hoverGfx = elementRegistry.getGraphics(event.hover);\r\n } \r\n\r\n\r\n eventBus.on(['bendpoint.move.hover'], HIGH_PRIORITY, function (event) {\r\n handleLaneReconnectHover(event);\r\n });\r\n \r\n function handleLaneReconnectHover(event) {\r\n var context = event.context,\r\n hover = event.hover,\r\n type = context.type;\r\n \r\n if (isLane(hover) && isReconnectType(type)) {\r\n updateHoverForLaneReconnect(event, hover);\r\n }\r\n }\r\n \r\n function isReconnectType(type) {\r\n return /reconnect/.test(type);\r\n }\r\n \r\n function updateHoverForLaneReconnect(event, hover) {\r\n event.hover = getLanesRoot(hover) || hover;\r\n event.hoverGfx = elementRegistry.getGraphics(event.hover);\r\n } \r\n\r\n\r\n eventBus.on(['connect.start'], HIGH_PRIORITY, function (event) {\r\n updateConnectStart(event);\r\n });\r\n \r\n function updateConnectStart(event) {\r\n var context = event.context,\r\n start = context.start;\r\n \r\n if (isLane(start)) {\r\n context.start = getLanesRoot(start) || start;\r\n }\r\n }\r\n\r\n\r\n // allow movement of participants from lanes\r\n eventBus.on('shape.move.start', HIGHEST_PRIORITY, function (event) {\r\n updateMoveStart(event);\r\n });\r\n \r\n function updateMoveStart(event) {\r\n var shape = event.shape;\r\n \r\n if (isLane(shape)) {\r\n event.shape = getLanesRoot(shape) || shape;\r\n }\r\n }\r\n \r\n function isLane(element) {\r\n return is(element, 'bpmn:Lane');\r\n }\r\n \r\n\r\n}\r\n\r\nFixHoverAction.$inject = [\r\n 'elementRegistry',\r\n 'eventBus',\r\n 'canvas'\r\n];","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\n\n/**\n * BPMN specific create data object behavior\n */\nexport default function CreateDataObjectAction(eventBus, bpmnFactory, moddle) {\n\n CommandInterceptor.call(this, eventBus);\n\n this.preExecute('shape.create', function(event) {\n const { context } = event;\n const { shape } = context;\n \n if (is(shape, 'bpmn:DataObjectReference') && shape.type !== 'label') {\n // create a DataObject every time a DataObjectReference is created\n const dataObject = bpmnFactory.create('bpmn:DataObject');\n \n // set the reference to the DataObject\n shape.businessObject.dataObjectRef = dataObject;\n }\n }); \n\n}\n\nCreateDataObjectAction.$inject = [\n 'eventBus',\n 'bpmnFactory',\n 'moddle'\n];\n\ninherits(CreateDataObjectAction, CommandInterceptor);","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is, isLabel } from '../../../base/BaseServices';\n\nimport { getBBox } from 'diagram-js/lib/util/Elements';\n\nimport {\n assign,\n find\n} from 'min-dash';\n\nimport { asTRBL } from 'diagram-js/lib/layout/LayoutUtil';\n\nvar HORIZONTAL_PARTICIPANT_PADDING = 20,\n VERTICAL_PARTICIPANT_PADDING = 20;\n\nexport var PARTICIPANT_BORDER_WIDTH = 30;\n\nvar HIGH_PRIORITY = 2000;\n\n\n/**\n * BPMN-specific behavior for creating participants.\n */\nexport default function CreateParticipantAction(canvas, eventBus, modeling) {\n CommandInterceptor.call(this, eventBus);\n\n // fit participant\n eventBus.on(['create.start', 'shape.move.start'], HIGH_PRIORITY, function(event) {\n const { context } = event;\n const { shape } = context;\n const rootElement = canvas.getRootElement();\n \n if (!isParticipantMoveStart(shape, rootElement)) {\n return;\n }\n \n const children = getValidChildren(rootElement);\n \n if (!children.length) {\n return;\n }\n \n const childrenBBox = getBBox(children);\n const participantBounds = getParticipantBounds(shape, childrenBBox);\n \n assign(shape, participantBounds);\n \n context.createConstraints = getParticipantCreateConstraints(shape, childrenBBox);\n });\n \n function isParticipantMoveStart(shape, rootElement) {\n return is(shape, 'bpmn:Participant') &&\n is(rootElement, 'bpmn:Process') &&\n rootElement.children.length > 0;\n }\n \n function getValidChildren(rootElement) {\n return rootElement.children.filter(element =>\n !is(element, 'bpmn:Group') && !isLabel(element) && !isConnection(element)\n );\n } \n\n // force hovering process when creating first participant\n eventBus.on('create.start', HIGH_PRIORITY, function(event) {\n const { context } = event;\n const { shape } = context;\n const rootElement = canvas.getRootElement();\n const rootElementGfx = canvas.getGraphics(rootElement);\n \n function ensureHoveringProcess(event) {\n event.element = rootElement;\n event.gfx = rootElementGfx;\n }\n \n if (isParticipantCreating(shape, rootElement)) {\n setupParticipantCreationListeners(ensureHoveringProcess);\n }\n });\n \n function isParticipantCreating(shape, rootElement) {\n return is(shape, 'bpmn:Participant') && is(rootElement, 'bpmn:Process');\n }\n \n function setupParticipantCreationListeners(ensureHoveringProcess) {\n eventBus.on('element.hover', HIGH_PRIORITY, ensureHoveringProcess);\n \n eventBus.once('create.cleanup', function() {\n eventBus.off('element.hover', ensureHoveringProcess);\n });\n } \n\n function ensureCollaboration(context) {\n const parent = context.parent;\n const rootElement = canvas.getRootElement();\n \n const collaboration = isCollaboration(rootElement) ? rootElement : createCollaboration(context);\n \n context.parent = collaboration;\n }\n \n function isCollaboration(element) {\n return is(element, 'bpmn:Collaboration');\n }\n \n function createCollaboration(context) {\n const { parent } = context;\n const collaboration = modeling.makeCollaboration();\n \n if (is(parent, 'bpmn:Process')) {\n context.process = parent;\n }\n \n return collaboration;\n }\n \n\n // turn process into collaboration before adding participant\n this.preExecute('shape.create', function(context) {\n const parent = context.parent;\n const shape = context.shape;\n \n if (isParticipantInProcess(shape, parent)) {\n ensureCollaboration(context);\n }\n }, true);\n \n function isParticipantInProcess(participant, process) {\n return is(participant, 'bpmn:Participant') && is(process, 'bpmn:Process');\n }\n \n\n this.execute('shape.create', function(context) {\n const process = context.process;\n const shape = context.shape;\n \n if (process) {\n updateProcessReference(shape, process, context);\n }\n }, true);\n \n function updateProcessReference(shape, process, context) {\n const { businessObject } = shape;\n const { processRef } = businessObject;\n \n if (processRef) {\n context.oldProcessRef = processRef;\n }\n \n businessObject.processRef = process.businessObject;\n }\n \n\n this.revert('shape.create', function(context) {\n const process = context.process;\n const shape = context.shape;\n \n if (process) {\n revertProcessReference(shape, context.oldProcessRef);\n }\n }, true);\n \n function revertProcessReference(shape, oldProcessRef) {\n const { businessObject } = shape;\n \n if (oldProcessRef) {\n businessObject.processRef = oldProcessRef;\n } else {\n // If there was no old process reference, remove the current process reference\n delete businessObject.processRef;\n }\n }\n \n\n this.postExecute('shape.create', function(context) {\n const process = context.process;\n const shape = context.shape;\n \n if (process) {\n moveChildrenToParticipant(modeling, process, shape);\n }\n }, true);\n \n function moveChildrenToParticipant(modeling, process, participant) {\n const processChildren = process.children.slice();\n \n modeling.moveElements(processChildren, { x: 0, y: 0 }, participant);\n }\n \n\n // turn process into collaboration when creating participants\n this.preExecute('elements.create', HIGH_PRIORITY, function(context) {\n const elements = context.elements;\n const parent = context.parent;\n \n const participant = findAndSetupParticipant(context);\n \n if (participant) {\n reuseProcessForParticipant(parent, context);\n }\n }, true);\n \n function findAndSetupParticipant(context) {\n const elements = context.elements;\n const hasParticipants = findParticipant(elements);\n \n if (hasParticipants && is(context.parent, 'bpmn:Process')) {\n ensureCollaboration(context);\n \n return findParticipant(elements);\n }\n \n return null;\n }\n \n function reuseProcessForParticipant(parent, context) {\n const participant = findParticipant(context.elements);\n \n if (participant) {\n context.oldProcessRef = participant.businessObject.processRef;\n participant.businessObject.processRef = parent.businessObject;\n }\n }\n \n\n this.revert('elements.create', function(context) {\n const elements = context.elements;\n const process = context.process;\n \n if (process) {\n const participant = findParticipant(elements);\n \n // re-use process when creating the first participant\n if (participant) {\n participant.businessObject.processRef = context.oldProcessRef;\n }\n }\n }, true);\n \n\n this.postExecute('elements.create', function(context) {\n const elements = context.elements;\n const process = context.process;\n \n if (process) {\n const participant = findParticipant(elements);\n \n // move children from process to the first participant\n if (participant) {\n const processChildren = process.children.slice();\n modeling.moveElements(processChildren, { x: 0, y: 0 }, participant);\n }\n }\n }, true); \n\n}\n\nCreateParticipantAction.$inject = [\n 'canvas',\n 'eventBus',\n 'modeling'\n];\n\ninherits(CreateParticipantAction, CommandInterceptor);\n\n// helpers //////////\n\nfunction getParticipantBounds(shape, childrenBBox) {\n const paddedChildrenBBox = {\n width: childrenBBox.width + HORIZONTAL_PARTICIPANT_PADDING * 2 + PARTICIPANT_BORDER_WIDTH,\n height: childrenBBox.height + VERTICAL_PARTICIPANT_PADDING * 2\n };\n\n const width = Math.max(shape.width, paddedChildrenBBox.width);\n const height = Math.max(shape.height, paddedChildrenBBox.height);\n\n return {\n x: -width / 2,\n y: -height / 2,\n width,\n height\n };\n}\n\n\nfunction getParticipantCreateConstraints(shape, childrenBBox) {\n const { top, right, bottom, left } = asTRBL(childrenBBox);\n\n return {\n bottom: top + shape.height / 2 - VERTICAL_PARTICIPANT_PADDING,\n left: right - shape.width / 2 + HORIZONTAL_PARTICIPANT_PADDING,\n top: bottom - shape.height / 2 + VERTICAL_PARTICIPANT_PADDING,\n right: left + shape.width / 2 - HORIZONTAL_PARTICIPANT_PADDING - PARTICIPANT_BORDER_WIDTH\n };\n}\n\n\nfunction isConnection(element) {\n return Boolean(element.waypoints);\n}\n\n\nfunction findParticipant(elements) {\n return find(elements, function(element) {\n return is(element, 'bpmn:Participant');\n });\n}\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n add as collectionAdd,\n remove as collectionRemove\n} from 'diagram-js/lib/util/Collections';\n\nimport {\n find\n} from 'min-dash';\n\nimport {\n is\n} from '../../../base/BaseServices';\n\nvar TARGET_REF_PLACEHOLDER_NAME = '__targetRef_placeholder';\n\n\n/**\n * This behavior makes sure we always set a fake\n * DataInputAssociation#targetRef as demanded by the BPMN 2.0\n * XSD schema.\n *\n * The reference is set to a bpmn:Property{ name: '__targetRef_placeholder' }\n * which is created on the fly and cleaned up afterwards if not needed\n * anymore.\n *\n * @param {EventBus} eventBus\n * @param {BpmnFactory} bpmnFactory\n */\nexport default function DataInputAction(eventBus, bpmnFactory) {\n\n CommandInterceptor.call(this, eventBus);\n\n\n this.executed([\n 'connection.create',\n 'connection.delete',\n 'connection.move',\n 'connection.reconnect'\n ], ifDataInputAssociation(fixTargetRef));\n\n this.reverted([\n 'connection.create',\n 'connection.delete',\n 'connection.move',\n 'connection.reconnect'\n ], ifDataInputAssociation(fixTargetRef));\n\n\n function usesTargetRef(element, targetRef, removedConnection) {\n const inputAssociations = element.get('dataInputAssociations');\n \n return find(inputAssociations, function(association) {\n return association !== removedConnection &&\n association.targetRef === targetRef;\n });\n }\n\n\n function getTargetRef(element, create) {\n const properties = element.get('properties');\n\n let targetRefProp = find(properties, function(p) {\n return p.name === TARGET_REF_PLACEHOLDER_NAME;\n });\n\n if (!targetRefProp && create) {\n targetRefProp = bpmnFactory.create('bpmn:Property', {\n name: TARGET_REF_PLACEHOLDER_NAME\n });\n\n collectionAdd(properties, targetRefProp);\n }\n\n return targetRefProp;\n }\n\n\n function cleanupTargetRef(element, connection) {\n const targetRefProp = getTargetRef(element);\n\n if (targetRefProp && !usesTargetRef(element, targetRefProp, connection)) {\n collectionRemove(element.get('properties'), targetRefProp);\n }\n }\n\n\n /**\n * Make sure targetRef is set to a valid property or\n * `null` if the connection is detached.\n *\n * @param {Event} event\n */\n function fixTargetRef(event) {\n const { context } = event;\n const { connection, newTarget, oldTarget, target } = context;\n\n const connectionBo = connection.businessObject;\n const targetBo = target && target.businessObject;\n const newTargetBo = newTarget && newTarget.businessObject;\n const oldTargetBo = (oldTarget || context.target) && (oldTarget || context.target).businessObject;\n\n const dataAssociation = connection.businessObject;\n let targetRefProp;\n\n function cleanupAndAssignTargetRef(bo) {\n if (bo && bo !== targetBo) {\n cleanupTargetRef(bo, connectionBo);\n }\n if (bo) {\n targetRefProp = getTargetRef(bo, true);\n dataAssociation.targetRef = targetRefProp;\n } else {\n dataAssociation.targetRef = null;\n }\n }\n\n cleanupAndAssignTargetRef(oldTargetBo);\n cleanupAndAssignTargetRef(newTargetBo);\n }\n\n}\n\nDataInputAction.$inject = [\n 'eventBus',\n 'bpmnFactory'\n];\n\ninherits(DataInputAction, CommandInterceptor);\n\n\n/**\n * Only call the given function when the event\n * touches a bpmn:DataInputAssociation.\n *\n * @param {Function} fn\n * @return {Function}\n */\nfunction ifDataInputAssociation(fn) {\n return function (event) {\n const { context } = event;\n const { connection } = context;\n\n if (isDataInputAssociation(connection)) {\n return fn(event);\n }\n };\n}\n\nfunction isDataInputAssociation(connection) {\n return is(connection, 'bpmn:DataInputAssociation');\n}\n","export default function UpdateSemanticParentHandler(bpmnUpdater) {\r\n this._bpmnUpdater = bpmnUpdater;\r\n}\r\n\r\nUpdateSemanticParentHandler.$inject = [ 'bpmnUpdater' ];\r\n\r\n\r\nUpdateSemanticParentHandler.prototype.execute = function (context) {\r\n const { dataStoreBo, newSemanticParent, newDiParent } = context;\r\n\r\n context.oldSemanticParent = dataStoreBo.$parent;\r\n context.oldDiParent = dataStoreBo.di.$parent;\r\n\r\n // update semantic parent\r\n this._bpmnUpdater.updateSemanticParent(dataStoreBo, newSemanticParent);\r\n\r\n // update DI parent\r\n this._bpmnUpdater.updateDiParent(dataStoreBo.di, newDiParent);\r\n};\r\n\r\n\r\nUpdateSemanticParentHandler.prototype.revert = function (context) {\r\n const { dataStoreBo, oldSemanticParent, oldDiParent } = context;\r\n\r\n // update semantic parent\r\n this._bpmnUpdater.updateSemanticParent(dataStoreBo, oldSemanticParent);\r\n\r\n // update DI parent\r\n this._bpmnUpdater.updateDiParent(dataStoreBo.di, oldDiParent);\r\n};\r\n\r\n","import inherits from 'inherits';\r\n\r\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\r\n\r\nimport { is } from '../../../base/BaseServices';\r\n\r\nimport { isAny } from '../services/ModelingService';\r\n\r\nimport UpdateSemanticParentHandler from '../handlers/UpdateSemanticParentHandler';\r\n\r\n\r\n/**\r\n * BPMN specific data store behavior\r\n */\r\nexport default function DataStoreAction(\r\n canvas, commandStack, elementRegistry,\r\n eventBus) {\r\n\r\nCommandInterceptor.call(this, eventBus);\r\n\r\ncommandStack.registerHandler('dataStore.updateContainment', UpdateSemanticParentHandler);\r\n\r\nconst getFirstParticipant = () => elementRegistry.find(element => is(element, 'bpmn:Participant'));\r\n\r\nconst getDataStores = element =>\r\n element.children.filter(child => is(child, 'bpmn:DataStoreReference') && !child.labelTarget);\r\n\r\nconst updateDataStoreParent = (dataStore, newDataStoreParent) => {\r\n const dataStoreBo = dataStore.businessObject || dataStore;\r\n\r\n newDataStoreParent = newDataStoreParent || getFirstParticipant();\r\n\r\n if (newDataStoreParent) {\r\n const newDataStoreParentBo = newDataStoreParent.businessObject || newDataStoreParent;\r\n\r\n commandStack.execute('dataStore.updateContainment', {\r\n dataStoreBo,\r\n newSemanticParent: newDataStoreParentBo.processRef || newDataStoreParentBo,\r\n newDiParent: newDataStoreParentBo.di\r\n });\r\n }\r\n};\r\n\r\n// disable auto-resize for data stores\r\nthis.preExecute('shape.create', event => {\r\n const { context } = event;\r\n const { shape } = context;\r\n\r\n if (is(shape, 'bpmn:DataStoreReference') && shape.type !== 'label') {\r\n if (!context.hints) {\r\n context.hints = {};\r\n }\r\n\r\n // prevent auto resizing\r\n context.hints.autoResize = false;\r\n }\r\n});\r\n\r\n// disable auto-resize for data stores\r\nthis.preExecute('elements.move', event => {\r\n const { context } = event;\r\n const { shapes } = context;\r\n\r\n const dataStoreReferences = shapes.filter(shape => is(shape, 'bpmn:DataStoreReference'));\r\n\r\n if (dataStoreReferences.length) {\r\n if (!context.hints) {\r\n context.hints = {};\r\n }\r\n\r\n // prevent auto resizing for data store references\r\n context.hints.autoResize = shapes.filter(shape => !is(shape, 'bpmn:DataStoreReference'));\r\n }\r\n});\r\n\r\n// update parent on data store created\r\nthis.postExecute('shape.create', event => {\r\n const { context } = event;\r\n const { shape, shape: { parent } } = context;\r\n\r\n if (is(shape, 'bpmn:DataStoreReference') && shape.type !== 'label' && is(parent, 'bpmn:Collaboration')) {\r\n updateDataStoreParent(shape);\r\n }\r\n});\r\n\r\n// update parent on data store moved\r\nthis.postExecute('shape.move', event => {\r\n const { context } = event;\r\n const { shape, oldParent, shape: { parent } } = context;\r\n\r\n if (is(oldParent, 'bpmn:Collaboration')) {\r\n // do nothing if not necessary\r\n return;\r\n }\r\n\r\n if (is(shape, 'bpmn:DataStoreReference') && shape.type !== 'label' && is(parent, 'bpmn:Collaboration')) {\r\n const participant = is(oldParent, 'bpmn:Participant') ? oldParent : getAncestor(oldParent, 'bpmn:Participant');\r\n updateDataStoreParent(shape, participant);\r\n }\r\n});\r\n\r\n// update data store parents on participant or subprocess deleted\r\nthis.postExecute('shape.delete', event => {\r\n const { context } = event;\r\n const { shape, shape: { parent: rootElement } } = context;\r\n\r\n if (isAny(shape, ['bpmn:Participant', 'bpmn:SubProcess']) && is(rootElement, 'bpmn:Collaboration')) {\r\n getDataStores(rootElement)\r\n .filter(dataStore => isDescendant(dataStore, shape))\r\n .forEach(dataStore => {\r\n updateDataStoreParent(dataStore);\r\n });\r\n }\r\n});\r\n\r\n// update data store parents on collaboration -> process\r\nthis.postExecute('canvas.updateRoot', event => {\r\n const { context } = event;\r\n const { oldRoot, newRoot } = context;\r\n\r\n const dataStores = getDataStores(oldRoot);\r\n\r\n dataStores.forEach(dataStore => {\r\n if (is(newRoot, 'bpmn:Process')) {\r\n updateDataStoreParent(dataStore, newRoot);\r\n }\r\n });\r\n});\r\n}\r\n\r\n\r\nDataStoreAction.$inject = [\r\n 'canvas',\r\n 'commandStack',\r\n 'elementRegistry',\r\n 'eventBus',\r\n];\r\n\r\ninherits(DataStoreAction, CommandInterceptor);\r\n\r\n\r\n// helpers //////////\r\n\r\nfunction isDescendant(descendant, ancestor) {\r\n const getBusinessObject = (element) => element.businessObject || element;\r\n\r\n let descendantBo = getBusinessObject(descendant);\r\n const ancestorBo = getBusinessObject(ancestor);\r\n\r\n while (descendantBo.$parent) {\r\n if (descendantBo.$parent === ancestorBo.processRef || ancestorBo) {\r\n return true;\r\n }\r\n\r\n descendantBo = descendantBo.$parent;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n\r\nfunction getAncestor(element, type) {\r\n while (element.parent) {\r\n if (is(element.parent, type)) {\r\n return element.parent;\r\n }\r\n\r\n element = element.parent;\r\n }\r\n\r\n return null;\r\n}\r\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getBusinessObject,\n is\n} from '../../../base/BaseServices';\n\n\n/**\n * A behavior that unsets the Default property of\n * sequence flow source on element delete, if the\n * removed element is the Gateway or Task's default flow.\n *\n * @param {EventBus} eventBus\n * @param {Modeling} modeling\n */\nexport default function DeleteDefaultFlowAction(eventBus, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n\n this.preExecute('connection.delete', function(event) {\n var context = event.context,\n connection = context.connection,\n source = connection.source;\n\n if (isDefaultFlow(connection, source)) {\n modeling.updateProperties(source, {\n 'default': null\n });\n }\n });\n}\n\ninherits(DeleteDefaultFlowAction, CommandInterceptor);\n\nDeleteDefaultFlowAction.$inject = [\n 'eventBus',\n 'modeling'\n];\n\n\n// helpers //////////////////////\n\nfunction isDefaultFlow(connection, source) {\n\n if (!is(connection, 'bpmn:SequenceFlow')) {\n return false;\n }\n\n var sourceBo = getBusinessObject(source),\n sequenceFlow = getBusinessObject(connection);\n\n return sourceBo.get('default') === sequenceFlow;\n}","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\nimport {\n getChildLanes\n} from '../services/LaneService';\n\nimport {\n eachElement\n} from 'diagram-js/lib/util/Elements';\n\n\nvar LOW_PRIORITY = 500;\n\n\n/**\n * BPMN specific delete lane behavior\n */\nexport default function DeleteLaneAction(eventBus, modeling, spaceTool) {\n\n CommandInterceptor.call(this, eventBus);\n\n\n function compensateLaneDelete(shape, oldParent) {\n\n var siblings = getChildLanes(oldParent);\n\n var topAffected = [];\n var bottomAffected = [];\n\n eachElement(siblings, function(element) {\n\n if (element.y > shape.y) {\n bottomAffected.push(element);\n } else {\n topAffected.push(element);\n }\n\n return element.children;\n });\n\n if (!siblings.length) {\n return;\n }\n\n var offset;\n\n if (bottomAffected.length && topAffected.length) {\n offset = shape.height / 2;\n } else {\n offset = shape.height;\n }\n\n var topAdjustments,\n bottomAdjustments;\n\n if (topAffected.length) {\n topAdjustments = spaceTool.calculateAdjustments(\n topAffected, 'y', offset, shape.y - 10);\n\n spaceTool.makeSpace(\n topAdjustments.movingShapes,\n topAdjustments.resizingShapes,\n { x: 0, y: offset }, 's');\n }\n\n if (bottomAffected.length) {\n bottomAdjustments = spaceTool.calculateAdjustments(\n bottomAffected, 'y', -offset, shape.y + shape.height + 10);\n\n spaceTool.makeSpace(\n bottomAdjustments.movingShapes,\n bottomAdjustments.resizingShapes,\n { x: 0, y: -offset }, 'n');\n }\n }\n\n\n /**\n * Adjust sizes of other lanes after lane deletion\n */\n this.postExecuted('shape.delete', LOW_PRIORITY, function(event) {\n\n var context = event.context,\n hints = context.hints,\n shape = context.shape,\n oldParent = context.oldParent;\n\n // only compensate lane deletes\n if (!is(shape, 'bpmn:Lane')) {\n return;\n }\n\n // compensate root deletes only\n if (hints && hints.nested) {\n return;\n }\n\n compensateLaneDelete(shape, oldParent);\n });\n}\n\nDeleteLaneAction.$inject = [\n 'eventBus',\n 'modeling',\n 'spaceTool'\n];\n\ninherits(DeleteLaneAction, CommandInterceptor);","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getBusinessObject,\n is,\n isLabel\n} from '../../../base/BaseServices';\n\nvar LOW_PRIORITY = 500;\n\n\n/**\n * Replace boundary event with intermediate event when creating or moving results in detached event.\n */\nexport default function DetachEventAction(bpmnReplace, injector) {\n injector.invoke(CommandInterceptor, this);\n\n this._bpmnReplace = bpmnReplace;\n\n var self = this;\n\n this.postExecuted('elements.create', LOW_PRIORITY, function(context) {\n const elements = context.elements;\n \n const shapesToReplace = elements.filter(shape => {\n const host = shape.host;\n return shouldReplace(shape, host);\n });\n \n shapesToReplace.forEach(shape => {\n const index = elements.indexOf(shape);\n context.elements[index] = self.replaceShape(shape);\n });\n }, true);\n \n\n this.preExecute('elements.move', LOW_PRIORITY, function(context) {\n const { shapes, newHost } = context;\n \n shapes.forEach((shape, index) => {\n const host = shape.host;\n \n if (shouldReplace(shape, includes(shapes, host) ? host : newHost)) {\n context.shapes[index] = self.replaceShape(shape);\n }\n });\n }, true); \n}\n\nDetachEventAction.$inject = [\n 'bpmnReplace',\n 'injector'\n];\n\ninherits(DetachEventAction, CommandInterceptor);\n\nDetachEventAction.prototype.replaceShape = function(shape) {\n const eventDefinition = getEventDefinition(shape);\n\n const intermediateEvent = eventDefinition\n ? { type: 'bpmn:IntermediateCatchEvent', eventDefinitionType: eventDefinition.$type }\n : { type: 'bpmn:IntermediateThrowEvent' };\n\n return this._bpmnReplace.replaceElement(shape, intermediateEvent, { layoutConnection: false });\n};\n\n\n// helpers //////////\n\nfunction getEventDefinition(element) {\n const { eventDefinitions } = getBusinessObject(element) || {};\n return eventDefinitions && eventDefinitions[0];\n}\n\nfunction shouldReplace(shape, host) {\n return !isLabel(shape) && isBoundaryEvent(shape) && !host;\n}\n\nfunction isBoundaryEvent(shape) {\n return is(shape, 'bpmn:BoundaryEvent');\n}\n\nfunction includes(array, item) {\n return array.includes(item);\n}","import inherits from 'inherits';\n\nimport {\n assign,\n filter,\n find,\n isNumber\n} from 'min-dash';\n\nimport { getMid } from 'diagram-js/lib/layout/LayoutUtil';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getApproxIntersection\n} from 'diagram-js/lib/util/LineIntersection';\n\n\nexport default function DropOnFlowAction(eventBus, bpmnRules, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n /**\n * Reconnect start / end of a connection after\n * dropping an element on a flow.\n */\n\n function insertShape(shape, targetFlow, positionOrBounds) {\n var waypoints = targetFlow.waypoints,\n waypointsBefore,\n waypointsAfter,\n dockingPoint,\n source,\n target,\n incomingConnection,\n outgoingConnection,\n oldOutgoing = shape.outgoing.slice(),\n oldIncoming = shape.incoming.slice();\n\n var mid;\n\n if (isNumber(positionOrBounds.width)) {\n mid = getMid(positionOrBounds);\n } else {\n mid = positionOrBounds;\n }\n\n var intersection = getApproxIntersection(waypoints, mid);\n\n if (intersection) {\n waypointsBefore = waypoints.slice(0, intersection.index);\n waypointsAfter = waypoints.slice(intersection.index + (intersection.bendpoint ? 1 : 0));\n\n // due to inaccuracy intersection might have been found\n if (!waypointsBefore.length || !waypointsAfter.length) {\n return;\n }\n\n dockingPoint = intersection.bendpoint ? waypoints[intersection.index] : mid;\n\n // if last waypointBefore is inside shape's bounds, ignore docking point\n if (!isPointInsideBBox(shape, waypointsBefore[waypointsBefore.length-1])) {\n waypointsBefore.push(copy(dockingPoint));\n }\n\n // if first waypointAfter is inside shape's bounds, ignore docking point\n if (!isPointInsideBBox(shape, waypointsAfter[0])) {\n waypointsAfter.unshift(copy(dockingPoint));\n }\n }\n\n source = targetFlow.source;\n target = targetFlow.target;\n\n if (bpmnRules.canConnect(source, shape, targetFlow)) {\n\n // reconnect source -> inserted shape\n modeling.reconnectEnd(targetFlow, shape, waypointsBefore || mid);\n\n incomingConnection = targetFlow;\n }\n\n if (bpmnRules.canConnect(shape, target, targetFlow)) {\n\n if (!incomingConnection) {\n\n // reconnect inserted shape -> end\n modeling.reconnectStart(targetFlow, shape, waypointsAfter || mid);\n\n outgoingConnection = targetFlow;\n } else {\n outgoingConnection = modeling.connect(\n shape, target, { type: targetFlow.type, waypoints: waypointsAfter }\n );\n }\n }\n\n var duplicateConnections = [].concat(\n\n incomingConnection && filter(oldIncoming, function(connection) {\n return connection.source === incomingConnection.source;\n }) || [],\n\n outgoingConnection && filter(oldOutgoing, function(connection) {\n return connection.target === outgoingConnection.target;\n }) || []\n );\n\n if (duplicateConnections.length) {\n modeling.removeElements(duplicateConnections);\n }\n }\n\n this.preExecute('elements.move', function(context) {\n\n var newParent = context.newParent,\n shapes = context.shapes,\n delta = context.delta,\n shape = shapes[0];\n\n if (!shape || !newParent) {\n return;\n }\n\n // if the new parent is a connection,\n // change it to the new parent's parent\n if (newParent && newParent.waypoints) {\n context.newParent = newParent = newParent.parent;\n }\n\n var shapeMid = getMid(shape);\n var newShapeMid = {\n x: shapeMid.x + delta.x,\n y: shapeMid.y + delta.y\n };\n\n // find a connection which intersects with the\n // element's mid point\n var connection = find(newParent.children, function(element) {\n var canInsert = bpmnRules.canInsert(shapes, element);\n\n return canInsert && getApproxIntersection(element.waypoints, newShapeMid);\n });\n\n if (connection) {\n context.targetFlow = connection;\n context.position = newShapeMid;\n }\n\n }, true);\n\n this.postExecuted('elements.move', function(context) {\n\n var shapes = context.shapes,\n targetFlow = context.targetFlow,\n position = context.position;\n\n if (targetFlow) {\n insertShape(shapes[0], targetFlow, position);\n }\n\n }, true);\n\n this.preExecute('shape.create', function(context) {\n\n var parent = context.parent,\n shape = context.shape;\n\n if (bpmnRules.canInsert(shape, parent)) {\n context.targetFlow = parent;\n context.parent = parent.parent;\n }\n }, true);\n\n this.postExecuted('shape.create', function(context) {\n\n var shape = context.shape,\n targetFlow = context.targetFlow,\n positionOrBounds = context.position;\n\n if (targetFlow) {\n insertShape(shape, targetFlow, positionOrBounds);\n }\n }, true);\n}\n\ninherits(DropOnFlowAction, CommandInterceptor);\n\nDropOnFlowAction.$inject = [\n 'eventBus',\n 'bpmnRules',\n 'modeling'\n];\n\n\n// helpers /////////////////////\n\nfunction isPointInsideBBox(bbox, point) {\n var x = point.x,\n y = point.y;\n\n return x >= bbox.x &&\n x <= bbox.x + bbox.width &&\n y >= bbox.y &&\n y <= bbox.y + bbox.height;\n}\n\nfunction copy(obj) {\n return assign({}, obj);\n}\n\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getBusinessObject,\n is\n} from '../../../base/BaseServices';\n\nimport {\n computeChildrenBBox\n} from 'diagram-js/lib/features/resize/ResizeUtil';\n\n\nvar LOW_PRIORITY = 500;\n\n\nexport default function ElementCollapseAction(\n eventBus, elementFactory, modeling, resize\n) {\n CommandInterceptor.call(this, eventBus);\n\n function hideEmptyLabels(children) {\n children.forEach(function(child) {\n if (child.type === 'label' && !child.businessObject.name) {\n child.hidden = true;\n }\n });\n }\n\n function expandedBounds(shape, defaultSize) {\n var children = shape.children;\n var newBounds = defaultSize;\n var visibleElements;\n var visibleBBox;\n\n visibleElements = filterVisible(children).concat([shape]);\n\n visibleBBox = computeChildrenBBox(visibleElements);\n\n if (visibleBBox) {\n newBounds.width = Math.max(visibleBBox.width, newBounds.width);\n newBounds.height = Math.max(visibleBBox.height, newBounds.height);\n\n newBounds.x = visibleBBox.x + (visibleBBox.width - newBounds.width) / 2;\n newBounds.y = visibleBBox.y + (visibleBBox.height - newBounds.height) / 2;\n } else {\n newBounds.x = shape.x + (shape.width - newBounds.width) / 2;\n newBounds.y = shape.y + (shape.height - newBounds.height) / 2;\n }\n\n return newBounds;\n }\n\n function collapsedBounds(shape, defaultSize) {\n return {\n x: shape.x + (shape.width - defaultSize.width) / 2,\n y: shape.y + (shape.height - defaultSize.height) / 2,\n width: defaultSize.width,\n height: defaultSize.height\n };\n }\n\n function toggleCollapse(context, collapsed) {\n var shape = context.shape;\n\n if (!is(shape, 'bpmn:SubProcess')) {\n return;\n }\n\n hideEmptyLabels(shape.children);\n getBusinessObject(shape).di.isExpanded = !collapsed;\n }\n\n function resizeShapeAfterToggle(context, defaultSize) {\n var shape = context.shape;\n var newBounds;\n\n if (shape.collapsed) {\n newBounds = collapsedBounds(shape, defaultSize);\n } else {\n newBounds = expandedBounds(shape, defaultSize);\n }\n\n modeling.resizeShape(shape, newBounds, null, {\n autoResize: shape.collapsed ? false : 'nwse'\n });\n }\n\n this.executed([ 'shape.toggleCollapse' ], LOW_PRIORITY, function(e) {\n toggleCollapse(e.context, false);\n });\n\n this.reverted([ 'shape.toggleCollapse' ], LOW_PRIORITY, function(e) {\n toggleCollapse(e.context, true);\n });\n\n this.postExecuted([ 'shape.toggleCollapse' ], LOW_PRIORITY, function(e) {\n var shape = e.context.shape;\n var defaultSize = elementFactory._getDefaultSize(shape);\n\n resizeShapeAfterToggle(e.context, defaultSize);\n });\n}\n\n\ninherits(ElementCollapseAction, CommandInterceptor);\n\nElementCollapseAction.$inject = [\n 'eventBus',\n 'elementFactory',\n 'modeling'\n];\n\n\n// helpers //////////////////////\n\nfunction filterVisible(elements) {\n return elements.filter(e => !e.hidden);\n}\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\nexport default function EventBasedGatewayAction(eventBus, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n /**\n * Remove existing sequence flows of event-based target before connecting\n * from event-based gateway.\n */\n this.preExecuted('connection.create', function(event) {\n var context = event.context,\n source = context.source,\n target = context.target,\n existingIncomingConnections = target.incoming.slice();\n \n if (context.hints && context.hints.createElementsBehavior === false) {\n return;\n }\n \n if (isEventBasedGatewayConnectedToSequenceFlow(source, target)) {\n removeExistingIncomingSequenceFlows(target, existingIncomingConnections);\n }\n });\n \n function isEventBasedGatewayConnectedToSequenceFlow(source, target) {\n return is(source, 'bpmn:EventBasedGateway') && target.incoming.length > 0;\n }\n \n function removeExistingIncomingSequenceFlows(target, incomingConnections) {\n incomingConnections\n .filter(isSequenceFlow)\n .forEach(function(sequenceFlow) {\n modeling.removeConnection(sequenceFlow);\n });\n }\n \n\n /**\n * After replacing shape with event-based gateway, remove incoming sequence\n * flows of event-based targets which do not belong to event-based gateway\n * source.\n */\n this.preExecuted('shape.replace', function(event) {\n var newShape = event.context.newShape;\n \n if (!isEventBasedGateway(newShape)) {\n return;\n }\n \n var newShapeTargetsIncomingSequenceFlows = getNewShapeTargetsIncomingSequenceFlows(newShape);\n \n removeNonGatewaySourceConnections(newShapeTargetsIncomingSequenceFlows, newShape);\n });\n \n function isEventBasedGateway(shape) {\n return is(shape, 'bpmn:EventBasedGateway');\n }\n \n function getNewShapeTargetsIncomingSequenceFlows(newShape) {\n var newShapeTargets = newShape.outgoing.filter(isSequenceFlow)\n .map(function(sequenceFlow) {\n return sequenceFlow.target;\n });\n \n return newShapeTargets.reduce(function(sequenceFlows, target) {\n var incomingSequenceFlows = target.incoming.filter(isSequenceFlow);\n return sequenceFlows.concat(incomingSequenceFlows);\n }, []);\n }\n \n function removeNonGatewaySourceConnections(sequenceFlows, newShape) {\n sequenceFlows.forEach(function(sequenceFlow) {\n if (sequenceFlow.source !== newShape) {\n modeling.removeConnection(sequenceFlow);\n }\n });\n }\n \n}\n\nEventBasedGatewayAction.$inject = [\n 'eventBus',\n 'modeling'\n];\n\ninherits(EventBasedGatewayAction, CommandInterceptor);\n\n\n\n// helpers //////////////////////\n\nfunction isSequenceFlow(connection) {\n return is(connection, 'bpmn:SequenceFlow');\n}","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n add as collectionAdd,\n remove as collectionRemove\n} from 'diagram-js/lib/util/Collections';\n\nimport {\n getBusinessObject,\n is\n} from '../../../base/BaseServices';\n\nimport {\n createCategoryValue\n} from './services/CategoryService';\n\nvar HIGH_PRIORITY = 2000;\n\n\n/**\n * BPMN specific Group behavior\n */\nexport default function GroupAction(\n bpmnFactory,\n canvas,\n elementRegistry,\n eventBus,\n injector,\n moddleCopy\n) {\n injector.invoke(CommandInterceptor, this);\n\n /**\n * Gets process definitions\n *\n * @return {ModdleElement} definitions\n */\n function getDefinitions() {\n var rootElement = canvas.getRootElement();\n var businessObject = getBusinessObject(rootElement);\n \n return businessObject.$parent;\n }\n\n\n /**\n * Removes a referenced category value for a given group shape\n *\n * @param {djs.model.Shape} shape\n */\n function removeReferencedCategoryValue(shape) {\n var businessObject = getBusinessObject(shape);\n var categoryValue = businessObject.categoryValueRef;\n\n if (!categoryValue) {\n return;\n }\n\n var category = categoryValue.$parent;\n\n if (category) {\n collectionRemove(category.categoryValue, categoryValue);\n\n // cleanup category if it is empty\n if (!category.categoryValue.length) {\n removeCategory(category);\n }\n }\n }\n\n\n /**\n * Removes a given category from the definitions\n *\n * @param {ModdleElement} category\n */\n function removeCategory(category) {\n var definitions = getDefinitions();\n \n if (definitions) {\n collectionRemove(definitions.get('rootElements'), category);\n }\n }\n \n\n /**\n * Returns all group element in the current registry\n *\n * @return {Array} a list of group shapes\n */\n function getGroupElements() {\n return elementRegistry.filter(element => is(element, 'bpmn:Group'));\n }\n \n\n /**\n * Returns true if given categoryValue is referenced in one of the given elements\n *\n * @param {Array} elements\n * @param {ModdleElement} categoryValue\n * @return {boolean}\n */\n function isReferenced(elements, categoryValue) {\n return elements.some(element => {\n const businessObject = getBusinessObject(element);\n return businessObject.categoryValueRef === categoryValue;\n });\n }\n \n\n /**\n * remove referenced category + value when group was deleted\n */\n this.executed('shape.delete', function(event) {\n var context = event.context,\n shape = context.shape;\n \n if (is(shape, 'bpmn:Group')) {\n var businessObject = getBusinessObject(shape),\n categoryValueRef = businessObject.categoryValueRef,\n groupElements = getGroupElements();\n \n if (!isReferenced(groupElements, categoryValueRef)) {\n removeReferencedCategoryValue(shape);\n }\n }\n });\n \n\n /**\n * re-attach removed category\n */\n this.reverted('shape.delete', function(event) {\n var context = event.context,\n shape = context.shape;\n \n if (is(shape, 'bpmn:Group')) {\n var businessObject = getBusinessObject(shape),\n categoryValueRef = businessObject.categoryValueRef,\n category = categoryValueRef ? categoryValueRef.$parent : null,\n definitions = getDefinitions();\n \n if (category && categoryValueRef) {\n collectionAdd(category.categoryValue, categoryValueRef);\n }\n \n if (category && !category.categoryValue.length) {\n collectionRemove(definitions.get('rootElements'), category);\n }\n }\n });\n \n\n /**\n * create new category + value when group was created\n */\n this.execute('shape.create', function(event) {\n var context = event.context,\n shape = context.shape,\n businessObject = getBusinessObject(shape);\n \n if (isGroupWithoutCategoryValue(businessObject)) {\n var definitions = getDefinitions(),\n categoryValue = createCategoryValue(definitions, bpmnFactory);\n \n linkCategoryValueToGroup(businessObject, categoryValue);\n }\n });\n \n function isGroupWithoutCategoryValue(businessObject) {\n return is(businessObject, 'bpmn:Group') && !businessObject.categoryValueRef;\n }\n \n function linkCategoryValueToGroup(group, categoryValue) {\n if (group && categoryValue) {\n group.categoryValueRef = categoryValue;\n }\n } \n\n\n this.revert('shape.create', function(event) {\n var context = event.context,\n shape = context.shape;\n \n if (isGroup(shape)) {\n removeReferencedCategoryValue(shape);\n deleteCategoryValueReference(shape);\n }\n });\n \n function isGroup(shape) {\n return is(shape, 'bpmn:Group');\n }\n \n function deleteCategoryValueReference(shape) {\n var businessObject = getBusinessObject(shape);\n if (businessObject) {\n delete businessObject.categoryValueRef;\n }\n }\n \n\n // copy bpmn:CategoryValue when copying element\n eventBus.on('moddleCopy.canCopyProperty', HIGH_PRIORITY, function(context) {\n var property = context.property;\n \n if (isCategoryValue(property)) {\n var categoryValue = createCategoryValue(getDefinitions(), bpmnFactory);\n return moddleCopy.copyElement(property, categoryValue);\n }\n });\n \n function isCategoryValue(element) {\n return is(element, 'bpmn:CategoryValue');\n } \n\n}\n\nGroupAction.$inject = [\n 'bpmnFactory',\n 'canvas',\n 'elementRegistry',\n 'eventBus',\n 'injector',\n 'moddleCopy'\n];\n\ninherits(GroupAction, CommandInterceptor);","/**\n * Returns the intersection between two line segments a and b.\n *\n * @param {Point} l1s\n * @param {Point} l1e\n * @param {Point} l2s\n * @param {Point} l2e\n *\n * @return {Point}\n */\nexport default function lineIntersect(l1s, l1e, l2s, l2e) {\n const denominator = (l2e.y - l2s.y) * (l1e.x - l1s.x) - (l2e.x - l2s.x) * (l1e.y - l1s.y);\n\n if (denominator === 0) {\n return null;\n }\n\n const a = l1s.y - l2s.y;\n const b = l1s.x - l2s.x;\n const numerator = (l2e.x - l2s.x) * a - (l2e.y - l2s.y) * b;\n const c = numerator / denominator;\n\n // If we cast these lines infinitely in both directions, they intersect here\n return {\n x: Math.round(l1s.x + c * (l1e.x - l1s.x)),\n y: Math.round(l1s.y + c * (l1e.y - l1s.y))\n };\n}\n","import {\n getMid\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport lineIntersect from './services/LineIntersectService';\n\n\n/**\n * Fix broken dockings after DI imports.\n *\n * @param {EventBus} eventBus\n */\nexport default function ImportDockingFix(eventBus) {\n\n function adjustDocking(startPoint, nextPoint, elementMid) {\n var elementTop = { x: elementMid.x, y: elementMid.y - 50 };\n var elementLeft = { x: elementMid.x - 50, y: elementMid.y };\n \n var verticalIntersect = lineIntersect(startPoint, nextPoint, elementMid, elementTop);\n var horizontalIntersect = lineIntersect(startPoint, nextPoint, elementMid, elementLeft);\n \n var centerIntersect = getCenterIntersect(verticalIntersect, horizontalIntersect, elementMid);\n \n startPoint.original = centerIntersect;\n }\n \n function getCenterIntersect(verticalIntersect, horizontalIntersect, elementMid) {\n if (verticalIntersect && horizontalIntersect) {\n return getDistance(verticalIntersect, elementMid) > getDistance(horizontalIntersect, elementMid)\n ? horizontalIntersect\n : verticalIntersect;\n } else {\n return verticalIntersect || horizontalIntersect;\n }\n }\n \n\n function fixDockings(connection) {\n var sourceMid = getMid(connection.source);\n var targetMid = getMid(connection.target);\n var waypoints = connection.waypoints;\n \n adjustDocking(waypoints[0], waypoints[1], sourceMid);\n adjustDocking(waypoints[waypoints.length - 1], waypoints[waypoints.length - 2], targetMid);\n }\n \n\n eventBus.on('bpmnElement.added', function(event) {\n var element = event.element;\n \n if (element.waypoints) {\n fixDockings(element);\n }\n }); \n}\n\nImportDockingFix.$inject = [\n 'eventBus'\n];\n\n\n// helpers //////////////////////\n\nfunction getDistance(point1, point2) {\n return Math.sqrt(Math.pow(point1.x - point2.x, 2) + Math.pow(point1.y - point2.y, 2));\n}\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getBusinessObject\n} from '../../../base/BaseServices';\n\nimport {\n isAny\n} from '../services/ModelingService';\n\n/**\n * A component that makes sure that each created or updated\n * Pool and Lane is assigned an isHorizontal property set to true.\n *\n * @param {EventBus} eventBus\n */\nexport default function IsHorizontalFix(eventBus) {\n\n CommandInterceptor.call(this, eventBus);\n\n var elementTypesToUpdate = [\n 'bpmn:Participant',\n 'bpmn:Lane'\n ];\n\n this.executed([ 'shape.move', 'shape.create', 'shape.resize' ], function(event) {\n var businessObject = getBusinessObject(event.context.shape);\n\n if (isElementTypeToUpdate(businessObject) && !businessObject.di.get('isHorizontal')) {\n // Set attribute directly to avoid modeling#updateProperty side effects\n businessObject.di.set('isHorizontal', true);\n }\n });\n\n function isElementTypeToUpdate(businessObject) {\n return isAny(businessObject, elementTypesToUpdate);\n }\n\n}\n\nIsHorizontalFix.$inject = [ 'eventBus' ];\n\ninherits(IsHorizontalFix, CommandInterceptor);\n","/**\n * Returns the length of a vector\n *\n * @param {Vector}\n * @return {Float}\n */\nexport function vectorLength(v) {\n const { x, y } = v;\n return Math.sqrt(x ** 2 + y ** 2);\n}\n\n\n/**\n * Calculates the angle between a line a the yAxis\n *\n * @param {Array}\n * @return {Float}\n */\nexport function getAngle(line) {\n const deltaY = line[1].y - line[0].y;\n const deltaX = line[1].x - line[0].x;\n\n // Ensure non-zero denominator to avoid division by zero\n const angle = deltaX !== 0 ? Math.atan(deltaY / deltaX) : Math.PI / 2;\n\n return angle;\n}\n\n\n/**\n * Rotates a vector by a given angle\n *\n * @param {Vector}\n * @param {Float} Angle in radians\n * @return {Vector}\n */\nexport function rotateVector(vector, angle) {\n if (!angle) {\n return vector;\n }\n\n const { x, y } = vector;\n const rotatedX = Math.cos(angle) * x - Math.sin(angle) * y;\n const rotatedY = Math.sin(angle) * x + Math.cos(angle) * y;\n\n return { x: rotatedX, y: rotatedY };\n}\n\n\n/**\n * Solves a 2D equation system\n * a + r*b = c, where a,b,c are 2D vectors\n *\n * @param {Vector}\n * @param {Vector}\n * @param {Vector}\n * @return {Float}\n */\nfunction solveLambdaSystem(a, b, c) {\n const system = [\n { n: a[0] - c[0], lambda: b[0] },\n { n: a[1] - c[1], lambda: b[1] }\n ];\n\n const n = system.reduce((sum, term) => sum + term.n * term.lambda, 0);\n const l = system.reduce((sum, term) => sum + term.lambda * term.lambda, 0);\n\n return l !== 0 ? -n / l : undefined;\n}\n\n\n/**\n * Position of perpendicular foot\n *\n * @param {Point}\n * @param [ {Point}, {Point} ] line defined through two points\n * @return {Point} the perpendicular foot position\n */\nexport function perpendicularFoot(point, line) {\n const [a, b] = line;\n\n // relative position of b from a\n const bd = { x: b.x - a.x, y: b.y - a.y };\n\n // solve equation system to the parametrized vectors param real value\n const r = solveLambdaSystem([a.x, a.y], [bd.x, bd.y], [point.x, point.y]);\n\n const result = {\n x: a.x + r * bd.x,\n y: a.y + r * bd.y,\n };\n\n return result;\n}\n\n\n/**\n * Calculates the distance between a point and a line\n *\n * @param {Point}\n * @param [ {Point}, {Point} ] line defined through two points\n * @return {Float} distance\n */\nexport function getDistancePointLine(point, line) {\n const pfPoint = perpendicularFoot(point, line);\n\n // distance vector\n const connectionVector = {\n x: pfPoint.x - point.x,\n y: pfPoint.y - point.y\n };\n\n return vectorLength(connectionVector);\n}\n\n\n/**\n * Calculates the distance between two points\n *\n * @param {Point}\n * @param {Point}\n * @return {Float} distance\n */\nexport function getDistancePointPoint(point1, point2) {\n const vector = {\n x: point1.x - point2.x,\n y: point1.y - point2.y\n };\n\n return vectorLength(vector);\n}","/**\n * Get distance between two points.\n *\n * @param {Point} p1\n * @param {Point} p2\n *\n * @return {number}\n */\nfunction getDistance(p1, p2) {\n const deltaX = p1.x - p2.x;\n const deltaY = p1.y - p2.y;\n\n return Math.sqrt(deltaX ** 2 + deltaY ** 2);\n}\n\n\n/**\n * Return the attachment of the given point on the specified line.\n *\n * The attachment is either a bendpoint (attached to the given point)\n * or segment (attached to a location on a line segment) attachment:\n *\n * ```javascript\n * var pointAttachment = {\n * type: 'bendpoint',\n * bendpointIndex: 3,\n * position: { x: 10, y: 10 } // the attach point on the line\n * };\n *\n * var segmentAttachment = {\n * type: 'segment',\n * segmentIndex: 2,\n * relativeLocation: 0.31, // attach point location between 0 (at start) and 1 (at end)\n * position: { x: 10, y: 10 } // the attach point on the line\n * };\n * ```\n *\n * @param {Point} point\n * @param {Array} line\n *\n * @return {Object} attachment\n */\nexport function getAttachment(point, line) {\n let closestAttachment = null;\n let closestAttachmentDistance = Infinity;\n\n for (let idx = 0; idx < line.length - 1; idx++) {\n const segmentStart = line[idx];\n const segmentEnd = line[idx + 1];\n\n let intersections;\n\n if (pointsEqual(segmentStart, segmentEnd)) {\n intersections = [segmentStart];\n } else {\n const segmentStartDistance = getDistance(point, segmentStart);\n const segmentEndDistance = getDistance(point, segmentEnd);\n const minDistance = Math.min(segmentStartDistance, segmentEndDistance);\n\n intersections = getCircleSegmentIntersections(segmentStart, segmentEnd, point, minDistance);\n }\n\n if (intersections.length < 1 || intersections.length > 2) {\n throw new Error('expected between [1, 2] circle -> line intersections');\n }\n\n let attachment;\n\n if (intersections.length === 1) {\n attachment = {\n type: 'bendpoint',\n position: intersections[0],\n segmentIndex: idx,\n bendpointIndex: pointsEqual(segmentStart, intersections[0]) ? idx : idx + 1,\n };\n }\n\n if (intersections.length === 2) {\n const attachmentPosition = mid(intersections[0], intersections[1]);\n\n attachment = {\n type: 'segment',\n position: attachmentPosition,\n segmentIndex: idx,\n relativeLocation: getDistance(segmentStart, attachmentPosition) / getDistance(segmentStart, segmentEnd),\n };\n }\n\n const attachmentDistance = getDistance(attachment.position, point);\n\n if (!closestAttachment || closestAttachmentDistance > attachmentDistance) {\n closestAttachment = attachment;\n closestAttachmentDistance = attachmentDistance;\n }\n }\n\n return closestAttachment;\n}\n\n\n/**\n * Gets the intersection between a circle and a line segment.\n *\n * @param {Point} s1 segment start\n * @param {Point} s2 segment end\n * @param {Point} cc circle center\n * @param {number} cr circle radius\n *\n * @return {Array} intersections\n */\nfunction getCircleSegmentIntersections(s1, s2, cc, cr) {\n const baX = s2.x - s1.x;\n const baY = s2.y - s1.y;\n const caX = cc.x - s1.x;\n const caY = cc.y - s1.y;\n\n const a = baX * baX + baY * baY;\n const bBy2 = baX * caX + baY * caY;\n const c = caX * caX + caY * caY - cr * cr;\n\n const pBy2 = bBy2 / a;\n const q = c / a;\n\n let disc = pBy2 * pBy2 - q;\n\n // check against negative value to work around\n // negative, very close to zero results (-4e-15)\n // being produced in some environments\n if (disc < 0 && disc > -0.000001) {\n disc = 0;\n }\n\n if (disc < 0) {\n return [];\n }\n\n // if disc == 0 ... dealt with later\n const tmpSqrt = Math.sqrt(disc);\n const abScalingFactor1 = -pBy2 + tmpSqrt;\n const abScalingFactor2 = -pBy2 - tmpSqrt;\n\n const i1 = {\n x: s1.x - baX * abScalingFactor1,\n y: s1.y - baY * abScalingFactor1\n };\n\n if (disc === 0) { // abScalingFactor1 == abScalingFactor2\n return [i1];\n }\n\n const i2 = {\n x: s1.x - baX * abScalingFactor2,\n y: s1.y - baY * abScalingFactor2\n };\n\n // return only points on the line segment\n return [i1, i2].filter(p => isPointInSegment(p, s1, s2));\n}\n\n\nfunction isPointInSegment(p, segmentStart, segmentEnd) {\n const isXInSegment = fenced(p.x, segmentStart.x, segmentEnd.x);\n const isYInSegment = fenced(p.y, segmentStart.y, segmentEnd.y);\n\n return isXInSegment && isYInSegment;\n}\n\n\nfunction fenced(n, rangeStart, rangeEnd) {\n const minRange = Math.min(rangeStart, rangeEnd);\n const maxRange = Math.max(rangeStart, rangeEnd);\n\n // Use a matching threshold to work around\n // precision errors in intersection computation\n return n >= minRange - EQUAL_THRESHOLD && n <= maxRange + EQUAL_THRESHOLD;\n}\n\n\n/**\n * Calculate mid of two points.\n *\n * @param {Point} p1\n * @param {Point} p2\n *\n * @return {Point}\n */\nfunction mid(p1, p2) {\n\n return {\n x: (p1.x + p2.x) / 2,\n y: (p1.y + p2.y) / 2\n };\n}\n\nvar EQUAL_THRESHOLD = 0.1;\n\nfunction pointsEqual(p1, p2) {\n return (\n Math.abs(p1.x - p2.x) <= EQUAL_THRESHOLD &&\n Math.abs(p1.y - p2.y) <= EQUAL_THRESHOLD\n );\n}\n","import {\n getDistancePointPoint,\n rotateVector,\n getAngle\n} from './GeometricService';\n\nimport {\n getAttachment\n} from './LineAttachmentService';\n\nimport {\n roundPoint\n} from 'diagram-js/lib/layout/LayoutUtil';\n\n\nexport function findNewLabelLineStartIndex(oldWaypoints, newWaypoints, attachment, hints) {\n const { segmentIndex } = attachment;\n const offset = newWaypoints.length - oldWaypoints.length;\n\n // segmentMove happened\n if (hints.segmentMove) {\n const { segmentStartIndex, newSegmentStartIndex } = hints.segmentMove;\n\n // if label was on moved segment return new segment index\n if (segmentIndex === segmentStartIndex) {\n return newSegmentStartIndex;\n }\n\n // label is after new segment index\n if (segmentIndex >= newSegmentStartIndex) {\n return (segmentIndex + offset < newSegmentStartIndex) ? newSegmentStartIndex : segmentIndex + offset;\n }\n\n // if label is before new segment index\n return segmentIndex;\n }\n\n // bendpointMove happened\n if (hints.bendpointMove) {\n const { insert, bendpointIndex } = hints.bendpointMove;\n\n // waypoints length didn't change\n if (offset === 0) {\n return segmentIndex;\n }\n\n let newIndex;\n\n // label behind new/removed bendpoint\n if (segmentIndex >= bendpointIndex) {\n newIndex = insert ? segmentIndex + 1 : segmentIndex - 1;\n }\n\n // label before new/removed bendpoint\n if (segmentIndex < bendpointIndex) {\n newIndex = segmentIndex;\n\n // decide label should take right or left segment\n if (insert && attachment.type !== 'bendpoint' && bendpointIndex - 1 === segmentIndex) {\n const rel = relativePositionMidWaypoint(newWaypoints, bendpointIndex);\n\n if (rel < attachment.relativeLocation) {\n newIndex++;\n }\n }\n }\n\n return newIndex;\n }\n\n // start/end changed\n if (offset === 0) {\n return segmentIndex;\n }\n\n // connectionStart\n if (hints.connectionStart) {\n return (segmentIndex === 0) ? 0 : null;\n }\n\n // connectionEnd\n if (hints.connectionEnd) {\n return (segmentIndex === oldWaypoints.length - 2) ? newWaypoints.length - 2 : null;\n }\n\n // if nothing fits, return null\n return null;\n}\n\n\n/**\n * Calculate the required adjustment (move delta) for the given label\n * after the connection waypoints got updated.\n *\n * @param {djs.model.Label} label\n * @param {Array} newWaypoints\n * @param {Array} oldWaypoints\n * @param {Object} hints\n *\n * @return {Point} delta\n */\nexport function getLabelAdjustment(label, newWaypoints, oldWaypoints, hints) {\n let x = 0;\n let y = 0;\n\n const labelPosition = getLabelMid(label);\n\n // get closest attachment\n const attachment = getAttachment(labelPosition, oldWaypoints);\n const oldLabelLineIndex = attachment.segmentIndex;\n const newLabelLineIndex = findNewLabelLineStartIndex(oldWaypoints, newWaypoints, attachment, hints);\n\n if (newLabelLineIndex === null || newLabelLineIndex < 0 || newLabelLineIndex > newWaypoints.length - 2) {\n return { x, y };\n }\n\n const oldLabelLine = getLine(oldWaypoints, oldLabelLineIndex);\n const newLabelLine = getLine(newWaypoints, newLabelLineIndex);\n const oldFoot = attachment.position;\n\n let relativeFootPosition = getRelativeFootPosition(oldLabelLine, oldFoot);\n const angleDelta = getAngleDelta(oldLabelLine, newLabelLine);\n\n // special rule if label on bendpoint\n if (attachment.type === 'bendpoint') {\n const offset = newWaypoints.length - oldWaypoints.length;\n const oldBendpointIndex = attachment.bendpointIndex;\n const oldBendpoint = oldWaypoints[oldBendpointIndex];\n\n // bendpoint position hasn't changed, return same position\n if (newWaypoints.includes(oldBendpoint)) {\n return { x, y };\n }\n\n // new bendpoint and old bendpoint have the same index, then just return the offset\n if (offset === 0) {\n const newBendpoint = newWaypoints[oldBendpointIndex];\n\n return {\n x: newBendpoint.x - attachment.position.x,\n y: newBendpoint.y - attachment.position.y,\n };\n }\n\n // if bendpoints get removed\n if (offset < 0 && oldBendpointIndex !== 0 && oldBendpointIndex < oldWaypoints.length - 1) {\n relativeFootPosition = relativePositionMidWaypoint(oldWaypoints, oldBendpointIndex);\n }\n }\n\n const newFoot = {\n x: (newLabelLine[1].x - newLabelLine[0].x) * relativeFootPosition + newLabelLine[0].x,\n y: (newLabelLine[1].y - newLabelLine[0].y) * relativeFootPosition + newLabelLine[0].y,\n };\n\n // the rotated vector to label\n const newLabelVector = rotateVector({\n x: labelPosition.x - oldFoot.x,\n y: labelPosition.y - oldFoot.y,\n }, angleDelta);\n\n // the new relative position\n x = newFoot.x + newLabelVector.x - labelPosition.x;\n y = newFoot.y + newLabelVector.y - labelPosition.y;\n\n return roundPoint({ x, y });\n}\n\n\n// HELPERS //////////////////////\n\nfunction relativePositionMidWaypoint(waypoints, idx) {\n const distanceSegment1 = getDistancePointPoint(waypoints[idx - 1], waypoints[idx]);\n const distanceSegment2 = getDistancePointPoint(waypoints[idx], waypoints[idx + 1]);\n\n const relativePosition = distanceSegment1 / (distanceSegment1 + distanceSegment2);\n\n return relativePosition;\n}\n\n\nfunction getLabelMid(label) {\n const { x, y, width, height } = label;\n\n return {\n x: x + width / 2,\n y: y + height / 2\n };\n}\n\n\nfunction getAngleDelta(l1, l2) {\n const a1 = getAngle(l1);\n const a2 = getAngle(l2);\n\n return a2 - a1;\n}\n\n\nfunction getLine(waypoints, idx) {\n return [waypoints[idx], waypoints[idx + 1]];\n}\n\n\nfunction getRelativeFootPosition(line, foot) {\n const length = getDistancePointPoint(line[0], line[1]);\n const lengthToFoot = getDistancePointPoint(line[0], foot);\n\n return length === 0 ? 0 : lengthToFoot / length;\n}\n","import {\n assign\n} from 'min-dash';\n\nimport inherits from 'inherits';\n\nimport {\n is,\n getBusinessObject,\n isLabelExternal,\n getExternalLabelMid,\n hasExternalLabel,\n isLabel\n} from '../../../base/BaseServices';\n\nimport {\n getLabel\n} from '../../labelElements/LabelService';\n\nimport {\n getLabelAdjustment\n} from './services/LabelLayoutService';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n getNewAttachPoint\n} from 'diagram-js/lib/util/AttachUtil';\n\nimport {\n getMid,\n roundPoint\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n delta\n} from 'diagram-js/lib/util/PositionUtil';\n\nimport {\n sortBy\n} from 'min-dash';\n\nimport {\n getDistancePointLine,\n perpendicularFoot\n} from './services/GeometricService';\n\nvar DEFAULT_LABEL_DIMENSIONS = {\n width: 90,\n height: 20\n};\n\nvar NAME_PROPERTY = 'name';\nvar TEXT_PROPERTY = 'text';\n\n/**\n * A component that makes sure that external labels are added\n * together with respective elements and properly updated (DI wise)\n * during move.\n *\n * @param {EventBus} eventBus\n * @param {Modeling} modeling\n * @param {BpmnFactory} bpmnFactory\n * @param {TextRenderer} textRenderer\n */\nexport default function LabelAction(\n eventBus, modeling, bpmnFactory,\n textRenderer) {\n\n CommandInterceptor.call(this, eventBus);\n\n // update label if name property was updated\n this.postExecute('element.updateProperties', function(event) {\n var context = event.context,\n element = context.element,\n properties = context.properties;\n\n updateLabelIfNeeded(element, properties);\n\n if (TEXT_PROPERTY in properties && is(element, 'bpmn:TextAnnotation')) {\n var newBounds = calculateTextAnnotationBounds(element, properties[TEXT_PROPERTY] || '');\n updateLabel(element, properties.text, newBounds);\n }\n });\n\n function updateLabelIfNeeded(element, properties) {\n if (NAME_PROPERTY in properties) {\n modeling.updateLabel(element, properties[NAME_PROPERTY]);\n }\n }\n\n function calculateTextAnnotationBounds(element, newText) {\n return textRenderer.getTextAnnotationBounds(\n {\n x: element.x,\n y: element.y,\n width: element.width,\n height: element.height\n },\n newText\n );\n }\n\n function updateLabel(element, text, bounds) {\n modeling.updateLabel(element, text, bounds);\n }\n\n\n // create label shape after shape/connection was created\n this.postExecute(['shape.create', 'connection.create'], function(event) {\n var context = event.context,\n hints = context.hints || {};\n\n if (hints.createElementsBehavior === false) {\n return;\n }\n\n var element = context.shape || context.connection;\n\n if (shouldSkipLabelCreation(element)) {\n return;\n }\n\n var businessObject = element.businessObject,\n labelCenter = getExternalLabelMid(element),\n labelDimensions = calculateLabelDimensions(element);\n\n modeling.createLabel(element, labelCenter, {\n id: businessObject.id + '_label',\n businessObject: businessObject,\n width: labelDimensions.width,\n height: labelDimensions.height\n });\n });\n\n function shouldSkipLabelCreation(element) {\n return isLabel(element) || !isLabelExternal(element) || !getLabel(element);\n }\n\n function calculateLabelDimensions(element) {\n return textRenderer.getExternalLabelBounds(\n DEFAULT_LABEL_DIMENSIONS,\n getLabel(element)\n );\n }\n\n\n // update label after label shape was deleted\n this.postExecute('shape.delete', function(event) {\n var context = event.context,\n labelTarget = context.labelTarget,\n hints = context.hints || {};\n\n if (shouldRemoveLabel(labelTarget, hints)) {\n modeling.updateLabel(labelTarget, null, null, { removeShape: false });\n }\n });\n\n function shouldRemoveLabel(labelTarget, hints) {\n return labelTarget && hints.unsetLabel !== false;\n }\n\n\n // update di information on label creation\n this.postExecute(['label.create'], function(event) {\n var context = event.context,\n element = context.shape;\n\n // Check if it's a real label and a BPMN element\n if (isValidLabel(element)) {\n updateBusinessObjectLabel(element);\n }\n });\n\n function isValidLabel(element) {\n return element.labelTarget && is(element.labelTarget || element, 'bpmn:BaseElement');\n }\n\n function updateBusinessObjectLabel(element) {\n var businessObject = element.businessObject,\n di = businessObject.di;\n\n if (!di.label) {\n di.label = createBPMNLabel();\n }\n\n updateLabelBounds(di.label.bounds, element);\n }\n\n function createBPMNLabel() {\n return bpmnFactory.create('bpmndi:BPMNLabel', {\n bounds: bpmnFactory.create('dc:Bounds')\n });\n }\n\n function updateLabelBounds(labelBounds, element) {\n assign(labelBounds, {\n x: element.x,\n y: element.y,\n width: element.width,\n height: element.height\n });\n }\n\n\n function getVisibleLabelAdjustment(event) {\n var context = event.context,\n connection = context.connection,\n label = connection.label,\n hints = assign({}, context.hints),\n newWaypoints = context.newWaypoints || connection.waypoints,\n oldWaypoints = context.oldWaypoints;\n\n adjustHints(hints);\n\n return getLabelAdjustment(label, newWaypoints, oldWaypoints, hints);\n }\n\n function adjustHints(hints) {\n if (typeof hints.startChanged === 'undefined') {\n hints.startChanged = !!hints.connectionStart;\n }\n\n if (typeof hints.endChanged === 'undefined') {\n hints.endChanged = !!hints.connectionEnd;\n }\n }\n\n\n this.postExecute(['connection.layout', 'connection.updateWaypoints'], function (event) {\n var context = event.context,\n hints = context.hints || {};\n\n if (shouldSkipLabelBehavior(hints)) {\n return;\n }\n\n var connection = context.connection,\n label = connection.label;\n\n if (!label || !label.parent) {\n return;\n }\n\n var labelAdjustment = getVisibleLabelAdjustment(event);\n\n modeling.moveShape(label, labelAdjustment);\n });\n\n function shouldSkipLabelBehavior(hints) {\n return hints.labelBehavior === false;\n }\n\n\n // keep label position on shape replace\n this.postExecute(['shape.replace'], function (event) {\n var context = event.context,\n newShape = context.newShape,\n oldShape = context.oldShape;\n\n var businessObject = getBusinessObject(newShape);\n\n if (shouldAdjustLabelPosition(businessObject, oldShape.label, newShape.label)) {\n adjustLabelPosition(newShape.label, oldShape.label);\n }\n });\n\n function shouldAdjustLabelPosition(businessObject, oldLabel, newLabel) {\n return businessObject && isLabelExternal(businessObject) && oldLabel && newLabel;\n }\n\n function adjustLabelPosition(newLabel, oldLabel) {\n newLabel.x = oldLabel.x;\n newLabel.y = oldLabel.y;\n }\n\n\n // move external label after resizing\n this.postExecute('shape.resize', function (event) {\n var context = event.context,\n shape = context.shape,\n newBounds = context.newBounds,\n oldBounds = context.oldBounds;\n\n if (hasExternalLabel(shape)) {\n adjustExternalLabel(shape.label, oldBounds, newBounds);\n }\n });\n\n function adjustExternalLabel(label, oldBounds, newBounds) {\n var labelMid = getMid(label),\n edges = asEdges(oldBounds);\n\n // get nearest border point to label as reference point\n var referencePoint = getReferencePoint(labelMid, edges);\n\n var delta = getReferencePointDelta(referencePoint, oldBounds, newBounds);\n\n modeling.moveShape(label, delta);\n }\n\n}\n\ninherits(LabelAction, CommandInterceptor);\n\nLabelAction.$inject = [\n 'eventBus',\n 'modeling',\n 'bpmnFactory',\n 'textRenderer'\n];\n\n// helpers //////////////////////\n\n/**\n * Calculates a reference point delta relative to a new position\n * of a certain element's bounds\n *\n * @param {Point} point\n * @param {Bounds} oldBounds\n * @param {Bounds} newBounds\n *\n * @return {Delta} delta\n */\nexport function getReferencePointDelta(referencePoint, oldBounds, newBounds) {\n var newReferencePoint = calculateNewAttachPoint(referencePoint, oldBounds, newBounds);\n return roundPoint(delta(newReferencePoint, referencePoint));\n}\n\nfunction calculateNewAttachPoint(referencePoint, oldBounds, newBounds) {\n return getNewAttachPoint(referencePoint, oldBounds, newBounds);\n}\n\n\n/**\n * Generates the nearest point (reference point) for a given point\n * onto given set of lines\n *\n * @param {Array} lines\n * @param {Point} point\n *\n * @param {Point}\n */\nexport function getReferencePoint(point, lines) {\n if (!lines.length) {\n return;\n }\n\n var nearestLine = findNearestLine(point, lines);\n\n return calculatePerpendicularFoot(point, nearestLine);\n}\n\nfunction findNearestLine(point, lines) {\n return getNearestLine(point, lines);\n}\n\nfunction calculatePerpendicularFoot(point, line) {\n return perpendicularFoot(point, line);\n}\n\n\n/**\n * Convert the given bounds to a lines array containing all edges\n *\n * @param {Bounds|Point} bounds\n *\n * @return Array\n */\nexport function asEdges(bounds) {\n return [\n createEdge(bounds, 'top'),\n createEdge(bounds, 'right'),\n createEdge(bounds, 'bottom'),\n createEdge(bounds, 'left')\n ];\n}\n\nfunction createEdge(bounds, direction) {\n switch (direction) {\n case 'top':\n return createLine(\n { x: bounds.x, y: bounds.y },\n { x: bounds.x + (bounds.width || 0), y: bounds.y }\n );\n case 'right':\n return createLine(\n { x: bounds.x + (bounds.width || 0), y: bounds.y },\n { x: bounds.x + (bounds.width || 0), y: bounds.y + (bounds.height || 0) }\n );\n case 'bottom':\n return createLine(\n { x: bounds.x, y: bounds.y + (bounds.height || 0) },\n { x: bounds.x + (bounds.width || 0), y: bounds.y + (bounds.height || 0) }\n );\n case 'left':\n return createLine(\n { x: bounds.x, y: bounds.y },\n { x: bounds.x, y: bounds.y + (bounds.height || 0) }\n );\n default:\n return [];\n }\n}\n\nfunction createLine(start, end) {\n return [start, end];\n}\n\n\n/**\n * Returns the nearest line for a given point by distance\n * @param {Point} point\n * @param Array lines\n *\n * @return Array\n */\nfunction getNearestLine(point, lines) {\n var distances = lines.map(function (line) {\n return {\n line: line,\n distance: getDistancePointLine(point, line)\n };\n });\n\n var sortedDistances = sortBy(distances, 'distance');\n\n return sortedDistances[0].line;\n}\n","import inherits from 'inherits';\n\nimport {\n getOrientation,\n getMid,\n asTRBL\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n substract\n} from 'diagram-js/lib/util/Math';\n\nimport {\n hasExternalLabel\n} from '../../../base/BaseServices';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nvar ALIGNMENTS = [\n 'top',\n 'bottom',\n 'left',\n 'right'\n];\n\nvar ELEMENT_LABEL_DISTANCE = 10;\n\n/**\n * A component that makes sure that external labels are added\n * together with respective elements and properly updated (DI wise)\n * during move.\n *\n * @param {EventBus} eventBus\n * @param {Modeling} modeling\n */\nexport default function LabelPositioningAction(eventBus, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n this.postExecuted([\n 'connection.create',\n 'connection.layout',\n 'connection.updateWaypoints'\n ], function(event) {\n var context = event.context,\n connection = context.connection,\n source = connection.source,\n target = connection.target,\n hints = context.hints || {};\n\n if (hints.createElementsBehavior !== false) {\n checkLabelAdjustment(source);\n checkLabelAdjustment(target);\n }\n });\n\n\n this.postExecuted([\n 'label.create'\n ], function(event) {\n var context = event.context,\n shape = context.shape,\n hints = context.hints || {};\n\n if (hints.createElementsBehavior !== false) {\n checkLabelAdjustment(shape.labelTarget);\n }\n });\n\n\n this.postExecuted([\n 'elements.create'\n ], function(event) {\n var context = event.context,\n elements = context.elements,\n hints = context.hints || {};\n\n if (hints.createElementsBehavior !== false) {\n elements.forEach(function(element) {\n checkLabelAdjustment(element);\n });\n }\n });\n\n function checkLabelAdjustment(element) {\n\n // skip non-existing labels\n if (!hasExternalLabel(element)) {\n return;\n }\n\n var optimalPosition = getOptimalPosition(element);\n\n // no optimal position found\n if (!optimalPosition) {\n return;\n }\n\n adjustLabelPosition(element, optimalPosition);\n }\n\n function adjustLabelPosition(element, orientation) {\n\n var elementMid = getMid(element),\n label = element.label,\n labelMid = getMid(label);\n\n // ignore labels that are being created\n if (!label.parent) {\n return;\n }\n\n var elementTrbl = asTRBL(element);\n\n var newLabelMid;\n\n switch (orientation) {\n case 'top':\n newLabelMid = {\n x: elementMid.x,\n y: elementTrbl.top - ELEMENT_LABEL_DISTANCE - label.height / 2\n };\n\n break;\n\n case 'left':\n\n newLabelMid = {\n x: elementTrbl.left - ELEMENT_LABEL_DISTANCE - label.width / 2,\n y: elementMid.y\n };\n\n break;\n\n case 'bottom':\n\n newLabelMid = {\n x: elementMid.x,\n y: elementTrbl.bottom + ELEMENT_LABEL_DISTANCE + label.height / 2\n };\n\n break;\n\n case 'right':\n\n newLabelMid = {\n x: elementTrbl.right + ELEMENT_LABEL_DISTANCE + label.width / 2,\n y: elementMid.y\n };\n\n break;\n }\n\n var delta = substract(newLabelMid, labelMid);\n\n modeling.moveShape(label, delta);\n }\n\n}\n\ninherits(LabelPositioningAction, CommandInterceptor);\n\nLabelPositioningAction.$inject = [\n 'eventBus',\n 'modeling'\n];\n\n\n// helpers //////////////////////\n\n/**\n * Return alignments which are taken by a boundary's host element\n *\n * @param {Shape} element\n *\n * @return {Array}\n */\nfunction getTakenHostAlignments(element) {\n const hostElement = element.host;\n const elementMid = getMid(element);\n const hostOrientation = getOrientation(elementMid, hostElement);\n\n // Check whether there is a multi-orientation, e.g. 'top-left'\n const freeAlignments = hostOrientation.includes('-') ? hostOrientation.split('-') : [hostOrientation];\n\n const takenAlignments = ALIGNMENTS.filter((alignment) => !freeAlignments.includes(alignment));\n\n return takenAlignments;\n}\n\n\n/**\n * Return alignments which are taken by related connections\n *\n * @param {Shape} element\n *\n * @return {Array}\n */\nfunction getTakenConnectionAlignments(element) {\n const elementMid = getMid(element);\n\n const takenAlignments = [].concat(\n ...element.incoming.map((c) => c.waypoints[c.waypoints.length - 2]),\n ...element.outgoing.map((c) => c.waypoints[1])\n ).map((point) => getApproximateOrientation(elementMid, point));\n\n return takenAlignments;\n}\n\n\n/**\n * Return the optimal label position around an element\n * or _undefined_, if none was found.\n *\n * @param {Shape} element\n *\n * @return {string} positioning identifier\n */\nfunction getOptimalPosition(element) {\n const labelMid = getMid(element.label);\n const elementMid = getMid(element);\n const labelOrientation = getApproximateOrientation(elementMid, labelMid);\n\n if (!isAligned(labelOrientation)) {\n return;\n }\n\n let takenAlignments = getTakenConnectionAlignments(element);\n\n if (element.host) {\n const takenHostAlignments = getTakenHostAlignments(element);\n takenAlignments = [...takenAlignments, ...takenHostAlignments];\n }\n\n const freeAlignments = ALIGNMENTS.filter((alignment) => !takenAlignments.includes(alignment));\n\n // Nothing to do; label already aligned a.O.K.\n if (freeAlignments.includes(labelOrientation)) {\n return;\n }\n\n return freeAlignments[0];\n}\n\n\nfunction getApproximateOrientation(p0, p1) {\n return getOrientation(p1, p0, 5);\n}\n\nfunction isAligned(orientation) {\n return ALIGNMENTS.includes(orientation);\n}\n\n","import inherits from 'inherits';\r\n\r\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\r\n\r\nimport { is, isExpanded } from '../../../base/BaseServices';\r\n\r\nimport { selfAndAllChildren } from 'diagram-js/lib/util/Elements';\r\n\r\nimport {\r\n getResizedSourceAnchor,\r\n getResizedTargetAnchor\r\n} from 'diagram-js/lib/features/modeling/cmd/helper/AnchorsHelper';\r\n\r\n/**\r\n * BPMN-specific message flow behavior.\r\n */\r\nexport default function MessageFlowAction(eventBus, modeling) {\r\n CommandInterceptor.call(this, eventBus);\r\n\r\n this.postExecute('shape.replace', function (context) {\r\n var oldShape = context.oldShape,\r\n newShape = context.newShape;\r\n\r\n if (!isParticipantCollapse(oldShape, newShape)) {\r\n return;\r\n }\r\n\r\n var messageFlows = getMessageFlows(oldShape);\r\n\r\n reconnectFlows(messageFlows.incoming, newShape, oldShape, modeling.reconnectEnd);\r\n reconnectFlows(messageFlows.outgoing, newShape, oldShape, modeling.reconnectStart);\r\n }, true);\r\n\r\n function reconnectFlows(flows, newShape, oldShape, reconnectFunction) {\r\n flows.forEach(function (flow) {\r\n var anchor = reconnectFunction === modeling.reconnectEnd ?\r\n getResizedTargetAnchor(flow, newShape, oldShape) :\r\n getResizedSourceAnchor(flow, newShape, oldShape);\r\n\r\n reconnectFunction(flow, newShape, anchor);\r\n });\r\n }\r\n}\r\n\r\n\r\nMessageFlowAction.$inject = [ 'eventBus', 'modeling' ];\r\n\r\ninherits(MessageFlowAction, CommandInterceptor);\r\n\r\n// helpers //////////\r\n\r\nfunction isParticipantCollapse(oldShape, newShape) {\r\n const isOldParticipant = is(oldShape, 'bpmn:Participant') && isExpanded(oldShape);\r\n const isNewParticipant = is(newShape, 'bpmn:Participant') && !isExpanded(newShape);\r\n\r\n return isOldParticipant && isNewParticipant;\r\n}\r\n\r\n\r\nfunction getMessageFlows(parent) {\r\n const elements = selfAndAllChildren([parent], false);\r\n\r\n const messageFlows = elements.reduce((result, element) => {\r\n if (element !== parent) {\r\n result.incoming.push(...getFlowsOfType(element.incoming, 'bpmn:MessageFlow'));\r\n result.outgoing.push(...getFlowsOfType(element.outgoing, 'bpmn:MessageFlow'));\r\n }\r\n return result;\r\n }, { incoming: [], outgoing: [] });\r\n\r\n return messageFlows;\r\n}\r\n\r\nfunction getFlowsOfType(connections, type) {\r\n return connections.filter(connection => is(connection, type));\r\n}","import { is } from '../../../base/BaseServices';\n\nvar COLLAB_ERR_MSG = 'flow elements must be children of pools/participants';\n\nexport default function ModelError(eventBus, tooltips, translate) {\n\n function showError(position, message, timeout = 2000) {\n const tooltipConfig = {\n position: {\n x: position.x + 5,\n y: position.y + 5\n },\n type: 'error',\n timeout: timeout,\n html: `
${message}
`\n };\n\n tooltips.add(tooltipConfig);\n }\n\n\n eventBus.on(['shape.move.rejected', 'create.rejected'], function (event) {\n const { context } = event;\n const { shape, target } = context;\n\n if (isCollaborationTarget(shape, target)) {\n showError(event, translate(COLLAB_ERR_MSG));\n }\n });\n\n function isCollaborationTarget(shape, target) {\n return is(target, 'bpmn:Collaboration') && is(shape, 'bpmn:FlowNode');\n }\n\n}\n\nModelError.$inject = [\n 'eventBus',\n 'tooltips',\n 'translate'\n];\n","import inherits from 'inherits';\n\nimport { is } from '../../../base/BaseServices';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport lineIntersect from './services/LineIntersectService';\n\n\nexport default function RemoveElementAction(eventBus, bpmnRules, modeling) {\n\n CommandInterceptor.call(this, eventBus);\n\n this.preExecute('shape.delete', function (event) {\n combineSequenceFlows(event.context.shape, modeling, bpmnRules);\n });\n\n}\n\nfunction combineSequenceFlows(shape, modeling, bpmnRules) {\n // Only handle [a] -> [shape] -> [b] patterns\n if (shape.incoming.length !== 1 || shape.outgoing.length !== 1) {\n return;\n }\n\n const inConnection = shape.incoming[0];\n const outConnection = shape.outgoing[0];\n\n // Only handle sequence flows\n if (!isSequenceFlow(inConnection) || !isSequenceFlow(outConnection)) {\n return;\n }\n\n if (bpmnRules.canConnect(inConnection.source, outConnection.target, inConnection)) {\n const newWaypoints = getNewWaypoints(inConnection.waypoints, outConnection.waypoints);\n modeling.reconnectEnd(inConnection, outConnection.target, newWaypoints);\n }\n}\n\nfunction isSequenceFlow(connection) {\n return is(connection, 'bpmn:SequenceFlow');\n}\n\n\ninherits(RemoveElementAction, CommandInterceptor);\n\nRemoveElementAction.$inject = [\n 'eventBus',\n 'bpmnRules',\n 'modeling'\n];\n\n\n// helpers //////////////////////\n\nfunction getDocking(point) {\n return point.original || point;\n}\n\n\nfunction getNewWaypoints(inWaypoints, outWaypoints) {\n\n var intersection = lineIntersect(\n getDocking(inWaypoints[inWaypoints.length - 2]),\n getDocking(inWaypoints[inWaypoints.length - 1]),\n getDocking(outWaypoints[1]),\n getDocking(outWaypoints[0]));\n\n if (intersection) {\n return [].concat(\n inWaypoints.slice(0, inWaypoints.length - 1),\n [ intersection ],\n outWaypoints.slice(1));\n } else {\n return [\n getDocking(inWaypoints[0]),\n getDocking(outWaypoints[outWaypoints.length - 1])\n ];\n }\n}","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\n\n/**\n * BPMN specific remove behavior\n */\nexport default function RemoveParticipantAction(eventBus, modeling) {\n CommandInterceptor.call(this, eventBus);\n\n this.preExecute('shape.delete', function(context) {\n const shape = context.shape;\n \n // Activate the behavior if the shape to be removed is a participant\n if (is(shape, 'bpmn:Participant')) {\n context.collaborationRoot = shape.parent;\n }\n }, true);\n\n this.postExecute('shape.delete', function(context) {\n const collaborationRoot = context.collaborationRoot;\n\n if (collaborationRoot && !collaborationRoot.businessObject.participants.length) {\n // Replace empty collaboration with process diagram\n modeling.makeProcess();\n }\n }, true);\n}\n\n\nRemoveParticipantAction.$inject = [ 'eventBus', 'modeling' ];\n\ninherits(RemoveParticipantAction, CommandInterceptor);","import {\n forEach,\n find,\n matchPattern\n} from 'min-dash';\n\nimport inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is } from '../../../base/BaseServices';\n\n\nexport default function ReplaceConnectionAction(eventBus, modeling, bpmnRules, injector) {\n\n CommandInterceptor.call(this, eventBus);\n\n var dragging = injector.get('dragging', false);\n\n function fixConnection(connection) {\n const { source, target, parent } = connection;\n \n // Do not do anything if connection\n // is already deleted (may happen due to other\n // behaviors plugged in before)\n if (!parent) {\n return;\n }\n \n let replacementType;\n let remove;\n \n /**\n * Check if incoming or outgoing connections\n * can stay or could be substituted with an\n * appropriate replacement.\n *\n * This holds true for SequenceFlow <> MessageFlow.\n */\n if (is(connection, 'bpmn:SequenceFlow')) {\n if (!bpmnRules.canConnectSequenceFlow(source, target)) {\n remove = true;\n }\n \n if (bpmnRules.canConnectMessageFlow(source, target)) {\n replacementType = 'bpmn:MessageFlow';\n }\n }\n \n // Transform message flows into sequence flows, if possible\n if (is(connection, 'bpmn:MessageFlow')) {\n if (!bpmnRules.canConnectMessageFlow(source, target)) {\n remove = true;\n }\n \n if (bpmnRules.canConnectSequenceFlow(source, target)) {\n replacementType = 'bpmn:SequenceFlow';\n }\n }\n \n if (is(connection, 'bpmn:Association') && !bpmnRules.canConnectAssociation(source, target)) {\n remove = true;\n }\n \n // Remove invalid connection,\n // unless it has been removed already\n if (remove) {\n modeling.removeConnection(connection);\n }\n \n // Replace SequenceFlow <> MessageFlow\n if (replacementType) {\n modeling.connect(source, target, {\n type: replacementType,\n waypoints: connection.waypoints.slice()\n });\n }\n }\n \n\n function replaceReconnectedConnection(event) {\n const { context, modeling, dragging } = event;\n let { connection, newSource, newTarget } = context;\n \n const source = newSource || connection.source;\n const target = newTarget || connection.target;\n \n const allowed = bpmnRules.canConnect(source, target);\n \n if (!allowed || allowed.type === connection.type) {\n return;\n }\n \n const replacement = modeling.connect(source, target, {\n type: allowed.type,\n waypoints: connection.waypoints.slice()\n });\n \n // Remove old connection\n modeling.removeConnection(connection);\n \n // Replace connection in context to reconnect end/start\n context.connection = replacement;\n \n if (dragging) {\n cleanDraggingSelection(connection, replacement);\n }\n }\n \n\n // monkey-patch selection saved in dragging in order to re-select it when operation is finished\n function cleanDraggingSelection(oldConnection, newConnection) {\n const context = dragging.context();\n const previousSelection = context?.payload.previousSelection;\n \n // Do nothing if not dragging or no selection was present\n if (!previousSelection || !previousSelection.length) {\n return;\n }\n \n const index = previousSelection.indexOf(oldConnection);\n \n if (index !== -1) {\n previousSelection.splice(index, 1, newConnection);\n }\n }\n \n\n // lifecycle hooks\n\n this.postExecuted('elements.move', function(context) {\n\n var closure = context.closure,\n allConnections = closure.allConnections;\n\n forEach(allConnections, fixConnection);\n }, true); \n\n this.preExecute('connection.reconnect', replaceReconnectedConnection);\n\n this.postExecuted('element.updateProperties', function(event) {\n const { context } = event;\n const { properties, element } = context;\n const businessObject = element.businessObject;\n let connection;\n \n // Remove condition on change to default\n if (properties.default) {\n connection = find(\n element.outgoing,\n matchPattern({ id: element.businessObject.default.id })\n );\n\n if (connection) {\n modeling.updateProperties(connection, { conditionExpression: undefined });\n }\n }\n \n // Remove default from source on change to conditional\n if (properties.conditionExpression && businessObject.sourceRef.default === businessObject) {\n modeling.updateProperties(element.source, { default: undefined });\n }\n });\n \n}\n\ninherits(ReplaceConnectionAction, CommandInterceptor);\n\nReplaceConnectionAction.$inject = [\n 'eventBus',\n 'modeling',\n 'bpmnRules',\n 'injector'\n];\n","import inherits from 'inherits';\n\nimport { forEach } from 'min-dash';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { isEventSubProcess } from '../../../base/BaseServices';\n\n\n/**\n * BPMN-specific replace behavior.\n */\nexport default function ReplaceElementAction(\n bpmnReplace,\n bpmnRules,\n elementRegistry,\n injector,\n modeling,\n selection\n) {\n injector.invoke(CommandInterceptor, this);\n\n this._bpmnReplace = bpmnReplace;\n this._elementRegistry = elementRegistry;\n this._selection = selection;\n\n // replace elements on create, e.g. during copy-paste\n this.postExecuted([ 'elements.create' ], 500, function(event) {\n var context = event.context,\n target = context.parent,\n elements = context.elements;\n\n var canReplace = bpmnRules.canReplace(elements, target);\n\n if (canReplace) {\n this.replaceElements(elements, canReplace.replacements);\n }\n }, this);\n\n // replace elements on move\n this.postExecuted([ 'elements.move' ], 500, function(event) {\n var context = event.context,\n target = context.newParent,\n newHost = context.newHost,\n elements = [];\n\n forEach(context.closure.topLevel, function(topLevelElements) {\n if (isEventSubProcess(topLevelElements)) {\n elements = elements.concat(topLevelElements.children);\n } else {\n elements = elements.concat(topLevelElements);\n }\n });\n\n // set target to host if attaching\n if (elements.length === 1 && newHost) {\n target = newHost;\n }\n\n var canReplace = bpmnRules.canReplace(elements, target);\n\n if (canReplace) {\n this.replaceElements(elements, canReplace.replacements, newHost);\n }\n }, this);\n\n // update attachments on host replace\n this.postExecute([ 'shape.replace' ], 1500, function(e) {\n var context = e.context,\n oldShape = context.oldShape,\n newShape = context.newShape,\n attachers = oldShape.attachers,\n canReplace;\n\n if (attachers && attachers.length) {\n canReplace = bpmnRules.canReplace(attachers, newShape);\n\n this.replaceElements(attachers, canReplace.replacements);\n }\n\n }, this);\n\n // keep ID on shape replace\n this.postExecuted([ 'shape.replace' ], 1500, function(e) {\n var context = e.context,\n oldShape = context.oldShape,\n newShape = context.newShape;\n\n modeling.unclaimId(oldShape.businessObject.id, oldShape.businessObject);\n modeling.updateProperties(newShape, { id: oldShape.id });\n });\n}\n\ninherits(ReplaceElementAction, CommandInterceptor);\n\nReplaceElementAction.prototype.replaceElements = function(elements, newElements) {\n var elementRegistry = this._elementRegistry,\n bpmnReplace = this._bpmnReplace,\n selection = this._selection;\n\n forEach(newElements, function(replacement) {\n var newElement = {\n type: replacement.newElementType\n };\n\n var oldElement = elementRegistry.get(replacement.oldElementId);\n\n var idx = elements.indexOf(oldElement);\n\n elements[idx] = bpmnReplace.replaceElement(oldElement, newElement, { select: false });\n });\n\n if (newElements) {\n selection.select(elements);\n }\n};\n\nReplaceElementAction.$inject = [\n 'bpmnReplace',\n 'bpmnRules',\n 'elementRegistry',\n 'injector',\n 'modeling',\n 'selection'\n];\n","import { is } from '../../../../base/BaseServices';\r\n\r\nimport {\r\n asTRBL\r\n} from 'diagram-js/lib/layout/LayoutUtil';\r\n\r\nimport {\r\n collectLanes,\r\n getLanesRoot\r\n} from '../../services/LaneService';\r\n\r\nimport { LANE_MIN_DIMENSIONS } from '../ResizeAction';\r\n\r\nfunction addToTrbl(trbl, attr, value, choice) {\r\n const currentValue = trbl[attr];\r\n\r\n // Set the value if it does not exist or apply the correct value\r\n trbl[attr] = currentValue === undefined ? value : choice(value, currentValue);\r\n}\r\n \r\n\r\nfunction addMin(trbl, attr, value) {\r\n addToTrbl(trbl, attr, value, Math.min);\r\n}\r\n\r\n\r\nfunction addMax(trbl, attr, value) {\r\n addToTrbl(trbl, attr, value, Math.max);\r\n}\r\n\r\n\r\nvar LANE_RIGHT_PADDING = 20,\r\n LANE_LEFT_PADDING = 50,\r\n LANE_TOP_PADDING = 20,\r\n LANE_BOTTOM_PADDING = 20;\r\n\r\n\r\nexport function getParticipantResizeConstraints(laneShape, resizeDirection, balanced) {\r\n const lanesRoot = getLanesRoot(laneShape);\r\n\r\n let isFirst = true;\r\n let isLast = true;\r\n\r\n // Max top/bottom size for lanes\r\n const allLanes = collectLanes(lanesRoot, [lanesRoot]);\r\n\r\n const laneTrbl = asTRBL(laneShape);\r\n\r\n const maxTrbl = {};\r\n const minTrbl = {};\r\n\r\n if (/e/.test(resizeDirection)) {\r\n minTrbl.right = laneTrbl.left + LANE_MIN_DIMENSIONS.width;\r\n } else if (/w/.test(resizeDirection)) {\r\n minTrbl.left = laneTrbl.right - LANE_MIN_DIMENSIONS.width;\r\n }\r\n\r\n allLanes.forEach((other) => {\r\n const otherTrbl = asTRBL(other);\r\n\r\n if (/n/.test(resizeDirection)) {\r\n if (otherTrbl.top < laneTrbl.top - 10) {\r\n isFirst = false;\r\n }\r\n\r\n // Max top size (based on next element)\r\n if (balanced && Math.abs(laneTrbl.top - otherTrbl.bottom) < 10) {\r\n addMax(maxTrbl, 'top', otherTrbl.top + LANE_MIN_DIMENSIONS.height);\r\n }\r\n\r\n // Min top size (based on self or nested element)\r\n if (Math.abs(laneTrbl.top - otherTrbl.top) < 5) {\r\n addMin(minTrbl, 'top', otherTrbl.bottom - LANE_MIN_DIMENSIONS.height);\r\n }\r\n }\r\n\r\n if (/s/.test(resizeDirection)) {\r\n if (otherTrbl.bottom > laneTrbl.bottom + 10) {\r\n isLast = false;\r\n }\r\n\r\n // Max bottom size (based on previous element)\r\n if (balanced && Math.abs(laneTrbl.bottom - otherTrbl.top) < 10) {\r\n addMin(maxTrbl, 'bottom', otherTrbl.bottom - LANE_MIN_DIMENSIONS.height);\r\n }\r\n\r\n // Min bottom size (based on self or nested element)\r\n if (Math.abs(laneTrbl.bottom - otherTrbl.bottom) < 5) {\r\n addMax(minTrbl, 'bottom', otherTrbl.top + LANE_MIN_DIMENSIONS.height);\r\n }\r\n }\r\n });\r\n\r\n // Max top/bottom/left/right size based on flow nodes\r\n const flowElements = lanesRoot.children.filter((s) =>\r\n !s.hidden && !s.waypoints && (is(s, 'bpmn:FlowElement') || is(s, 'bpmn:Artifact'))\r\n );\r\n\r\n flowElements.forEach((flowElement) => {\r\n const flowElementTrbl = asTRBL(flowElement);\r\n\r\n if (isFirst && /n/.test(resizeDirection)) {\r\n addMin(minTrbl, 'top', flowElementTrbl.top - LANE_TOP_PADDING);\r\n }\r\n\r\n if (/e/.test(resizeDirection)) {\r\n addMax(minTrbl, 'right', flowElementTrbl.right + LANE_RIGHT_PADDING);\r\n }\r\n\r\n if (isLast && /s/.test(resizeDirection)) {\r\n addMax(minTrbl, 'bottom', flowElementTrbl.bottom + LANE_BOTTOM_PADDING);\r\n }\r\n\r\n if (/w/.test(resizeDirection)) {\r\n addMin(minTrbl, 'left', flowElementTrbl.left - LANE_LEFT_PADDING);\r\n }\r\n });\r\n\r\n return {\r\n min: minTrbl,\r\n max: maxTrbl,\r\n };\r\n}\r\n ","import { is, isExpanded } from '../../../base/BaseServices';\r\n\r\nimport { getParticipantResizeConstraints } from './services/ResizeService';\r\n\r\nvar HIGH_PRIORITY = 1500;\r\n\r\nexport var LANE_MIN_DIMENSIONS = { width: 300, height: 60 };\r\n\r\nexport var PARTICIPANT_MIN_DIMENSIONS = { width: 300, height: 150 };\r\n\r\nexport var SUB_PROCESS_MIN_DIMENSIONS = { width: 140, height: 120 };\r\n\r\nexport var TEXT_ANNOTATION_MIN_DIMENSIONS = { width: 50, height: 30 };\r\n\r\n\r\n/**\r\n * Set minimum bounds/resize constraints on resize.\r\n *\r\n * @param {EventBus} eventBus\r\n */\r\nexport default function ResizeAction(eventBus) {\r\n eventBus.on('resize.start', HIGH_PRIORITY, function(event) {\r\n const context = event.context;\r\n const shape = context.shape;\r\n const direction = context.direction;\r\n const balanced = context.balanced;\r\n\r\n if (isParticipant(shape)) {\r\n context.resizeConstraints = getParticipantResizeConstraints(shape, direction, balanced);\r\n context.minDimensions = PARTICIPANT_MIN_DIMENSIONS;\r\n }\r\n\r\n if (isExpandedSubProcess(shape)) {\r\n context.minDimensions = SUB_PROCESS_MIN_DIMENSIONS;\r\n }\r\n\r\n if (isTextAnnotation(shape)) {\r\n context.minDimensions = TEXT_ANNOTATION_MIN_DIMENSIONS;\r\n }\r\n });\r\n\r\n function isParticipant(shape) {\r\n return is(shape, 'bpmn:Lane') || is(shape, 'bpmn:Participant');\r\n }\r\n\r\n function isExpandedSubProcess(shape) {\r\n return is(shape, 'bpmn:SubProcess') && isExpanded(shape);\r\n }\r\n\r\n function isTextAnnotation(shape) {\r\n return is(shape, 'bpmn:TextAnnotation');\r\n }\r\n}\r\n\r\nResizeAction.$inject = [ 'eventBus' ];","import { is } from '../../../base/BaseServices';\n\nimport {\n roundBounds\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n hasPrimaryModifier\n} from 'diagram-js/lib/util/Mouse';\n\nvar SLIGHTLY_HIGHER_PRIORITY = 1001;\n\n\n/**\n * Invoke {@link Modeling#resizeLane} instead of\n * {@link Modeling#resizeShape} when resizing a Lane\n * or Participant shape.\n */\nexport default function ResizeLaneAction(eventBus, modeling) {\n\n eventBus.on('resize.start', SLIGHTLY_HIGHER_PRIORITY + 500, function(event) {\n const context = event.context;\n const shape = context.shape;\n \n if (shouldResizeOppositeLanes(shape, event)) {\n context.balanced = true;\n }\n });\n \n function shouldResizeOppositeLanes(shape, event) {\n return is(shape, 'bpmn:Lane') || is(shape, 'bpmn:Participant') && !hasPrimaryModifier(event);\n }\n \n\n /**\n * Intercept resize end and call resize lane function instead.\n */\n eventBus.on('resize.end', SLIGHTLY_HIGHER_PRIORITY, function(event) {\n const context = event.context;\n const shape = context.shape;\n const canExecute = context.canExecute;\n let newBounds = context.newBounds;\n \n if (shouldResize(shape)) {\n if (canExecute) {\n newBounds = roundBounds(newBounds);\n modeling.resizeLane(shape, newBounds, context.balanced);\n }\n // stop propagation\n return false;\n }\n });\n \n function shouldResize(shape) {\n return is(shape, 'bpmn:Lane') || is(shape, 'bpmn:Participant');\n }\n \n}\n\nResizeLaneAction.$inject = [\n 'eventBus',\n 'modeling'\n];\n","import { forEach } from 'min-dash';\r\n\r\nimport { is, isExpanded } from '../../../base/BaseServices';\r\n\r\nimport {\r\n LANE_MIN_DIMENSIONS,\r\n PARTICIPANT_MIN_DIMENSIONS,\r\n SUB_PROCESS_MIN_DIMENSIONS,\r\n TEXT_ANNOTATION_MIN_DIMENSIONS\r\n} from './ResizeAction';\r\n\r\nimport { getChildLanes } from '../services/LaneService';\r\n\r\nexport default function SpaceToolAction(eventBus) {\r\n eventBus.on('spaceTool.getMinDimensions', function(context) {\r\n const shapes = context.shapes;\r\n const axis = context.axis;\r\n const start = context.start;\r\n const minDimensions = {};\r\n\r\n forEach(shapes, function(shape) {\r\n const id = shape.id;\r\n\r\n if (is(shape, 'bpmn:Participant')) {\r\n minDimensions[id] = isHorizontal(axis)\r\n ? PARTICIPANT_MIN_DIMENSIONS\r\n : { width: PARTICIPANT_MIN_DIMENSIONS.width, height: getParticipantMinHeight(shape, start) };\r\n }\r\n\r\n if (is(shape, 'bpmn:SubProcess') && isExpanded(shape)) {\r\n minDimensions[id] = SUB_PROCESS_MIN_DIMENSIONS;\r\n }\r\n\r\n if (is(shape, 'bpmn:TextAnnotation')) {\r\n minDimensions[id] = TEXT_ANNOTATION_MIN_DIMENSIONS;\r\n }\r\n });\r\n\r\n return minDimensions;\r\n });\r\n}\r\n\r\nSpaceToolAction.$inject = [ 'eventBus' ];\r\n\r\n\r\n// helpers //////////\r\nfunction isHorizontal(axis) {\r\n return axis === 'x';\r\n}\r\n\r\n/**\r\n * Get minimum height for participant taking lanes into account.\r\n *\r\n * @param {} participant\r\n * @param {number} start\r\n *\r\n * @returns {Object}\r\n */\r\nfunction getParticipantMinHeight(participant, start) {\r\n if (!hasChildLanes(participant)) {\r\n return PARTICIPANT_MIN_DIMENSIONS.height;\r\n }\r\n\r\n const lanesMinHeight = getLanesMinHeight(participant, start);\r\n\r\n return Math.max(PARTICIPANT_MIN_DIMENSIONS.height, lanesMinHeight);\r\n}\r\n\r\n\r\nfunction hasChildLanes(element) {\r\n return getChildLanes(element).length > 0;\r\n}\r\n\r\n\r\nfunction getLanesMinHeight(participant, resizeStart) {\r\n var lanes = getChildLanes(participant);\r\n\r\n // find the nested lane which is currently resized\r\n var resizedLane = findResizedLane(lanes, resizeStart);\r\n\r\n // resized lane cannot shrink below the minimum height\r\n // but remaining lanes' dimensions are kept intact\r\n return Math.max(participant.height - resizedLane.height + LANE_MIN_DIMENSIONS.height, PARTICIPANT_MIN_DIMENSIONS.height);\r\n}\r\n\r\n\r\n/**\r\n * Find nested lane which is currently resized.\r\n *\r\n * @param {Array} lanes\r\n * @param {number} resizeStart\r\n */\r\nfunction findResizedLane(lanes, resizeStart) {\r\n for (var i = 0; i < lanes.length; i++) {\r\n var lane = lanes[i];\r\n\r\n if (isPointInLane(resizeStart, lane)) {\r\n var childLanes = getChildLanes(lane);\r\n\r\n // a nested lane is resized\r\n if (childLanes.length) {\r\n return findResizedLane(childLanes, resizeStart);\r\n }\r\n\r\n // current lane is the resized one\r\n return lane;\r\n }\r\n }\r\n}\r\n\r\nfunction isPointInLane(point, lane) {\r\n return point >= lane.y && point <= lane.y + lane.height;\r\n}\r\n\r\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is, isExpanded } from '../../../base/BaseServices';\n\n/**\n * Add start event replacing element with expanded sub process.\n *\n * @param {Injector} injector\n * @param {Modeling} modeling\n */\nexport default function SubProcessStartEventAction(injector, modeling) {\n injector.invoke(CommandInterceptor, this);\n\n this.postExecuted('shape.replace', function(event) {\n var oldShape = event.context.oldShape,\n newShape = event.context.newShape;\n\n if (!shouldCreateStartEvent(newShape, oldShape)) {\n return;\n }\n\n var position = getStartEventPosition(newShape);\n\n modeling.createShape({ type: 'bpmn:StartEvent' }, position, newShape);\n });\n\n function shouldCreateStartEvent(newShape, oldShape) {\n return (\n isSubProcessWithStartEvent(newShape) &&\n isTask(oldShape) &&\n isExpanded(newShape)\n );\n }\n\n function isSubProcessWithStartEvent(shape) {\n return is(shape, 'bpmn:SubProcess') && hasStartEvent(shape);\n }\n\n function isTask(shape) {\n return is(shape, 'bpmn:Task');\n }\n\n function hasStartEvent(subProcess) {\n return subProcess.children && subProcess.children.some(isStartEvent);\n }\n\n function isStartEvent(element) {\n return is(element, 'bpmn:StartEvent');\n }\n}\n\n\nSubProcessStartEventAction.$inject = [\n 'injector',\n 'modeling'\n];\n\ninherits(SubProcessStartEventAction, CommandInterceptor);\n\n// helpers //////////\n\nfunction getStartEventPosition(shape) {\n return {\n x: calculateXPosition(shape),\n y: calculateYPosition(shape)\n };\n\n function calculateXPosition(shape) {\n return shape.x + shape.width / 6;\n }\n\n function calculateYPosition(shape) {\n return shape.y + shape.height / 2;\n }\n}\n\n","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport { is, isExpanded, isLabel } from '../../../base/BaseServices';\n\n\n/**\n * Unclaims model IDs on element deletion.\n *\n * @param {Canvas} canvas\n * @param {Injector} injector\n * @param {Moddle} moddle\n * @param {Modeling} modeling\n */\nexport default function UnclaimModelIdAction(canvas, injector, moddle, modeling) {\n injector.invoke(CommandInterceptor, this);\n\n function unclaimShapeId(shape) {\n if (isLabel(shape)) {\n return;\n }\n\n if (is(shape, 'bpmn:Participant') && isExpanded(shape)) {\n moddle.ids.unclaim(shape.businessObject.processRef.id);\n }\n\n modeling.unclaimId(shape.businessObject.id, shape.businessObject);\n }\n\n this.preExecute('shape.delete', function(event) {\n var context = event.context,\n shape = context.shape;\n\n unclaimShapeId(shape);\n });\n\n this.preExecute('connection.delete', function(event) {\n var context = event.context,\n connection = context.connection;\n\n modeling.unclaimId(connection.businessObject.id, connection.businessObject);\n });\n\n this.preExecute('canvas.updateRoot', function() {\n var rootElement = canvas.getRootElement();\n\n if (rootElement) {\n moddle.ids.unclaim(rootElement.businessObject.id);\n }\n });\n}\n\ninherits(UnclaimModelIdAction, CommandInterceptor);\n\nUnclaimModelIdAction.$inject = [ 'canvas', 'injector', 'moddle', 'modeling' ];","import inherits from 'inherits';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport {\n is\n} from '../../../base/BaseServices';\n\nvar LOW_PRIORITY = 500,\n HIGH_PRIORITY = 5000;\n\n\n/**\n * BPMN specific delete lane behavior\n */\nexport default function UpdateFlowNodeRefsAction(eventBus, modeling, translate) {\n CommandInterceptor.call(this, eventBus);\n\n // The update context\n let context;\n\n function initContext() {\n context = context || new UpdateContext();\n context.enter();\n return context;\n }\n\n function getContext() {\n if (!context) {\n throw new Error(translate('out of bounds release'));\n }\n return context;\n }\n\n function releaseContext() {\n if (!context) {\n throw new Error(translate('out of bounds release'));\n }\n\n const triggerUpdate = context.leave();\n\n if (triggerUpdate) {\n modeling.updateLaneRefs(context.flowNodes, context.lanes);\n context = null;\n }\n\n return triggerUpdate;\n }\n\n const laneRefUpdateEvents = [\n 'spaceTool',\n 'lane.add',\n 'lane.resize',\n 'lane.split',\n 'elements.create',\n 'elements.delete',\n 'elements.move',\n 'shape.create',\n 'shape.delete',\n 'shape.move',\n 'shape.resize'\n ];\n\n // Listen to a lot of events to group lane updates\n this.preExecute(laneRefUpdateEvents, HIGH_PRIORITY, function(event) {\n initContext();\n });\n\n this.postExecuted(laneRefUpdateEvents, LOW_PRIORITY, function(event) {\n releaseContext();\n });\n\n // Mark flow nodes + lanes that need an update\n this.preExecute([\n 'shape.create',\n 'shape.move',\n 'shape.delete',\n 'shape.resize'\n ], function(event) {\n const context = event.context,\n shape = context.shape;\n\n const updateContext = getContext();\n\n // No need to update labels\n if (shape.labelTarget) {\n return;\n }\n\n if (is(shape, 'bpmn:Lane')) {\n updateContext.addLane(shape);\n }\n\n if (is(shape, 'bpmn:FlowNode')) {\n updateContext.addFlowNode(shape);\n }\n });\n}\n\n\nUpdateFlowNodeRefsAction.$inject = [\n 'eventBus',\n 'modeling' ,\n 'translate'\n];\n\ninherits(UpdateFlowNodeRefsAction, CommandInterceptor);\n\n\nclass UpdateContext {\n constructor() {\n this.flowNodes = [];\n this.lanes = [];\n this.counter = 0;\n }\n\n addLane(lane) {\n this.lanes.push(lane);\n }\n\n addFlowNode(flowNode) {\n this.flowNodes.push(flowNode);\n }\n\n enter() {\n this.counter++;\n }\n\n leave() {\n this.counter--;\n\n return !this.counter;\n }\n}\n","import AppendAction from './AppendAction';\nimport AssociationAction from './AssociationAction';\nimport AttachEventAction from './AttachEventAction';\nimport BoundaryEventAction from './BoundaryEventAction';\nimport RootElementAction from './RootElementAction';\nimport CreateAction from './CreateAction';\nimport FixHoverAction from './FixHoverAction';\nimport CreateDataObjectAction from './CreateDataObjectAction';\nimport CreateParticipantAction from './CreateParticipantAction';\nimport DataInputAction from './DataInputAction';\nimport DataStoreAction from './DataStoreAction';\nimport DeleteDefaultFlowAction from './DeleteDefaultFlowAction';\nimport DeleteLaneAction from './DeleteLaneAction';\nimport DetachEventAction from './DetachEventAction';\nimport DropOnFlowAction from './DropOnFlowAction';\nimport ElementCollapseAction from './ElementCollapseAction';\nimport EventBasedGatewayAction from './EventBasedGatewayAction';\nimport GroupAction from './GroupAction';\nimport ImportDockingFix from './ImportDockingFix';\nimport IsHorizontalFix from './IsHorizontalFix';\nimport LabelAction from './LabelAction';\nimport LabelPositioningAction from './LabelPositioningAction';\nimport MessageFlowAction from './MessageFlowAction';\nimport ModelError from './ModelError';\nimport RemoveElementAction from './RemoveElementAction';\nimport RemoveParticipantAction from './RemoveParticipantAction';\nimport ReplaceConnectionAction from './ReplaceConnectionAction';\nimport ReplaceElementAction from './ReplaceElementAction';\nimport ResizeAction from './ResizeAction';\nimport ResizeLaneAction from './ResizeLaneAction';\nimport SpaceToolAction from './SpaceToolAction';\nimport SubProcessStartEventAction from './SubProcessStartEventAction';\nimport UnclaimModelIdAction from './UnclaimModelIdAction';\nimport UpdateFlowNodeRefsAction from './UpdateFlowNodeRefsAction';\n\nexport default {\n __init__: [\n 'appendAction',\n 'associationAction',\n 'attachEventAction',\n 'boundaryEventAction',\n 'rootElementAction',\n 'createAction',\n 'fixHoverAction',\n 'createDataObjectAction',\n 'createParticipantAction',\n 'dataInputAction',\n 'dataStoreAction',\n 'deleteDefaultFlowAction',\n 'deleteLaneAction',\n 'detachEventAction',\n 'dropOnFlowAction',\n 'elementCollapseAction',\n 'eventBasedGatewayAction',\n 'groupAction',\n 'importDockingFix',\n 'isHorizontalFix',\n 'labelAction',\n 'labelPositioningAction',\n 'messageFlowAction',\n 'modelError',\n 'removeElementAction',\n 'removeParticipantAction',\n 'replaceConnectionAction',\n 'replaceElementAction',\n 'resizeAction',\n 'resizeLaneAction',\n 'spaceToolAction',\n 'subProcessStartEventAction',\n 'unclaimModelIdAction',\n 'updateFlowNodeRefsAction'\n ],\n labelPositioningAction: [ 'type', LabelPositioningAction ],\n appendAction: [ 'type', AppendAction ],\n associationAction: [ 'type', AssociationAction ],\n attachEventAction: [ 'type', AttachEventAction ],\n boundaryEventAction: [ 'type', BoundaryEventAction ],\n rootElementAction: [ 'type', RootElementAction ],\n createAction: [ 'type', CreateAction ],\n fixHoverAction: [ 'type', FixHoverAction ],\n createDataObjectAction: [ 'type', CreateDataObjectAction ],\n createParticipantAction: [ 'type', CreateParticipantAction ],\n dataInputAction: [ 'type', DataInputAction ],\n dataStoreAction: [ 'type', DataStoreAction ],\n deleteDefaultFlowAction: [ 'type', DeleteDefaultFlowAction ],\n deleteLaneAction: [ 'type', DeleteLaneAction ],\n detachEventAction: [ 'type', DetachEventAction ],\n dropOnFlowAction: [ 'type', DropOnFlowAction ],\n elementCollapseAction : [ 'type', ElementCollapseAction ],\n eventBasedGatewayAction: [ 'type', EventBasedGatewayAction ],\n groupAction: [ 'type', GroupAction ],\n importDockingFix: [ 'type', ImportDockingFix ],\n isHorizontalFix: [ 'type', IsHorizontalFix ],\n labelAction: [ 'type', LabelAction ],\n messageFlowAction: [ 'type', MessageFlowAction ],\n modelError: [ 'type', ModelError ],\n removeElementAction: [ 'type', RemoveElementAction ],\n removeParticipantAction: [ 'type', RemoveParticipantAction ],\n replaceConnectionAction: [ 'type', ReplaceConnectionAction ],\n replaceElementAction: [ 'type', ReplaceElementAction ],\n resizeAction: [ 'type', ResizeAction ],\n resizeLaneAction: [ 'type', ResizeLaneAction ],\n spaceToolAction: [ 'type', SpaceToolAction ],\n subProcessStartEventAction: [ 'type', SubProcessStartEventAction ],\n unclaimModelIdAction: [ 'type', UnclaimModelIdAction ],\n updateFlowNodeRefsAction: [ 'type', UpdateFlowNodeRefsAction ]\n};\n","import { getOrientation } from 'diagram-js/lib/layout/LayoutUtil';\r\n\r\nexport function getBoundaryAttachment(position, targetBounds) {\r\n\r\n var orientation = getOrientation(position, targetBounds, -15);\r\n\r\n if (orientation !== 'intersect') {\r\n return orientation;\r\n } else {\r\n return null;\r\n }\r\n}","import {\n every,\n find,\n forEach,\n some\n} from 'min-dash';\n\nimport inherits from 'inherits';\n\nimport {\n getParent,\n isAny\n} from '../modelElements/services/ModelingService';\n\nimport {\n is,\n getBusinessObject,\n isLabel,\n isExpanded,\n isEventSubProcess,\n isInterrupting,\n hasErrorEventDefinition,\n hasEscalationEventDefinition,\n hasCompensateEventDefinition\n} from '../../base/BaseServices';\n\nimport RuleProvider from 'diagram-js/lib/features/rules/RuleProvider';\n\nimport {\n getBoundaryAttachment as isBoundaryAttachment\n} from '../snapActions/SnappingService';\n\n\n/**\n * BPMN specific modeling rule\n */\nexport default function ModelRules(eventBus) {\n RuleProvider.call(this, eventBus);\n}\n\ninherits(ModelRules, RuleProvider);\n\nModelRules.$inject = [ 'eventBus' ];\n\nModelRules.prototype.init = function() {\n\n this.addRule('connection.start', function(context) {\n var source = context.source;\n\n return canStartConnection(source);\n });\n\n this.addRule('connection.create', function(context) {\n const { source, target, hints = {} } = context;\n const { targetParent, targetAttach } = hints;\n \n // Don't allow incoming connections on newly created boundary events to boundary events\n if (targetAttach) {\n return false;\n }\n \n // Temporarily set target parent for scoping checks to work\n if (targetParent) {\n target.parent = targetParent;\n }\n \n try {\n return canConnect(source, target);\n } finally {\n // Unset temporary target parent\n if (targetParent) {\n target.parent = null;\n }\n }\n });\n \n\n this.addRule('connection.reconnect', function(context) {\n\n var connection = context.connection,\n source = context.source,\n target = context.target;\n\n return canConnect(source, target, connection);\n });\n\n this.addRule('connection.updateWaypoints', function(context) {\n return {\n type: context.connection.type\n };\n });\n\n this.addRule('shape.resize', function(context) {\n\n var shape = context.shape,\n newBounds = context.newBounds;\n\n return canResize(shape, newBounds);\n });\n\n this.addRule('elements.create', function(context) {\n var elements = context.elements,\n position = context.position,\n target = context.target;\n\n if (isConnection(target) && !canInsert(elements, target, position)) {\n return false;\n }\n\n return every(elements, function(element) {\n if (isConnection(element)) {\n return canConnect(element.source, element.target, element);\n }\n\n if (element.host) {\n return canAttach(element, element.host, null, position);\n }\n\n return canCreate(element, target, null, position);\n });\n });\n\n this.addRule('elements.move', function(context) {\n\n var target = context.target,\n shapes = context.shapes,\n position = context.position;\n\n return canAttach(shapes, target, null, position) ||\n canReplace(shapes, target, position) ||\n canMove(shapes, target, position) ||\n canInsert(shapes, target, position);\n });\n\n this.addRule('shape.create', function(context) {\n return canCreate(\n context.shape,\n context.target,\n context.source,\n context.position\n );\n });\n\n this.addRule('shape.attach', function(context) {\n\n return canAttach(\n context.shape,\n context.target,\n null,\n context.position\n );\n });\n\n this.addRule('element.copy', function(context) {\n var element = context.element,\n elements = context.elements;\n\n return canCopy(elements, element);\n });\n};\n\nModelRules.prototype.canConnectMessageFlow = canConnectMessageFlow;\n\nModelRules.prototype.canConnectSequenceFlow = canConnectSequenceFlow;\n\nModelRules.prototype.canConnectDataAssociation = canConnectDataAssociation;\n\nModelRules.prototype.canConnectAssociation = canConnectAssociation;\n\nModelRules.prototype.canMove = canMove;\n\nModelRules.prototype.canAttach = canAttach;\n\nModelRules.prototype.canReplace = canReplace;\n\nModelRules.prototype.canDrop = canDrop;\n\nModelRules.prototype.canInsert = canInsert;\n\nModelRules.prototype.canCreate = canCreate;\n\nModelRules.prototype.canConnect = canConnect;\n\nModelRules.prototype.canResize = canResize;\n\nModelRules.prototype.canCopy = canCopy;\n\n/**\n * Utility functions for rule checking\n */\n\n/**\n * Checks if given element can be used for starting connection.\n *\n * @param {Element} source\n * @return {boolean}\n */\nfunction canStartConnection(element) {\n if (nonExistingOrLabel(element)) {\n return null;\n }\n\n return isAny(element, [\n 'bpmn:FlowNode',\n 'bpmn:InteractionNode',\n 'bpmn:DataObjectReference',\n 'bpmn:DataStoreReference',\n 'bpmn:Group',\n 'bpmn:TextAnnotation'\n ]);\n}\n\nfunction nonExistingOrLabel(element) {\n return !element || isLabel(element);\n}\n\nfunction isSame(a, b) {\n return a === b;\n}\n\nfunction getOrganizationalParent(element) {\n\n do {\n if (is(element, 'bpmn:Process')) {\n return getBusinessObject(element);\n }\n\n if (is(element, 'bpmn:Participant')) {\n return (\n getBusinessObject(element).processRef ||\n getBusinessObject(element)\n );\n }\n } while ((element = element.parent));\n\n}\n\nfunction isTextAnnotation(element) {\n return is(element, 'bpmn:TextAnnotation');\n}\n\nfunction isGroup(element) {\n return is(element, 'bpmn:Group') && !element.labelTarget;\n}\n\nfunction isCompensationBoundary(element) {\n return is(element, 'bpmn:BoundaryEvent') &&\n hasEventDefinition(element, 'bpmn:CompensateEventDefinition');\n}\n\nfunction isForCompensation(e) {\n return getBusinessObject(e).isForCompensation;\n}\n\nfunction isSameOrganization(a, b) {\n var parentA = getOrganizationalParent(a),\n parentB = getOrganizationalParent(b);\n\n return parentA === parentB;\n}\n\nfunction isMessageFlowSource(element) {\n return (\n is(element, 'bpmn:InteractionNode') &&\n !is(element, 'bpmn:BoundaryEvent') && (\n !is(element, 'bpmn:Event') || (\n is(element, 'bpmn:ThrowEvent') &&\n hasEventDefinitionOrNone(element, 'bpmn:MessageEventDefinition')\n )\n )\n );\n}\n\nfunction isMessageFlowTarget(element) {\n return (\n is(element, 'bpmn:InteractionNode') &&\n !isForCompensation(element) && (\n !is(element, 'bpmn:Event') || (\n is(element, 'bpmn:CatchEvent') &&\n hasEventDefinitionOrNone(element, 'bpmn:MessageEventDefinition')\n )\n ) && !(\n is(element, 'bpmn:BoundaryEvent') &&\n !hasEventDefinition(element, 'bpmn:MessageEventDefinition')\n )\n );\n}\n\nfunction getScopeParent(element) {\n\n var parent = element;\n\n while ((parent = parent.parent)) {\n\n if (is(parent, 'bpmn:FlowElementsContainer')) {\n return getBusinessObject(parent);\n }\n\n if (is(parent, 'bpmn:Participant')) {\n return getBusinessObject(parent).processRef;\n }\n }\n\n return null;\n}\n\nfunction isSameScope(a, b) {\n var scopeParentA = getScopeParent(a),\n scopeParentB = getScopeParent(b);\n\n return scopeParentA === scopeParentB;\n}\n\nfunction hasEventDefinition(element, eventDefinition) {\n var bo = getBusinessObject(element);\n\n return !!find(bo.eventDefinitions || [], function(definition) {\n return is(definition, eventDefinition);\n });\n}\n\nfunction hasEventDefinitionOrNone(element, eventDefinition) {\n var bo = getBusinessObject(element);\n\n return (bo.eventDefinitions || []).every(function(definition) {\n return is(definition, eventDefinition);\n });\n}\n\nfunction isSequenceFlowSource(element) {\n return (\n is(element, 'bpmn:FlowNode') &&\n !is(element, 'bpmn:EndEvent') &&\n !isEventSubProcess(element) &&\n !(is(element, 'bpmn:IntermediateThrowEvent') &&\n hasEventDefinition(element, 'bpmn:LinkEventDefinition')\n ) &&\n !isCompensationBoundary(element) &&\n !isForCompensation(element)\n );\n}\n\nfunction isSequenceFlowTarget(element) {\n return (\n is(element, 'bpmn:FlowNode') &&\n !is(element, 'bpmn:StartEvent') &&\n !is(element, 'bpmn:BoundaryEvent') &&\n !isEventSubProcess(element) &&\n !(is(element, 'bpmn:IntermediateCatchEvent') &&\n hasEventDefinition(element, 'bpmn:LinkEventDefinition')\n ) &&\n !isForCompensation(element)\n );\n}\n\nfunction isEventBasedTarget(element) {\n return (\n is(element, 'bpmn:ReceiveTask') || (\n is(element, 'bpmn:IntermediateCatchEvent') && (\n hasEventDefinition(element, 'bpmn:MessageEventDefinition') ||\n hasEventDefinition(element, 'bpmn:TimerEventDefinition') ||\n hasEventDefinition(element, 'bpmn:ConditionalEventDefinition') ||\n hasEventDefinition(element, 'bpmn:SignalEventDefinition')\n )\n )\n );\n}\n\nfunction isConnection(element) {\n return element.waypoints;\n}\n\nfunction getParents(element) {\n\n var parents = [];\n\n while (element) {\n element = element.parent;\n\n if (element) {\n parents.push(element);\n }\n }\n\n return parents;\n}\n\nfunction isParent(possibleParent, element) {\n var allParents = getParents(element);\n return allParents.indexOf(possibleParent) !== -1;\n}\n\nfunction canConnect(source, target, connection) {\n\n if (nonExistingOrLabel(source) || nonExistingOrLabel(target)) {\n return null;\n }\n\n if (!is(connection, 'bpmn:DataAssociation')) {\n\n if (canConnectMessageFlow(source, target)) {\n return { type: 'bpmn:MessageFlow' };\n }\n\n if (canConnectSequenceFlow(source, target)) {\n return { type: 'bpmn:SequenceFlow' };\n }\n }\n\n var connectDataAssociation = canConnectDataAssociation(source, target);\n\n if (connectDataAssociation) {\n return connectDataAssociation;\n }\n\n if (isCompensationBoundary(source) && isForCompensation(target)) {\n return {\n type: 'bpmn:Association',\n associationDirection: 'One'\n };\n }\n\n if (canConnectAssociation(source, target)) {\n\n return {\n type: 'bpmn:Association'\n };\n }\n\n return false;\n}\n\n/**\n * Can an element be dropped into the target element\n *\n * @return {boolean}\n */\nfunction canDrop(element, target, position) {\n\n // can move labels and groups everywhere\n if (isLabel(element) || isGroup(element)) {\n return true;\n }\n\n\n // disallow to create elements on collapsed pools\n if (is(target, 'bpmn:Participant') && !isExpanded(target)) {\n return false;\n }\n\n // allow to create new participants on\n // existing collaboration and process diagrams\n if (is(element, 'bpmn:Participant')) {\n return is(target, 'bpmn:Process') || is(target, 'bpmn:Collaboration');\n }\n\n // allow moving DataInput / DataOutput within its original container only\n if (isAny(element, [ 'bpmn:DataInput', 'bpmn:DataOutput' ])) {\n\n if (element.parent) {\n return target === element.parent;\n }\n }\n\n // allow creating lanes on participants and other lanes only\n if (is(element, 'bpmn:Lane')) {\n return is(target, 'bpmn:Participant') || is(target, 'bpmn:Lane');\n }\n\n // disallow dropping boundary events which cannot replace with intermediate event\n if (is(element, 'bpmn:BoundaryEvent') && !isDroppableBoundaryEvent(element)) {\n return false;\n }\n\n // drop flow elements onto flow element containers\n // and participants\n if (is(element, 'bpmn:FlowElement') && !is(element, 'bpmn:DataStoreReference')) {\n if (is(target, 'bpmn:FlowElementsContainer')) {\n return isExpanded(target);\n }\n\n return isAny(target, [ 'bpmn:Participant', 'bpmn:Lane' ]);\n }\n\n // account for the fact that data associations are always\n // rendered and moved to top (Process or Collaboration level)\n //\n // artifacts may be placed wherever, too\n if (isAny(element, [ 'bpmn:Artifact', 'bpmn:DataAssociation', 'bpmn:DataStoreReference' ])) {\n return isAny(target, [\n 'bpmn:Collaboration',\n 'bpmn:Lane',\n 'bpmn:Participant',\n 'bpmn:Process',\n 'bpmn:SubProcess' ]);\n }\n\n if (is(element, 'bpmn:MessageFlow')) {\n return is(target, 'bpmn:Collaboration')\n || element.source.parent == target\n || element.target.parent == target;\n }\n\n return false;\n}\n\nfunction isDroppableBoundaryEvent(event) {\n return getBusinessObject(event).cancelActivity && (\n hasNoEventDefinition(event) || hasCommonBoundaryIntermediateEventDefinition(event)\n );\n}\n\nfunction isBoundaryEvent(element) {\n return !isLabel(element) && is(element, 'bpmn:BoundaryEvent');\n}\n\nfunction isLane(element) {\n return is(element, 'bpmn:Lane');\n}\n\n/**\n * We treat IntermediateThrowEvents as boundary events during create,\n * this must be reflected in the rules.\n */\nfunction isBoundaryCandidate(element) {\n if (isBoundaryEvent(element)) {\n return true;\n }\n\n if (is(element, 'bpmn:IntermediateThrowEvent') && hasNoEventDefinition(element)) {\n return true;\n }\n\n return (\n is(element, 'bpmn:IntermediateCatchEvent') &&\n hasCommonBoundaryIntermediateEventDefinition(element)\n );\n}\n\nfunction hasNoEventDefinition(element) {\n var bo = getBusinessObject(element);\n\n return bo && !(bo.eventDefinitions && bo.eventDefinitions.length);\n}\n\nfunction hasCommonBoundaryIntermediateEventDefinition(element) {\n return hasOneOfEventDefinitions(element, [\n 'bpmn:MessageEventDefinition',\n 'bpmn:TimerEventDefinition',\n 'bpmn:SignalEventDefinition',\n 'bpmn:ConditionalEventDefinition'\n ]);\n}\n\nfunction hasOneOfEventDefinitions(element, eventDefinitions) {\n return eventDefinitions.some(function(definition) {\n return hasEventDefinition(element, definition);\n });\n}\n\nfunction isReceiveTaskAfterEventBasedGateway(element) {\n return (\n is(element, 'bpmn:ReceiveTask') &&\n find(element.incoming, function(incoming) {\n return is(incoming.source, 'bpmn:EventBasedGateway');\n })\n );\n}\n\n\nfunction canAttach(elements, target, source, position) {\n\n if (!Array.isArray(elements)) {\n elements = [ elements ];\n }\n\n // only (re-)attach one element at a time\n if (elements.length !== 1) {\n return false;\n }\n\n var element = elements[0];\n\n // do not attach labels\n if (isLabel(element)) {\n return false;\n }\n\n // only handle boundary events\n if (!isBoundaryCandidate(element)) {\n return false;\n }\n\n // disallow drop on event sub processes\n if (isEventSubProcess(target)) {\n return false;\n }\n\n // only allow drop on non compensation activities\n if (!is(target, 'bpmn:Activity') || isForCompensation(target)) {\n return false;\n }\n\n // only attach to subprocess border\n if (position && !isBoundaryAttachment(position, target)) {\n return false;\n }\n\n // do not attach on receive tasks after event based gateways\n if (isReceiveTaskAfterEventBasedGateway(target)) {\n return false;\n }\n\n return 'attach';\n}\n\n\n/**\n * Defines how to replace elements for a given target.\n *\n * Returns an array containing all elements which will be replaced.\n *\n * @example\n *\n * [{ id: 'IntermediateEvent_2',\n * type: 'bpmn:StartEvent'\n * },\n * { id: 'IntermediateEvent_5',\n * type: 'bpmn:EndEvent'\n * }]\n *\n * @param {Array} elements\n * @param {Object} target\n *\n * @return {Object} an object containing all elements which have to be replaced\n */\nfunction canReplace(elements, target, position) {\n\n if (!target) {\n return false;\n }\n\n var canExecute = {\n replacements: []\n };\n\n forEach(elements, function(element) {\n\n if (!isEventSubProcess(target)) {\n\n if (is(element, 'bpmn:StartEvent') &&\n element.type !== 'label' &&\n canDrop(element, target)) {\n\n // replace a non-interrupting start event by a blank interrupting start event\n // when the target is not an event sub process\n if (!isInterrupting(element)) {\n canExecute.replacements.push({\n oldElementId: element.id,\n newElementType: 'bpmn:StartEvent'\n });\n }\n\n // replace an error/escalation/compensate start event by a blank interrupting start event\n // when the target is not an event sub process\n if (hasErrorEventDefinition(element) ||\n hasEscalationEventDefinition(element) ||\n hasCompensateEventDefinition(element)) {\n canExecute.replacements.push({\n oldElementId: element.id,\n newElementType: 'bpmn:StartEvent'\n });\n }\n\n // replace a typed start event by a blank interrupting start event\n // when the target is a sub process but not an event sub process\n if (hasOneOfEventDefinitions(element,\n [\n 'bpmn:MessageEventDefinition',\n 'bpmn:TimerEventDefinition',\n 'bpmn:SignalEventDefinition',\n 'bpmn:ConditionalEventDefinition'\n ]) &&\n is(target, 'bpmn:SubProcess')) {\n canExecute.replacements.push({\n oldElementId: element.id,\n newElementType: 'bpmn:StartEvent'\n });\n }\n }\n }\n\n if (!is(target, 'bpmn:Transaction')) {\n if (hasEventDefinition(element, 'bpmn:CancelEventDefinition') &&\n element.type !== 'label') {\n\n if (is(element, 'bpmn:EndEvent') && canDrop(element, target)) {\n canExecute.replacements.push({\n oldElementId: element.id,\n newElementType: 'bpmn:EndEvent'\n });\n }\n\n if (is(element, 'bpmn:BoundaryEvent') && canAttach(element, target, null, position)) {\n canExecute.replacements.push({\n oldElementId: element.id,\n newElementType: 'bpmn:BoundaryEvent'\n });\n }\n }\n }\n });\n\n return canExecute.replacements.length ? canExecute : false;\n}\n\nfunction canMove(elements, target) {\n\n // do not move selection containing lanes\n if (some(elements, isLane)) {\n return false;\n }\n\n // allow default move check to start move operation\n if (!target) {\n return true;\n }\n\n return elements.every(function(element) {\n return canDrop(element, target);\n });\n}\n\nfunction canCreate(shape, target, source, position) {\n\n if (!target) {\n return false;\n }\n\n if (isLabel(shape) || isGroup(shape)) {\n return true;\n }\n\n if (isSame(source, target)) {\n return false;\n }\n\n // ensure we do not drop the element\n // into source\n if (source && isParent(source, target)) {\n return false;\n }\n\n return canDrop(shape, target, position) || canInsert(shape, target, position);\n}\n\nfunction canResize(shape, newBounds) {\n if (is(shape, 'bpmn:SubProcess')) {\n return (\n isExpanded(shape) && (\n !newBounds || (newBounds.width >= 100 && newBounds.height >= 80)\n )\n );\n }\n\n if (is(shape, 'bpmn:Lane')) {\n return !newBounds || (newBounds.width >= 130 && newBounds.height >= 60);\n }\n\n if (is(shape, 'bpmn:Participant')) {\n return !newBounds || (newBounds.width >= 250 && newBounds.height >= 50);\n }\n\n if (isTextAnnotation(shape)) {\n return true;\n }\n\n if (isGroup(shape)) {\n return true;\n }\n\n return false;\n}\n\n/**\n * Check, whether one side of the relationship\n * is a text annotation.\n */\nfunction isOneTextAnnotation(source, target) {\n\n var sourceTextAnnotation = isTextAnnotation(source),\n targetTextAnnotation = isTextAnnotation(target);\n\n return (\n (sourceTextAnnotation || targetTextAnnotation) &&\n (sourceTextAnnotation !== targetTextAnnotation)\n );\n}\n\n\nfunction canConnectAssociation(source, target) {\n\n // do not connect connections\n if (isConnection(source) || isConnection(target)) {\n return false;\n }\n\n // compensation boundary events are exception\n if (isCompensationBoundary(source) && isForCompensation(target)) {\n return true;\n }\n\n // don't connect parent <-> child\n if (isParent(target, source) || isParent(source, target)) {\n return false;\n }\n\n // allow connection of associations between and \n if (isOneTextAnnotation(source, target)) {\n return true;\n }\n\n // can connect associations where we can connect\n // data associations, too (!)\n return !!canConnectDataAssociation(source, target);\n}\n\nfunction canConnectMessageFlow(source, target) {\n\n // during connect user might move mouse out of canvas\n if (getRootElement(source) && !getRootElement(target)) {\n return false;\n }\n\n return (\n isMessageFlowSource(source) &&\n isMessageFlowTarget(target) &&\n !isSameOrganization(source, target)\n );\n}\n\nfunction canConnectSequenceFlow(source, target) {\n\n if (\n isEventBasedTarget(target) &&\n target.incoming.length > 0 &&\n areOutgoingEventBasedGatewayConnections(target.incoming) &&\n !is(source, 'bpmn:EventBasedGateway')\n ) {\n return false;\n }\n\n return isSequenceFlowSource(source) &&\n isSequenceFlowTarget(target) &&\n isSameScope(source, target) &&\n !(is(source, 'bpmn:EventBasedGateway') && !isEventBasedTarget(target));\n}\n\n\nfunction canConnectDataAssociation(source, target) {\n\n if (isAny(source, [ 'bpmn:DataObjectReference', 'bpmn:DataStoreReference' ]) &&\n isAny(target, [ 'bpmn:Activity', 'bpmn:ThrowEvent' ])) {\n return { type: 'bpmn:DataInputAssociation' };\n }\n\n if (isAny(target, [ 'bpmn:DataObjectReference', 'bpmn:DataStoreReference' ]) &&\n isAny(source, [ 'bpmn:Activity', 'bpmn:CatchEvent' ])) {\n return { type: 'bpmn:DataOutputAssociation' };\n }\n\n return false;\n}\n\nfunction canInsert(shape, flow, position) {\n\n if (!flow) {\n return false;\n }\n\n if (Array.isArray(shape)) {\n if (shape.length !== 1) {\n return false;\n }\n\n shape = shape[0];\n }\n\n if (flow.source === shape ||\n flow.target === shape) {\n return false;\n }\n\n // return true if we can drop on the\n // underlying flow parent\n //\n // at this point we are not really able to talk\n // about connection rules (yet)\n\n return (\n isAny(flow, [ 'bpmn:SequenceFlow', 'bpmn:MessageFlow' ]) &&\n !isLabel(flow) &&\n is(shape, 'bpmn:FlowNode') &&\n !is(shape, 'bpmn:BoundaryEvent') &&\n canDrop(shape, flow.parent, position));\n}\n\nfunction includes(elements, element) {\n return (elements && element) && elements.indexOf(element) !== -1;\n}\n\nfunction canCopy(elements, element) {\n if (isLabel(element)) {\n return true;\n }\n\n if (is(element, 'bpmn:Lane') && !includes(elements, element.parent)) {\n return false;\n }\n\n return true;\n}\n\nfunction isOutgoingEventBasedGatewayConnection(connection) {\n\n if (connection && connection.source) {\n return is(connection.source, 'bpmn:EventBasedGateway');\n }\n}\n\nfunction areOutgoingEventBasedGatewayConnections(connections) {\n connections = connections || [];\n\n return connections.some(isOutgoingEventBasedGatewayConnection);\n}\n\nfunction getRootElement(element) {\n return getParent(element, 'bpmn:Process') || getParent(element, 'bpmn:Collaboration');\n}\n","import RulesModule from 'diagram-js/lib/features/rules';\n\nimport ModelRules from './ModelRules';\n\nexport default {\n __depends__: [\n RulesModule\n ],\n __init__: [ 'bpmnRules' ],\n bpmnRules: [ 'type', ModelRules ]\n};\n","import { getDi } from '../../compose/ComposerService';\nimport { getBusinessObject } from '../../base/BaseServices';\n\nimport {\n filter,\n map\n} from 'min-dash';\n\nimport { selfAndAllChildren } from 'diagram-js/lib/util/Elements';\n\nvar HIGH_PRIORITY = 2000;\n\nexport default function ReorderElements(eventBus, canvas) {\n\n eventBus.on('saveXML.start', HIGH_PRIORITY, orderDi);\n\n function orderDi() {\n const root = canvas.getRootElement();\n const rootDi = getBusinessObject(root).di;\n\n let elements = selfAndAllChildren([root], false);\n\n elements = filter(elements, function(element) {\n return element !== root && !element.labelTarget;\n });\n\n const diElements = map(elements, getDi);\n\n rootDi.set('planeElement', diElements);\n }\n}\n\nReorderElements.$inject = [ 'eventBus', 'canvas' ];\n","import ReorderElements from './ReorderElements';\n\nexport default {\n __init__: [\n 'reorderElements'\n ],\n reorderElements: [ 'type', ReorderElements ]\n};","import inherits from 'inherits';\n\nimport OrderingProvider from 'diagram-js/lib/features/ordering/OrderingProvider';\n\nimport {\n isAny\n} from '../modelElements/services/ModelingService';\n\nimport {\n findIndex,\n find\n} from 'min-dash';\n\n\n/**\n * a simple ordering provider that makes sure:\n *\n * (0) labels and groups are rendered always on top\n * (1) elements are ordered by a {level} property\n */\nexport default function OrderElements(eventBus, canvas, translate) {\n\n OrderingProvider.call(this, eventBus);\n\n var orders = [\n { type: 'bpmn:SubProcess', order: { level: 6 } },\n {\n type: 'bpmn:SequenceFlow',\n order: {\n level: 3,\n containers: [\n 'bpmn:Participant',\n 'bpmn:FlowElementsContainer'\n ]\n }\n },\n\n // handle DataAssociation(s) like message flows and render them always on top\n {\n type: 'bpmn:DataAssociation',\n order: {\n level: 9,\n containers: [\n 'bpmn:Collaboration',\n 'bpmn:Process'\n ]\n }\n },\n {\n type: 'bpmn:MessageFlow', order: {\n level: 9,\n containers: [ 'bpmn:Collaboration' ]\n }\n },\n {\n type: 'bpmn:Association',\n order: {\n level: 6,\n containers: [\n 'bpmn:Participant',\n 'bpmn:FlowElementsContainer',\n 'bpmn:Collaboration'\n ]\n }\n },\n { type: 'bpmn:BoundaryEvent', order: { level: 8 } },\n {\n type: 'bpmn:Group',\n order: {\n level: 10,\n containers: [\n 'bpmn:Collaboration',\n 'bpmn:Process'\n ]\n }\n },\n { type: 'bpmn:FlowElement', order: { level: 5 } },\n { type: 'bpmn:Participant', order: { level: -2 } },\n { type: 'bpmn:Lane', order: { level: -1 } }\n ];\n\n function computeOrder(element) {\n if (element.labelTarget) {\n return { level: 10 };\n }\n\n var entry = find(orders, function(o) {\n return isAny(element, [ o.type ]);\n });\n\n return entry && entry.order || { level: 1 };\n }\n\n function getOrder(element) {\n return element.order || (element.order = computeOrder(element));\n } \n\n function findActualParent(element, newParent, containers) {\n var actualParent = newParent;\n \n while (actualParent && !isAny(actualParent, containers)) {\n actualParent = actualParent.parent;\n }\n \n if (!actualParent) {\n throw new Error(translate('no parent for {element} in {parent}', {\n element: element.id,\n parent: newParent.id\n }));\n }\n \n return actualParent;\n } \n\n this.getOrdering = function(element, newParent) {\n // Render labels always on top\n if (element.labelTarget) {\n return {\n parent: canvas.getRootElement(),\n index: -1\n };\n }\n \n var elementOrder = getOrder(element);\n \n if (elementOrder.containers) {\n newParent = findActualParent(element, newParent, elementOrder.containers);\n }\n \n var currentIndex = newParent.children.indexOf(element);\n \n var insertIndex = findIndex(newParent.children, function(child) {\n if (!element.labelTarget && child.labelTarget) {\n return false;\n }\n \n return elementOrder.level < getOrder(child).level;\n });\n \n if (insertIndex !== -1 && currentIndex !== -1 && currentIndex < insertIndex) {\n insertIndex -= 1;\n }\n \n return {\n index: insertIndex,\n parent: newParent\n };\n };\n \n}\n\nOrderElements.$inject = [ 'eventBus', 'canvas', 'translate' ];\n\ninherits(OrderElements, OrderingProvider);","import translate from 'diagram-js/lib/i18n/translate';\n\nimport OrderElements from './OrderElements';\n\nexport default {\n __depends__: [\n translate\n ],\n __init__: [ 'orderElements' ],\n orderElements: [ 'type', OrderElements ]\n};","import {\n map,\n assign,\n pick\n} from 'min-dash';\n\nimport {\n isAny\n} from './services/ModelingService';\n\nimport {\n is\n} from '../../base/BaseServices';\n\n\nexport default function BpmnFactory(moddle) {\n this._model = moddle;\n}\n\nBpmnFactory.$inject = [ 'moddle' ];\n\n\nBpmnFactory.prototype._needsId = function(element) {\n return isAny(element, [\n 'bpmn:RootElement',\n 'bpmn:FlowElement',\n 'bpmn:MessageFlow',\n 'bpmn:DataAssociation',\n 'bpmn:Artifact',\n 'bpmn:Participant',\n 'bpmn:Lane',\n 'bpmn:LaneSet',\n 'bpmn:Process',\n 'bpmn:Collaboration',\n 'bpmndi:BPMNShape',\n 'bpmndi:BPMNEdge',\n 'bpmndi:BPMNDiagram',\n 'bpmndi:BPMNPlane',\n 'bpmn:Property',\n 'bpmn:CategoryValue'\n ]);\n};\n\nBpmnFactory.prototype._ensureId = function (element) {\n // generate semantic ids for elements\n // bpmn:SequenceFlow -> SequenceFlow_ID\n let prefix;\n\n if (is(element, 'bpmn:Activity')) {\n prefix = 'Activity';\n } else if (is(element, 'bpmn:Event')) {\n prefix = 'Event';\n } else if (is(element, 'bpmn:Gateway')) {\n prefix = 'Gateway';\n } else if (isAny(element, ['bpmn:SequenceFlow', 'bpmn:MessageFlow'])) {\n prefix = 'Flow';\n } else {\n prefix = (element.$type || '').replace(/^[^:]*:/g, '');\n }\n\n prefix += '_';\n\n if (!element.id && this._needsId(element)) {\n element.id = this._model.ids.nextPrefixed(prefix, element);\n }\n};\n\n\nBpmnFactory.prototype.create = function (type, attrs) {\n const element = this._model.create(type, attrs || {});\n\n this._ensureId(element);\n\n return element;\n};\n\n\nBpmnFactory.prototype.createDiLabel = function () {\n return this.create('bpmndi:BPMNLabel', {\n bounds: this.createDiBounds()\n });\n};\n\n\nBpmnFactory.prototype.createDiShape = function (semantic, bounds, attrs) {\n return this.create('bpmndi:BPMNShape', assign({\n bpmnElement: semantic,\n bounds: this.createDiBounds(bounds)\n }, attrs));\n};\n\n\n\nBpmnFactory.prototype.createDiBounds = function(bounds) {\n return this.create('dc:Bounds', bounds);\n};\n\n\nBpmnFactory.prototype.createDiWaypoints = function(waypoints) {\n var self = this;\n\n return map(waypoints, function(pos) {\n return self.createDiWaypoint(pos);\n });\n};\n\nBpmnFactory.prototype.createDiWaypoint = function(point) {\n return this.create('dc:Point', pick(point, [ 'x', 'y' ]));\n};\n\n\nBpmnFactory.prototype.createDiEdge = function(semantic, waypoints, attrs) {\n return this.create('bpmndi:BPMNEdge', assign({\n bpmnElement: semantic\n }, attrs));\n};\n\nBpmnFactory.prototype.createDiPlane = function(semantic) {\n return this.create('bpmndi:BPMNPlane', {\n bpmnElement: semantic\n });\n};","import {\n assign,\n forEach\n} from 'min-dash';\n\nimport inherits from 'inherits';\n\nimport {\n remove as collectionRemove,\n add as collectionAdd\n} from 'diagram-js/lib/util/Collections';\n\nimport {\n Label\n} from 'diagram-js/lib/model';\n\nimport {\n getBusinessObject,\n is\n} from '../../base/BaseServices';\n\nimport {\n isAny\n} from './services/ModelingService';\n\nimport CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\n/**\n * A handler responsible for updating the underlying BPMN 2.0 XML + DI\n * once changes on the diagram happen\n */\nexport default function BpmnUpdater(\n eventBus, bpmnFactory, connectionDocking,\n translate) {\n\n CommandInterceptor.call(this, eventBus);\n\n this._bpmnFactory = bpmnFactory;\n this._translate = translate;\n\n var self = this;\n\n\n\n // connection cropping //////////////////////\n\n // crop connection ends during create/update\n function cropConnection(e) {\n var context = e.context,\n hints = context.hints || {},\n connection;\n\n if (!context.cropped && hints.createElementsBehavior !== false) {\n connection = context.connection;\n connection.waypoints = connectionDocking.getCroppedWaypoints(connection);\n context.cropped = true;\n }\n }\n\n this.executed([\n 'connection.layout',\n 'connection.create'\n ], cropConnection);\n\n this.reverted([ 'connection.layout' ], function(e) {\n delete e.context.cropped;\n });\n\n\n\n // BPMN + DI update //////////////////////\n\n\n // update parent\n function updateParent(e) {\n var context = e.context;\n\n self.updateParent(context.shape || context.connection, context.oldParent);\n }\n\n function reverseUpdateParent(e) {\n var context = e.context;\n\n var element = context.shape || context.connection,\n\n // oldParent is the (old) new parent, because we are undoing\n oldParent = context.parent || context.newParent;\n\n self.updateParent(element, oldParent);\n }\n\n this.executed([\n 'shape.move',\n 'shape.create',\n 'shape.delete',\n 'connection.create',\n 'connection.move',\n 'connection.delete'\n ], ifBpmn(updateParent));\n\n this.reverted([\n 'shape.move',\n 'shape.create',\n 'shape.delete',\n 'connection.create',\n 'connection.move',\n 'connection.delete'\n ], ifBpmn(reverseUpdateParent));\n\n /*\n * ## Updating Parent\n *\n * When morphing a Process into a Collaboration or vice-versa,\n * make sure that both the *semantic* and *di* parent of each element\n * is updated.\n *\n */\n function updateRoot(event) {\n var context = event.context,\n oldRoot = context.oldRoot,\n children = oldRoot.children;\n\n forEach(children, function(child) {\n if (is(child, 'bpmn:BaseElement')) {\n self.updateParent(child);\n }\n });\n }\n\n this.executed([ 'canvas.updateRoot' ], updateRoot);\n this.reverted([ 'canvas.updateRoot' ], updateRoot);\n\n\n // update bounds\n function updateBounds(e) {\n var shape = e.context.shape;\n\n if (!is(shape, 'bpmn:BaseElement')) {\n return;\n }\n\n self.updateBounds(shape);\n }\n\n this.executed([ 'shape.move', 'shape.create', 'shape.resize' ], ifBpmn(function(event) {\n\n // exclude labels because they're handled separately during shape.changed\n if (event.context.shape.type === 'label') {\n return;\n }\n\n updateBounds(event);\n }));\n\n this.reverted([ 'shape.move', 'shape.create', 'shape.resize' ], ifBpmn(function(event) {\n\n // exclude labels because they're handled separately during shape.changed\n if (event.context.shape.type === 'label') {\n return;\n }\n\n updateBounds(event);\n }));\n\n // Handle labels separately. This is necessary, because the label bounds have to be updated\n // every time its shape changes, not only on move, create and resize.\n eventBus.on('shape.changed', function(event) {\n if (event.element.type === 'label') {\n updateBounds({ context: { shape: event.element } });\n }\n });\n\n // attach / detach connection\n function updateConnection(e) {\n self.updateConnection(e.context);\n }\n\n this.executed([\n 'connection.create',\n 'connection.move',\n 'connection.delete',\n 'connection.reconnect'\n ], ifBpmn(updateConnection));\n\n this.reverted([\n 'connection.create',\n 'connection.move',\n 'connection.delete',\n 'connection.reconnect'\n ], ifBpmn(updateConnection));\n\n\n // update waypoints\n function updateConnectionWaypoints(e) {\n self.updateConnectionWaypoints(e.context.connection);\n }\n\n this.executed([\n 'connection.layout',\n 'connection.move',\n 'connection.updateWaypoints',\n ], ifBpmn(updateConnectionWaypoints));\n\n this.reverted([\n 'connection.layout',\n 'connection.move',\n 'connection.updateWaypoints',\n ], ifBpmn(updateConnectionWaypoints));\n\n // update conditional/default flows\n this.executed('connection.reconnect', ifBpmn(function(event) {\n var context = event.context,\n connection = context.connection,\n oldSource = context.oldSource,\n newSource = context.newSource,\n connectionBo = getBusinessObject(connection),\n oldSourceBo = getBusinessObject(oldSource),\n newSourceBo = getBusinessObject(newSource);\n\n // remove condition from connection on reconnect to new source\n // if new source can NOT have condional sequence flow\n if (connectionBo.conditionExpression && !isAny(newSourceBo, [\n 'bpmn:Activity',\n 'bpmn:ExclusiveGateway',\n 'bpmn:InclusiveGateway'\n ])) {\n context.oldConditionExpression = connectionBo.conditionExpression;\n\n delete connectionBo.conditionExpression;\n }\n\n // remove default from old source flow on reconnect to new source\n // if source changed\n if (oldSource !== newSource && oldSourceBo.default === connectionBo) {\n context.oldDefault = oldSourceBo.default;\n\n delete oldSourceBo.default;\n }\n }));\n\n this.reverted('connection.reconnect', ifBpmn(function(event) {\n var context = event.context,\n connection = context.connection,\n oldSource = context.oldSource,\n newSource = context.newSource,\n connectionBo = getBusinessObject(connection),\n oldSourceBo = getBusinessObject(oldSource),\n newSourceBo = getBusinessObject(newSource);\n\n // add condition to connection on revert reconnect to new source\n if (context.oldConditionExpression) {\n connectionBo.conditionExpression = context.oldConditionExpression;\n }\n\n // add default to old source on revert reconnect to new source\n if (context.oldDefault) {\n oldSourceBo.default = context.oldDefault;\n\n delete newSourceBo.default;\n }\n }));\n\n // update attachments\n function updateAttachment(e) {\n self.updateAttachment(e.context);\n }\n\n this.executed([ 'element.updateAttachment' ], ifBpmn(updateAttachment));\n this.reverted([ 'element.updateAttachment' ], ifBpmn(updateAttachment));\n}\n\ninherits(BpmnUpdater, CommandInterceptor);\n\nBpmnUpdater.$inject = [\n 'eventBus',\n 'bpmnFactory',\n 'connectionDocking',\n 'translate'\n];\n\n\n// implementation //////////////////////\n\nBpmnUpdater.prototype.updateAttachment = function(context) {\n\n var shape = context.shape,\n businessObject = shape.businessObject,\n host = shape.host;\n\n businessObject.attachedToRef = host && host.businessObject;\n};\n\nBpmnUpdater.prototype.updateParent = function(element, oldParent) {\n\n // do not update BPMN 2.0 label parent\n if (element instanceof Label) {\n return;\n }\n\n // data stores in collaborations are handled separately by DataStoreBehavior\n if (is(element, 'bpmn:DataStoreReference') &&\n element.parent &&\n is(element.parent, 'bpmn:Collaboration')) {\n return;\n }\n\n var parentShape = element.parent;\n\n var businessObject = element.businessObject,\n parentBusinessObject = parentShape && parentShape.businessObject,\n parentDi = parentBusinessObject && parentBusinessObject.di;\n\n if (is(element, 'bpmn:FlowNode')) {\n this.updateFlowNodeRefs(businessObject, parentBusinessObject, oldParent && oldParent.businessObject);\n }\n\n if (is(element, 'bpmn:DataOutputAssociation')) {\n if (element.source) {\n parentBusinessObject = element.source.businessObject;\n } else {\n parentBusinessObject = null;\n }\n }\n\n if (is(element, 'bpmn:DataInputAssociation')) {\n if (element.target) {\n parentBusinessObject = element.target.businessObject;\n } else {\n parentBusinessObject = null;\n }\n }\n\n this.updateSemanticParent(businessObject, parentBusinessObject);\n\n if (is(element, 'bpmn:DataObjectReference') && businessObject.dataObjectRef) {\n this.updateSemanticParent(businessObject.dataObjectRef, parentBusinessObject);\n }\n\n this.updateDiParent(businessObject.di, parentDi);\n};\n\n\nBpmnUpdater.prototype.updateBounds = function(shape) {\n\n var di = shape.businessObject.di;\n\n var target = (shape instanceof Label) ? this._getLabel(di) : di;\n\n var bounds = target.bounds;\n\n if (!bounds) {\n bounds = this._bpmnFactory.createDiBounds();\n target.set('bounds', bounds);\n }\n\n assign(bounds, {\n x: shape.x,\n y: shape.y,\n width: shape.width,\n height: shape.height\n });\n};\n\nBpmnUpdater.prototype.updateFlowNodeRefs = function(businessObject, newContainment, oldContainment) {\n\n if (oldContainment === newContainment) {\n return;\n }\n\n var oldRefs, newRefs;\n\n if (is (oldContainment, 'bpmn:Lane')) {\n oldRefs = oldContainment.get('flowNodeRef');\n collectionRemove(oldRefs, businessObject);\n }\n\n if (is(newContainment, 'bpmn:Lane')) {\n newRefs = newContainment.get('flowNodeRef');\n collectionAdd(newRefs, businessObject);\n }\n};\n\n\n// update existing sourceElement and targetElement di information\nBpmnUpdater.prototype.updateDiConnection = function(di, newSource, newTarget) {\n\n if (di.sourceElement && di.sourceElement.bpmnElement !== newSource) {\n di.sourceElement = newSource && newSource.di;\n }\n\n if (di.targetElement && di.targetElement.bpmnElement !== newTarget) {\n di.targetElement = newTarget && newTarget.di;\n }\n\n};\n\n\nBpmnUpdater.prototype.updateDiParent = function(di, parentDi) {\n\n if (parentDi && !is(parentDi, 'bpmndi:BPMNPlane')) {\n parentDi = parentDi.$parent;\n }\n\n if (di.$parent === parentDi) {\n return;\n }\n\n var planeElements = (parentDi || di.$parent).get('planeElement');\n\n if (parentDi) {\n planeElements.push(di);\n di.$parent = parentDi;\n } else {\n collectionRemove(planeElements, di);\n di.$parent = null;\n }\n};\n\nfunction getDefinitions(element) {\n while (element && !is(element, 'bpmn:Definitions')) {\n element = element.$parent;\n }\n\n return element;\n}\n\nBpmnUpdater.prototype.getLaneSet = function(container) {\n\n var laneSet, laneSets;\n\n // bpmn:Lane\n if (is(container, 'bpmn:Lane')) {\n laneSet = container.childLaneSet;\n\n if (!laneSet) {\n laneSet = this._bpmnFactory.create('bpmn:LaneSet');\n container.childLaneSet = laneSet;\n laneSet.$parent = container;\n }\n\n return laneSet;\n }\n\n // bpmn:Participant\n if (is(container, 'bpmn:Participant')) {\n container = container.processRef;\n }\n\n // bpmn:FlowElementsContainer\n laneSets = container.get('laneSets');\n laneSet = laneSets[0];\n\n if (!laneSet) {\n laneSet = this._bpmnFactory.create('bpmn:LaneSet');\n laneSet.$parent = container;\n laneSets.push(laneSet);\n }\n\n return laneSet;\n};\n\nBpmnUpdater.prototype.updateSemanticParent = function(businessObject, newParent, visualParent) {\n\n var containment,\n translate = this._translate;\n\n if (businessObject.$parent === newParent) {\n return;\n }\n\n if (is(businessObject, 'bpmn:DataInput') || is(businessObject, 'bpmn:DataOutput')) {\n\n if (is(newParent, 'bpmn:Participant') && 'processRef' in newParent) {\n newParent = newParent.processRef;\n }\n\n // already in correct ioSpecification\n if ('ioSpecification' in newParent && newParent.ioSpecification === businessObject.$parent) {\n return;\n }\n }\n\n if (is(businessObject, 'bpmn:Lane')) {\n\n if (newParent) {\n newParent = this.getLaneSet(newParent);\n }\n\n containment = 'lanes';\n } else\n\n if (is(businessObject, 'bpmn:FlowElement')) {\n\n if (newParent) {\n\n if (is(newParent, 'bpmn:Participant')) {\n newParent = newParent.processRef;\n } else\n\n if (is(newParent, 'bpmn:Lane')) {\n do {\n\n // unwrap Lane -> LaneSet -> (Lane | FlowElementsContainer)\n newParent = newParent.$parent.$parent;\n } while (is(newParent, 'bpmn:Lane'));\n\n }\n }\n\n containment = 'flowElements';\n\n } else\n\n if (is(businessObject, 'bpmn:Artifact')) {\n\n while (newParent &&\n !is(newParent, 'bpmn:Process') &&\n !is(newParent, 'bpmn:SubProcess') &&\n !is(newParent, 'bpmn:Collaboration')) {\n\n if (is(newParent, 'bpmn:Participant')) {\n newParent = newParent.processRef;\n break;\n } else {\n newParent = newParent.$parent;\n }\n }\n\n containment = 'artifacts';\n } else\n\n if (is(businessObject, 'bpmn:MessageFlow')) {\n containment = 'messageFlows';\n\n } else\n\n if (is(businessObject, 'bpmn:Participant')) {\n containment = 'participants';\n\n // make sure the participants process is properly attached / detached\n // from the XML document\n\n var process = businessObject.processRef,\n definitions;\n\n if (process) {\n definitions = getDefinitions(businessObject.$parent || newParent);\n\n if (businessObject.$parent) {\n collectionRemove(definitions.get('rootElements'), process);\n process.$parent = null;\n }\n\n if (newParent) {\n collectionAdd(definitions.get('rootElements'), process);\n process.$parent = definitions;\n }\n }\n } else\n\n if (is(businessObject, 'bpmn:DataOutputAssociation')) {\n containment = 'dataOutputAssociations';\n } else\n\n if (is(businessObject, 'bpmn:DataInputAssociation')) {\n containment = 'dataInputAssociations';\n }\n\n if (!containment) {\n throw new Error(translate(\n 'no parent for {element} in {parent}',\n {\n element: businessObject.id,\n parent: newParent.id\n }\n ));\n }\n\n var children;\n\n if (businessObject.$parent) {\n\n // remove from old parent\n children = businessObject.$parent.get(containment);\n collectionRemove(children, businessObject);\n }\n\n if (!newParent) {\n businessObject.$parent = null;\n } else {\n\n // add to new parent\n children = newParent.get(containment);\n children.push(businessObject);\n businessObject.$parent = newParent;\n }\n\n if (visualParent) {\n var diChildren = visualParent.get(containment);\n\n collectionRemove(children, businessObject);\n\n if (newParent) {\n\n if (!diChildren) {\n diChildren = [];\n newParent.set(containment, diChildren);\n }\n\n diChildren.push(businessObject);\n }\n }\n};\n\n\nBpmnUpdater.prototype.updateConnectionWaypoints = function(connection) {\n connection.businessObject.di.set('waypoint', this._bpmnFactory.createDiWaypoints(connection.waypoints));\n};\n\n\nBpmnUpdater.prototype.updateConnection = function(context) {\n\n var connection = context.connection,\n businessObject = getBusinessObject(connection),\n newSource = getBusinessObject(connection.source),\n newTarget = getBusinessObject(connection.target),\n visualParent;\n\n if (!is(businessObject, 'bpmn:DataAssociation')) {\n\n var inverseSet = is(businessObject, 'bpmn:SequenceFlow');\n\n if (businessObject.sourceRef !== newSource) {\n if (inverseSet) {\n collectionRemove(businessObject.sourceRef && businessObject.sourceRef.get('outgoing'), businessObject);\n\n if (newSource && newSource.get('outgoing')) {\n newSource.get('outgoing').push(businessObject);\n }\n }\n\n businessObject.sourceRef = newSource;\n }\n\n if (businessObject.targetRef !== newTarget) {\n if (inverseSet) {\n collectionRemove(businessObject.targetRef && businessObject.targetRef.get('incoming'), businessObject);\n\n if (newTarget && newTarget.get('incoming')) {\n newTarget.get('incoming').push(businessObject);\n }\n }\n\n businessObject.targetRef = newTarget;\n }\n } else\n\n if (is(businessObject, 'bpmn:DataInputAssociation')) {\n\n // handle obnoxious isMsome sourceRef\n businessObject.get('sourceRef')[0] = newSource;\n\n visualParent = context.parent || context.newParent || newTarget;\n\n this.updateSemanticParent(businessObject, newTarget, visualParent);\n } else\n\n if (is(businessObject, 'bpmn:DataOutputAssociation')) {\n visualParent = context.parent || context.newParent || newSource;\n\n this.updateSemanticParent(businessObject, newSource, visualParent);\n\n // targetRef = new target\n businessObject.targetRef = newTarget;\n }\n\n this.updateConnectionWaypoints(connection);\n\n this.updateDiConnection(businessObject.di, newSource, newTarget);\n};\n\n\n// helpers //////////////////////\n\nBpmnUpdater.prototype._getLabel = function(di) {\n if (!di.label) {\n di.label = this._bpmnFactory.createDiLabel();\n }\n\n return di.label;\n};\n\n\n/**\n * Make sure the event listener is only called\n * if the touched element is a BPMN element.\n *\n * @param {Function} fn\n * @return {Function} guarded function\n */\nfunction ifBpmn(fn) {\n\n return function(event) {\n\n var context = event.context,\n element = context.shape || context.connection;\n\n if (is(element, 'bpmn:BaseElement')) {\n fn(event);\n }\n };\n}\n","import {\n assign,\n forEach,\n isObject\n} from 'min-dash';\n\nimport inherits from 'inherits';\n\nimport {\n is,\n isExpanded,\n DEFAULT_LABEL_SIZE\n} from '../../base/BaseServices';\n\nimport BaseElementFactory from 'diagram-js/lib/core/ElementFactory';\n\n\n/**\n * A bpmn-aware factory for diagram-js shapes\n */\nexport default function ElementFactory(bpmnFactory, moddle, translate) {\n BaseElementFactory.call(this);\n\n this._bpmnFactory = bpmnFactory;\n this._moddle = moddle;\n this._translate = translate;\n}\n\ninherits(ElementFactory, BaseElementFactory);\n\nElementFactory.$inject = [\n 'bpmnFactory',\n 'moddle',\n 'translate'\n];\n\nElementFactory.prototype.baseCreate = BaseElementFactory.prototype.create;\n\nElementFactory.prototype.create = function(elementType, attrs) {\n\n // no special magic for labels,\n // we assume their businessObjects have already been created\n // and wired via attrs\n if (elementType === 'label') {\n return this.baseCreate(elementType, assign({ type: 'label' }, DEFAULT_LABEL_SIZE, attrs));\n }\n\n return this.createBpmnElement(elementType, attrs);\n};\n\nElementFactory.prototype.createBpmnElement = function(elementType, attrs) {\n var size,\n translate = this._translate;\n\n attrs = attrs || {};\n\n var businessObject = attrs.businessObject;\n\n if (!businessObject) {\n if (!attrs.type) {\n throw new Error(translate('no shape type specified'));\n }\n\n businessObject = this._bpmnFactory.create(attrs.type);\n }\n\n if (!businessObject.di) {\n if (elementType === 'root') {\n businessObject.di = this._bpmnFactory.createDiPlane(businessObject, [], {\n id: businessObject.id + '_di'\n });\n } else\n if (elementType === 'connection') {\n businessObject.di = this._bpmnFactory.createDiEdge(businessObject, [], {\n id: businessObject.id + '_di'\n });\n } else {\n businessObject.di = this._bpmnFactory.createDiShape(businessObject, {}, {\n id: businessObject.id + '_di'\n });\n }\n }\n\n if (is(businessObject, 'bpmn:Group')) {\n attrs = assign({\n isFrame: true\n }, attrs);\n }\n\n if (attrs.di) {\n assign(businessObject.di, attrs.di);\n\n delete attrs.di;\n }\n\n applyAttributes(businessObject, attrs, [\n 'processRef',\n 'isInterrupting',\n 'associationDirection',\n 'isForCompensation'\n ]);\n\n if (attrs.isExpanded) {\n applyAttribute(businessObject.di, attrs, 'isExpanded');\n }\n\n if (is(businessObject, 'bpmn:ExclusiveGateway')) {\n businessObject.di.isMarkerVisible = true;\n }\n\n var eventDefinitions,\n newEventDefinition;\n\n if (attrs.eventDefinitionType) {\n eventDefinitions = businessObject.get('eventDefinitions') || [];\n newEventDefinition = this._bpmnFactory.create(attrs.eventDefinitionType, attrs.eventDefinitionAttrs);\n\n if (attrs.eventDefinitionType === 'bpmn:ConditionalEventDefinition') {\n newEventDefinition.condition = this._bpmnFactory.create('bpmn:FormalExpression');\n }\n\n eventDefinitions.push(newEventDefinition);\n\n newEventDefinition.$parent = businessObject;\n businessObject.eventDefinitions = eventDefinitions;\n\n delete attrs.eventDefinitionType;\n }\n\n size = this._getDefaultSize(businessObject);\n\n attrs = assign({\n businessObject: businessObject,\n id: businessObject.id\n }, size, attrs);\n\n return this.baseCreate(elementType, attrs);\n};\n\n\nElementFactory.prototype._getDefaultSize = function(semantic) {\n\n if (is(semantic, 'bpmn:SubProcess')) {\n\n if (isExpanded(semantic)) {\n return { width: 350, height: 200 };\n } else {\n return { width: 100, height: 80 };\n }\n }\n\n if (is(semantic, 'bpmn:Task')) {\n return { width: 100, height: 80 };\n }\n\n if (is(semantic, 'bpmn:Gateway')) {\n return { width: 50, height: 50 };\n }\n\n if (is(semantic, 'bpmn:Event')) {\n return { width: 36, height: 36 };\n }\n\n if (is(semantic, 'bpmn:Participant')) {\n if (isExpanded(semantic)) {\n return { width: 600, height: 250 };\n } else {\n return { width: 400, height: 60 };\n }\n }\n\n if (is(semantic, 'bpmn:Lane')) {\n return { width: 400, height: 100 };\n }\n\n if (is(semantic, 'bpmn:DataObjectReference')) {\n return { width: 36, height: 50 };\n }\n\n if (is(semantic, 'bpmn:DataStoreReference')) {\n return { width: 50, height: 50 };\n }\n\n if (is(semantic, 'bpmn:TextAnnotation')) {\n return { width: 100, height: 30 };\n }\n\n if (is(semantic, 'bpmn:Group')) {\n return { width: 300, height: 300 };\n }\n\n return { width: 100, height: 80 };\n};\n\n\n/**\n * Create participant.\n *\n * @param {boolean|Object} [attrs] attrs\n *\n * @returns {djs.model.Shape}\n */\nElementFactory.prototype.createParticipantShape = function(attrs) {\n\n if (!isObject(attrs)) {\n attrs = { isExpanded: attrs };\n }\n\n attrs = assign({ type: 'bpmn:Participant' }, attrs || {});\n\n // participants are expanded by default\n if (attrs.isExpanded !== false) {\n attrs.processRef = this._bpmnFactory.create('bpmn:Process');\n }\n\n return this.createShape(attrs);\n};\n\n\n// helpers //////////////////////\n\n/**\n * Apply attributes from a map to the given element,\n * remove attribute from the map on application.\n *\n * @param {Base} element\n * @param {Object} attrs (in/out map of attributes)\n * @param {Array} attributeNames name of attributes to apply\n */\nfunction applyAttributes(element, attrs, attributeNames) {\n\n forEach(attributeNames, function(property) {\n if (attrs[property] !== undefined) {\n applyAttribute(element, attrs, property);\n }\n });\n}\n\n/**\n * Apply named property to element and drain it from the attrs\n * collection.\n *\n * @param {Base} element\n * @param {Object} attrs (in/out map of attributes)\n * @param {string} attributeName to apply\n */\nfunction applyAttribute(element, attrs, attributeName) {\n element[attributeName] = attrs[attributeName];\n\n delete attrs[attributeName];\n}","import {\n reduce,\n keys,\n forEach,\n assign\n} from 'min-dash';\n\nimport {\n getBusinessObject\n} from '../../../base/BaseServices';\n\nconst DEFAULT_FLOW = 'default';\nconst ID = 'id';\nconst DI = 'di';\n\nconst NULL_DIMENSIONS = {\n width: 0,\n height: 0\n};\n\nexport default function UpdatePropertiesHandler(\n elementRegistry, moddle, translate,\n modeling, textRenderer\n) {\n this._elementRegistry = elementRegistry;\n this._moddle = moddle;\n this._translate = translate;\n this._modeling = modeling;\n this._textRenderer = textRenderer;\n}\n\nUpdatePropertiesHandler.$inject = [\n 'elementRegistry',\n 'moddle',\n 'translate',\n 'modeling',\n 'textRenderer'\n];\n\nUpdatePropertiesHandler.prototype.execute = function (context) {\n const element = context.element;\n const changed = [element];\n const translate = this._translate;\n\n if (!element) {\n throw new Error(translate('element required'));\n }\n\n const elementRegistry = this._elementRegistry;\n const ids = this._moddle.ids;\n \n const businessObject = element.businessObject;\n const properties = unwrapBusinessObjects(context.properties);\n const oldProperties = context.oldProperties || getProperties(businessObject, properties);\n\n if (isIdChange(properties, businessObject)) {\n ids.unclaim(businessObject[ID]);\n elementRegistry.updateId(element, properties[ID]);\n ids.claim(properties[ID], businessObject);\n }\n\n if (DEFAULT_FLOW in properties) {\n if (properties[DEFAULT_FLOW]) {\n changed.push(elementRegistry.get(properties[DEFAULT_FLOW].id));\n }\n\n if (businessObject[DEFAULT_FLOW]) {\n changed.push(elementRegistry.get(businessObject[DEFAULT_FLOW].id));\n }\n }\n\n setProperties(businessObject, properties);\n\n context.oldProperties = oldProperties;\n context.changed = changed;\n\n return changed;\n};\n\nUpdatePropertiesHandler.prototype.postExecute = function (context) {\n const element = context.element;\n const label = element.label;\n\n const text = label && getBusinessObject(label).name;\n\n if (!text) {\n return;\n }\n\n const newLabelBounds = this._textRenderer.getExternalLabelBounds(label, text);\n\n this._modeling.resizeShape(label, newLabelBounds, NULL_DIMENSIONS);\n};\n\nUpdatePropertiesHandler.prototype.revert = function (context) {\n const element = context.element;\n const properties = context.properties;\n const oldProperties = context.oldProperties;\n const businessObject = element.businessObject;\n const elementRegistry = this._elementRegistry;\n const ids = this._moddle.ids;\n\n setProperties(businessObject, oldProperties);\n\n if (isIdChange(properties, businessObject)) {\n ids.unclaim(properties[ID]);\n elementRegistry.updateId(element, oldProperties[ID]);\n ids.claim(oldProperties[ID], businessObject);\n }\n\n return context.changed;\n};\n\nfunction isIdChange(properties, businessObject) {\n return ID in properties && properties[ID] !== businessObject[ID];\n}\n\nfunction getProperties(businessObject, properties) {\n const propertyNames = keys(properties);\n\n return reduce(propertyNames, function (result, key) {\n if (key !== DI) {\n result[key] = businessObject.get(key);\n } else {\n result[key] = getDiProperties(businessObject.di, keys(properties.di));\n }\n\n return result;\n }, {});\n}\n\nfunction getDiProperties(di, propertyNames) {\n return reduce(propertyNames, function (result, key) {\n result[key] = di.get(key);\n\n return result;\n }, {});\n}\n\nfunction setProperties(businessObject, properties) {\n forEach(properties, function (value, key) {\n if (key !== DI) {\n businessObject.set(key, value);\n } else {\n if (businessObject.di) {\n setDiProperties(businessObject.di, value);\n }\n }\n });\n}\n\nfunction setDiProperties(di, properties) {\n forEach(properties, function (value, key) {\n di.set(key, value);\n });\n}\n\nconst referencePropertyNames = ['default'];\n\nfunction unwrapBusinessObjects(properties) {\n const unwrappedProps = assign({}, properties);\n\n referencePropertyNames.forEach(function (name) {\n if (name in properties) {\n unwrappedProps[name] = getBusinessObject(unwrappedProps[name]);\n }\n });\n\n return unwrappedProps;\n}\n","import {\n add as collectionAdd,\n remove as collectionRemove\n} from 'diagram-js/lib/util/Collections';\n\n\nexport default function UpdateCanvasRootHandler(canvas, modeling) {\n this._canvas = canvas;\n this._modeling = modeling;\n}\n\nUpdateCanvasRootHandler.$inject = [\n 'canvas',\n 'modeling'\n];\n\n\nUpdateCanvasRootHandler.prototype.execute = function (context) {\n const { _canvas: canvas } = this;\n const { newRoot } = context;\n\n const newRootBusinessObject = newRoot.businessObject;\n const oldRoot = canvas.getRootElement();\n const oldRootBusinessObject = oldRoot.businessObject;\n const bpmnDefinitions = oldRootBusinessObject.$parent;\n const diPlane = oldRootBusinessObject.di;\n\n // (1) replace process old <> new root\n canvas.setRootElement(newRoot, true);\n\n // (2) update root elements\n collectionAdd(bpmnDefinitions.rootElements, newRootBusinessObject);\n newRootBusinessObject.$parent = bpmnDefinitions;\n\n collectionRemove(bpmnDefinitions.rootElements, oldRootBusinessObject);\n oldRootBusinessObject.$parent = null;\n\n // (3) wire di\n oldRootBusinessObject.di = null;\n\n diPlane.bpmnElement = newRootBusinessObject;\n newRootBusinessObject.di = diPlane;\n\n context.oldRoot = oldRoot;\n};\n\n\n\nUpdateCanvasRootHandler.prototype.revert = function (context) {\n const { _canvas: canvas } = this;\n const { newRoot, oldRoot } = context;\n\n const newRootBusinessObject = newRoot.businessObject;\n const oldRootBusinessObject = oldRoot.businessObject;\n const bpmnDefinitions = newRootBusinessObject.$parent;\n const diPlane = newRootBusinessObject.di;\n\n // (1) replace process old <> new root\n canvas.setRootElement(oldRoot, true);\n\n // (2) update root elements\n collectionRemove(bpmnDefinitions.rootElements, newRootBusinessObject);\n newRootBusinessObject.$parent = null;\n\n collectionAdd(bpmnDefinitions.rootElements, oldRootBusinessObject);\n oldRootBusinessObject.$parent = bpmnDefinitions;\n\n // (3) wire di\n newRootBusinessObject.di = null;\n\n diPlane.bpmnElement = oldRootBusinessObject;\n oldRootBusinessObject.di = diPlane;\n};\n","import {\n filter\n} from 'min-dash';\n\nimport {\n eachElement\n} from 'diagram-js/lib/util/Elements';\n\nimport {\n getLanesRoot,\n getChildLanes,\n LANE_INDENTATION\n} from '../services/LaneService';\n\n\n/**\n * A handler that allows us to add a new lane\n * above or below an existing one.\n *\n * @param {Modeling} modeling\n * @param {SpaceTool} spaceTool\n */\nexport default function AddLaneHandler(modeling, spaceTool) {\n this._modeling = modeling;\n this._spaceTool = spaceTool;\n}\n\nAddLaneHandler.$inject = [\n 'modeling',\n 'spaceTool'\n];\n\n\nAddLaneHandler.prototype.preExecute = function(context) {\n\n var spaceTool = this._spaceTool,\n modeling = this._modeling;\n\n var shape = context.shape,\n location = context.location;\n\n var lanesRoot = getLanesRoot(shape);\n\n var isRoot = lanesRoot === shape,\n laneParent = isRoot ? shape : shape.parent;\n\n var existingChildLanes = getChildLanes(laneParent);\n\n // (0) add a lane if we currently got none and are adding to root\n if (!existingChildLanes.length) {\n modeling.createShape({ type: 'bpmn:Lane' }, {\n x: shape.x + LANE_INDENTATION,\n y: shape.y,\n width: shape.width - LANE_INDENTATION,\n height: shape.height\n }, laneParent);\n }\n\n // (1) collect affected elements to create necessary space\n var allAffected = [];\n\n eachElement(lanesRoot, function(element) {\n allAffected.push(element);\n\n // handle element labels in the diagram root\n if (element.label) {\n allAffected.push(element.label);\n }\n\n if (element === shape) {\n return [];\n }\n\n return filter(element.children, function(c) {\n return c !== shape;\n });\n });\n\n var offset = location === 'top' ? -120 : 120,\n lanePosition = location === 'top' ? shape.y : shape.y + shape.height,\n spacePos = lanePosition + (location === 'top' ? 10 : -10),\n direction = location === 'top' ? 'n' : 's';\n\n var adjustments = spaceTool.calculateAdjustments(allAffected, 'y', offset, spacePos);\n\n spaceTool.makeSpace(\n adjustments.movingShapes,\n adjustments.resizingShapes,\n { x: 0, y: offset },\n direction,\n spacePos\n );\n\n // (2) create new lane at open space\n context.newLane = modeling.createShape({ type: 'bpmn:Lane' }, {\n x: shape.x + (isRoot ? LANE_INDENTATION : 0),\n y: lanePosition - (location === 'top' ? 120 : 0),\n width: shape.width - (isRoot ? LANE_INDENTATION : 0),\n height: 120\n }, laneParent);\n};\n","import {\n getChildLanes,\n LANE_INDENTATION\n} from '../services/LaneService';\n\n\n/**\n * A handler that splits a lane into a number of sub-lanes,\n * creating new sub lanes, if necessary.\n *\n * @param {Modeling} modeling\n */\nexport default function SplitLaneHandler(modeling, translate) {\n this._modeling = modeling;\n this._translate = translate;\n}\n\nSplitLaneHandler.$inject = [\n 'modeling',\n 'translate'\n];\n\n\nSplitLaneHandler.prototype.preExecute = function (context) {\n const { _modeling: modeling, _translate: translate } = this;\n const { shape, count: newLanesCount } = context;\n\n const childLanes = getChildLanes(shape);\n const existingLanesCount = childLanes.length;\n\n if (existingLanesCount > newLanesCount) {\n throw new Error(translate('more than {count} child lanes', { count: newLanesCount }));\n }\n\n const newLanesHeight = Math.round(shape.height / newLanesCount);\n\n for (let idx = 0; idx < newLanesCount; idx++) {\n const laneY = shape.y + idx * newLanesHeight;\n const laneHeight = idx === newLanesCount - 1 ? shape.height - newLanesHeight * idx : newLanesHeight;\n\n const laneBounds = {\n x: shape.x + LANE_INDENTATION,\n y: laneY,\n width: shape.width - LANE_INDENTATION,\n height: laneHeight\n };\n\n if (idx < existingLanesCount) {\n // resize existing lane\n modeling.resizeShape(childLanes[idx], laneBounds);\n } else {\n // create a new lane at position\n const newLaneAttrs = {\n type: 'bpmn:Lane'\n };\n\n modeling.createShape(newLaneAttrs, laneBounds, shape);\n }\n }\n};\n","import { is } from '../../../base/BaseServices';\n\nimport {\n getLanesRoot,\n computeLanesResize\n} from '../services/LaneService';\n\nimport {\n eachElement\n} from 'diagram-js/lib/util/Elements';\n\nimport {\n asTRBL\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n substractTRBL\n} from 'diagram-js/lib/features/resize/ResizeUtil';\n\n\n/**\n * A handler that resizes a lane.\n *\n * @param {Modeling} modeling\n */\nexport default function ResizeLaneHandler(modeling, spaceTool) {\n this._modeling = modeling;\n this._spaceTool = spaceTool;\n}\n\nResizeLaneHandler.$inject = [\n 'modeling',\n 'spaceTool'\n];\n\n\nResizeLaneHandler.prototype.preExecute = function (context) {\n const { shape, newBounds, balanced } = context;\n\n if (balanced !== false) {\n this.resizeBalanced(shape, newBounds);\n } else {\n this.resizeSpace(shape, newBounds);\n }\n};\n\n\n/**\n * Resize balanced, adjusting next / previous lane sizes.\n *\n * @param {djs.model.Shape} shape\n * @param {Bounds} newBounds\n */\nResizeLaneHandler.prototype.resizeBalanced = function (shape, newBounds) {\n const { _modeling: modeling } = this;\n\n const resizeNeeded = computeLanesResize(shape, newBounds);\n\n // resize the lane\n modeling.resizeShape(shape, newBounds);\n\n // resize other lanes as needed\n resizeNeeded.forEach(({ shape, newBounds }) => {\n modeling.resizeShape(shape, newBounds);\n });\n};\n\n\n/**\n * Resize, making actual space and moving below / above elements.\n *\n * @param {djs.model.Shape} shape\n * @param {Bounds} newBounds\n */\nResizeLaneHandler.prototype.resizeSpace = function (shape, newBounds) {\n const { _spaceTool: spaceTool } = this;\n\n const shapeTrbl = asTRBL(shape);\n const newTrbl = asTRBL(newBounds);\n\n const trblDiff = substractTRBL(newTrbl, shapeTrbl);\n\n const lanesRoot = getLanesRoot(shape);\n\n const { movingShapes, resizingShapes } = calculateAffectedShapes(lanesRoot, shape);\n\n if (trblDiff.bottom || trblDiff.top) {\n const change = trblDiff.bottom || trblDiff.top;\n const spacePos = shape.y + (trblDiff.bottom ? shape.height : 0) + (trblDiff.bottom ? -10 : 10);\n const direction = trblDiff.bottom ? 's' : 'n';\n const offset = trblDiff.top > 0 || trblDiff.bottom < 0 ? -change : change;\n\n const adjustments = spaceTool.calculateAdjustments(movingShapes, 'y', offset, spacePos);\n\n spaceTool.makeSpace(adjustments.movingShapes, adjustments.resizingShapes, { x: 0, y: change }, direction);\n }\n\n if (trblDiff.left || trblDiff.right) {\n const change = trblDiff.right || trblDiff.left;\n const spacePos = shape.x + (trblDiff.right ? shape.width : 0) + (trblDiff.right ? -10 : 100);\n const direction = trblDiff.right ? 'e' : 'w';\n const offset = trblDiff.left > 0 || trblDiff.right < 0 ? -change : change;\n\n const adjustments = spaceTool.calculateAdjustments(resizingShapes, 'x', offset, spacePos);\n\n spaceTool.makeSpace(adjustments.movingShapes, adjustments.resizingShapes, { x: change, y: 0 }, direction);\n }\n};\n\nfunction calculateAffectedShapes(lanesRoot, shape) {\n const allAffected = [];\n const allLanes = [];\n\n eachElement(lanesRoot, function (element) {\n allAffected.push(element);\n\n if (is(element, 'bpmn:Lane') || is(element, 'bpmn:Participant')) {\n allLanes.push(element);\n }\n\n return element.children;\n });\n\n return {\n movingShapes: allAffected,\n resizingShapes: allLanes,\n };\n}","import {\n collectLanes,\n getLanesRoot\n} from '../services/LaneService';\n\nimport {\n is\n} from '../../../base/BaseServices';\n\nimport {\n add as collectionAdd,\n remove as collectionRemove\n} from 'diagram-js/lib/util/Collections';\n\nimport {\n asTRBL\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nvar FLOW_NODE_REFS_ATTR = 'flowNodeRef',\n LANES_ATTR = 'lanes';\n\n\n/**\n * A handler that updates lane refs on changed elements\n */\nexport default function UpdateFlowNodeRefsHandler(elementRegistry) {\n this._elementRegistry = elementRegistry;\n}\n\nUpdateFlowNodeRefsHandler.$inject = [\n 'elementRegistry'\n];\n\n\nUpdateFlowNodeRefsHandler.prototype.computeUpdates = function(flowNodeShapes, laneShapes) {\n\n var handledNodes = [];\n\n var updates = [];\n\n var participantCache = {};\n\n var allFlowNodeShapes = [];\n\n function isInLaneShape(element, laneShape) {\n const laneTrbl = asTRBL(laneShape);\n \n const elementMid = {\n x: element.x + element.width / 2,\n y: element.y + element.height / 2\n };\n \n return (\n elementMid.x > laneTrbl.left &&\n elementMid.x < laneTrbl.right &&\n elementMid.y > laneTrbl.top &&\n elementMid.y < laneTrbl.bottom\n );\n } \n\n function addFlowNodeShape(flowNodeShape) {\n if (!handledNodes.includes(flowNodeShape)) {\n allFlowNodeShapes.push(flowNodeShape);\n handledNodes.push(flowNodeShape);\n }\n } \n\n function getAllLaneShapes(flowNodeShape) {\n const root = getLanesRoot(flowNodeShape);\n \n if (!participantCache[root.id]) {\n participantCache[root.id] = collectLanes(root);\n }\n \n return participantCache[root.id];\n } \n\n function getNewLanes(flowNodeShape) {\n if (!flowNodeShape.parent) {\n return [];\n }\n \n const allLaneShapes = getAllLaneShapes(flowNodeShape);\n \n return allLaneShapes\n .filter(l => isInLaneShape(flowNodeShape, l))\n .map(shape => shape.businessObject);\n } \n\n laneShapes.forEach(laneShape => {\n const root = getLanesRoot(laneShape);\n \n if (!root || handledNodes.includes(root)) {\n return;\n }\n \n const children = root.children.filter(c => is(c, 'bpmn:FlowNode'));\n \n children.forEach(addFlowNodeShape);\n \n handledNodes.push(root);\n }); \n\n flowNodeShapes.forEach(addFlowNodeShape);\n\n\n allFlowNodeShapes.forEach(flowNodeShape => {\n const flowNode = flowNodeShape.businessObject;\n \n const lanes = flowNode.get(LANES_ATTR);\n const remove = [...lanes];\n const add = getNewLanes(flowNodeShape);\n \n updates.push({ flowNode, remove, add });\n }); \n\n laneShapes.forEach(laneShape => {\n const lane = laneShape.businessObject;\n \n // lane got removed XX-)\n if (!laneShape.parent) {\n lane.get(FLOW_NODE_REFS_ATTR).forEach(flowNode => {\n updates.push({ flowNode, remove: [lane], add: [] });\n });\n }\n }); \n\n return updates;\n};\n\nUpdateFlowNodeRefsHandler.prototype.execute = function(context) {\n\n var updates = context.updates;\n\n if (!updates) {\n updates = context.updates = this.computeUpdates(context.flowNodeShapes, context.laneShapes);\n }\n\n\n updates.forEach(update => {\n const { flowNode, remove, add } = update;\n const lanes = flowNode.get(LANES_ATTR);\n \n // unwire old\n remove.forEach(oldLane => {\n collectionRemove(lanes, oldLane);\n collectionRemove(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode);\n });\n \n // wire new\n add.forEach(newLane => {\n collectionAdd(lanes, newLane);\n collectionAdd(newLane.get(FLOW_NODE_REFS_ATTR), flowNode);\n });\n }); \n};\n\n\nUpdateFlowNodeRefsHandler.prototype.revert = function(context) {\n\n var updates = context.updates;\n\n updates.forEach(update => {\n const { flowNode, add, remove } = update;\n const lanes = flowNode.get(LANES_ATTR);\n \n // unwire new\n add.forEach(newLane => {\n collectionRemove(lanes, newLane);\n collectionRemove(newLane.get(FLOW_NODE_REFS_ATTR), flowNode);\n });\n \n // wire old\n remove.forEach(oldLane => {\n collectionAdd(lanes, oldLane);\n collectionAdd(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode);\n });\n });\n \n};\n","export default function IdClaimHandler(moddle) {\n this._moddle = moddle;\n}\n\nIdClaimHandler.$inject = [ 'moddle' ];\n\n\nIdClaimHandler.prototype.execute = function (context) {\n const { ids, id, element, claiming } = this._moddle;\n\n if (claiming) {\n ids.claim(id, element);\n } else {\n ids.unclaim(id);\n }\n};\n\n\n/**\n * Command revert implementation.\n */\nIdClaimHandler.prototype.revert = function (context) {\n const { ids, id, element, claiming } = this._moddle;\n\n if (claiming) {\n ids.unclaim(id);\n } else {\n ids.claim(id, element);\n }\n};\n\n\n","import {\r\n assign,\r\n forEach\r\n} from 'min-dash';\r\n\r\n\r\nvar DEFAULT_COLORS = {\r\n fill: undefined,\r\n stroke: undefined\r\n};\r\n\r\n\r\nexport default function SetColorHandler(commandStack) {\r\n this._commandStack = commandStack;\r\n}\r\n\r\nSetColorHandler.$inject = [\r\n 'commandStack'\r\n];\r\n\r\n\r\nSetColorHandler.prototype.postExecute = function (context) {\r\n const { elements, colors = DEFAULT_COLORS } = context;\r\n const { _commandStack: commandStack } = this;\r\n\r\n const di = {};\r\n \r\n if ('fill' in colors) {\r\n assign(di, { fill: colors.fill });\r\n }\r\n\r\n if ('stroke' in colors) {\r\n assign(di, { stroke: colors.stroke });\r\n }\r\n\r\n forEach(elements, function(element) {\r\n commandStack.execute('element.updateProperties', {\r\n element,\r\n properties: { di }\r\n });\r\n });\r\n};\r\n","import {\n setLabel,\n getLabel\n} from '../LabelService';\n\nimport {\n getExternalLabelMid,\n isLabelExternal,\n hasExternalLabel,\n isLabel,\n is\n} from '../../../base/BaseServices';\n\nvar NULL_DIMENSIONS = {\n width: 0,\n height: 0\n};\n\n\n/**\n * A handler that updates the text of a BPMN element.\n */\nexport default function UpdateLabelHandler(modeling, textRenderer) {\n\n /**\n * Set the label and return the changed elements.\n *\n * Element parameter can be label itself or connection (i.e. sequence flow).\n *\n * @param {djs.model.Base} element\n * @param {string} text\n */\n function setText(element, text) {\n\n // external label if present\n var label = element.label || element;\n\n var labelTarget = element.labelTarget || element;\n\n setLabel(label, text, labelTarget !== label);\n\n return [ label, labelTarget ];\n }\n\n function preExecute(ctx) {\n var element = ctx.element,\n businessObject = element.businessObject,\n newLabel = ctx.newLabel;\n\n if (!isLabel(element)\n && isLabelExternal(element)\n && !hasExternalLabel(element)\n && !isEmptyText(newLabel)) {\n\n // create label\n var paddingTop = 7;\n\n var labelCenter = getExternalLabelMid(element);\n\n labelCenter = {\n x: labelCenter.x,\n y: labelCenter.y + paddingTop\n };\n\n modeling.createLabel(element, labelCenter, {\n id: businessObject.id + '_label',\n businessObject: businessObject\n });\n }\n }\n\n function execute(ctx) {\n ctx.oldLabel = getLabel(ctx.element);\n return setText(ctx.element, ctx.newLabel);\n }\n\n function revert(ctx) {\n return setText(ctx.element, ctx.oldLabel);\n }\n\n function postExecute(ctx) {\n var element = ctx.element,\n label = element.label || element,\n newLabel = ctx.newLabel,\n newBounds = ctx.newBounds,\n hints = ctx.hints || {};\n\n // ignore internal labels for elements except text annotations\n if (!isLabel(label) && !is(label, 'bpmn:TextAnnotation')) {\n return;\n }\n\n if (isLabel(label) && isEmptyText(newLabel)) {\n\n if (hints.removeShape !== false) {\n modeling.removeShape(label, { unsetLabel: false });\n }\n\n return;\n }\n\n var text = getLabel(label);\n\n // resize element based on label _or_ pre-defined bounds\n if (typeof newBounds === 'undefined') {\n newBounds = textRenderer.getExternalLabelBounds(label, text);\n }\n\n // setting newBounds to false or _null_ will\n // disable the postExecute resize operation\n if (newBounds) {\n modeling.resizeShape(label, newBounds, NULL_DIMENSIONS);\n }\n }\n\n // API\n\n this.preExecute = preExecute;\n this.execute = execute;\n this.revert = revert;\n this.postExecute = postExecute;\n}\n\nUpdateLabelHandler.$inject = [\n 'modeling',\n 'textRenderer'\n];\n\n\n// helpers ///////////////////////\n\nfunction isEmptyText(label) {\n return !label || !label.trim();\n}","import inherits from 'inherits';\n\nimport BaseModeling from 'diagram-js/lib/features/modeling/Modeling';\n\nimport UpdateModdlePropertiesHandler from './handlers/UpdateModdlePropertiesHandler';\nimport UpdatePropertiesHandler from './handlers/UpdatePropertiesHandler';\nimport UpdateCanvasRootHandler from './handlers/UpdateCanvasRootHandler';\nimport AddLaneHandler from './handlers/AddLaneHandler';\nimport SplitLaneHandler from './handlers/SplitLaneHandler';\nimport ResizeLaneHandler from './handlers/ResizeLaneHandler';\nimport UpdateFlowNodeRefsHandler from './handlers/UpdateFlowNodeRefsHandler';\nimport IdClaimHandler from './handlers/IdClaimHandler';\nimport SetColorHandler from './handlers/SetColorHandler';\n\nimport UpdateLabelHandler from '../labelElements/handlers/UpdateLabelHandler';\n\n\n/**\n * BPMN 2.0 modeling features activator\n *\n * @param {EventBus} eventBus\n * @param {ElementFactory} elementFactory\n * @param {CommandStack} commandStack\n * @param {BpmnRules} bpmnRules\n */\nexport default function Modeling(\n eventBus, elementFactory, commandStack,\n bpmnRules) {\n\n BaseModeling.call(this, eventBus, elementFactory, commandStack);\n\n this._bpmnRules = bpmnRules;\n}\n\ninherits(Modeling, BaseModeling);\n\nModeling.$inject = [\n 'eventBus',\n 'elementFactory',\n 'commandStack',\n 'bpmnRules'\n];\n\n\nModeling.prototype.getHandlers = function() {\n var handlers = BaseModeling.prototype.getHandlers.call(this);\n\n handlers['element.updateModdleProperties'] = UpdateModdlePropertiesHandler;\n handlers['element.updateProperties'] = UpdatePropertiesHandler;\n handlers['canvas.updateRoot'] = UpdateCanvasRootHandler;\n handlers['lane.add'] = AddLaneHandler;\n handlers['lane.resize'] = ResizeLaneHandler;\n handlers['lane.split'] = SplitLaneHandler;\n handlers['lane.updateRefs'] = UpdateFlowNodeRefsHandler;\n handlers['id.updateClaim'] = IdClaimHandler;\n handlers['element.setColor'] = SetColorHandler;\n handlers['element.updateLabel'] = UpdateLabelHandler;\n\n return handlers;\n};\n\n\nModeling.prototype.updateLabel = function(element, newLabel, newBounds, hints) {\n this._commandStack.execute('element.updateLabel', {\n element: element,\n newLabel: newLabel,\n newBounds: newBounds,\n hints: hints || {}\n });\n};\n\n\nModeling.prototype.connect = function(source, target, attrs, hints) {\n\n var bpmnRules = this._bpmnRules;\n\n if (!attrs) {\n attrs = bpmnRules.canConnect(source, target);\n }\n\n if (!attrs) {\n return;\n }\n\n return this.createConnection(source, target, attrs, source.parent, hints);\n};\n\n\nModeling.prototype.updateModdleProperties = function(element, moddleElement, properties) {\n this._commandStack.execute('element.updateModdleProperties', {\n element: element,\n moddleElement: moddleElement,\n properties: properties\n });\n};\n\nModeling.prototype.updateProperties = function(element, properties) {\n this._commandStack.execute('element.updateProperties', {\n element: element,\n properties: properties\n });\n};\n\nModeling.prototype.resizeLane = function(laneShape, newBounds, balanced) {\n this._commandStack.execute('lane.resize', {\n shape: laneShape,\n newBounds: newBounds,\n balanced: balanced\n });\n};\n\nModeling.prototype.addLane = function(targetLaneShape, location) {\n var context = {\n shape: targetLaneShape,\n location: location\n };\n\n this._commandStack.execute('lane.add', context);\n\n return context.newLane;\n};\n\nModeling.prototype.splitLane = function(targetLane, count) {\n this._commandStack.execute('lane.split', {\n shape: targetLane,\n count: count\n });\n};\n\n/**\n * Transform the current diagram into a collaboration.\n *\n * @return {djs.model.Root} the new root element\n */\nModeling.prototype.makeCollaboration = function() {\n\n var collaborationElement = this._create('root', {\n type: 'bpmn:Collaboration'\n });\n\n var context = {\n newRoot: collaborationElement\n };\n\n this._commandStack.execute('canvas.updateRoot', context);\n\n return collaborationElement;\n};\n\nModeling.prototype.updateLaneRefs = function(flowNodeShapes, laneShapes) {\n\n this._commandStack.execute('lane.updateRefs', {\n flowNodeShapes: flowNodeShapes,\n laneShapes: laneShapes\n });\n};\n\n/**\n * Transform the current diagram into a process.\n *\n * @return {djs.model.Root} the new root element\n */\nModeling.prototype.makeProcess = function() {\n\n var processElement = this._create('root', {\n type: 'bpmn:Process'\n });\n\n var context = {\n newRoot: processElement\n };\n\n this._commandStack.execute('canvas.updateRoot', context);\n};\n\n\nModeling.prototype.claimId = function(id, moddleElement) {\n this._commandStack.execute('id.updateClaim', {\n id: id,\n element: moddleElement,\n claiming: true\n });\n};\n\n\nModeling.prototype.unclaimId = function(id, moddleElement) {\n this._commandStack.execute('id.updateClaim', {\n id: id,\n element: moddleElement\n });\n};\n\nModeling.prototype.setColor = function(elements, colors) {\n if (!elements.length) {\n elements = [ elements ];\n }\n\n this._commandStack.execute('element.setColor', {\n elements: elements,\n colors: colors\n });\n};\n","import inherits from 'inherits';\n\nimport {\n assign\n} from 'min-dash';\n\nimport BaseLayouter from 'diagram-js/lib/layout/BaseLayouter';\n\nimport {\n repairConnection,\n withoutRedundantPoints\n} from 'diagram-js/lib/layout/ManhattanLayout';\n\nimport {\n getMid,\n getOrientation\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport {\n isExpanded,\n is\n} from '../../base/BaseServices';\n\nvar ATTACH_ORIENTATION_PADDING = -10,\n BOUNDARY_TO_HOST_THRESHOLD = 40;\n\nvar oppositeOrientationMapping = {\n 'top': 'bottom',\n 'top-right': 'bottom-left',\n 'top-left': 'bottom-right',\n 'right': 'left',\n 'bottom': 'top',\n 'bottom-right': 'top-left',\n 'bottom-left': 'top-right',\n 'left': 'right'\n};\n\nvar orientationDirectionMapping = {\n top: 't',\n right: 'r',\n bottom: 'b',\n left: 'l'\n};\n\n\nexport default function BpmnLayouter() {}\n\ninherits(BpmnLayouter, BaseLayouter);\n\n\nBpmnLayouter.prototype.layoutConnection = function (connection, hints) {\n hints = hints || {};\n\n var source = hints.source || connection.source,\n target = hints.target || connection.target,\n waypoints = hints.waypoints || connection.waypoints,\n connectionStart = hints.connectionStart,\n connectionEnd = hints.connectionEnd;\n\n if (!connectionStart) {\n connectionStart = getConnectionDocking(waypoints && waypoints[0], source);\n }\n\n if (!connectionEnd) {\n connectionEnd = getConnectionDocking(waypoints && waypoints[waypoints.length - 1], target);\n }\n\n if (isAssociationOrDataAssociation(connection)) {\n if (waypoints && !isCompensationAssociation(source, target)) {\n return [].concat([connectionStart], waypoints.slice(1, -1), [connectionEnd]);\n }\n }\n\n var manhattanOptions = getManhattanOptions(connection, source, target, connectionStart, connectionEnd, waypoints, hints);\n\n if (manhattanOptions) {\n manhattanOptions = assign(manhattanOptions, hints);\n return withoutRedundantPoints(repairConnection(\n source,\n target,\n connectionStart,\n connectionEnd,\n waypoints,\n manhattanOptions\n ));\n }\n\n return [connectionStart, connectionEnd];\n};\n\nfunction isAssociationOrDataAssociation(connection) {\n return is(connection, 'bpmn:Association') || is(connection, 'bpmn:DataAssociation');\n}\n\nfunction getManhattanOptions(connection, source, target, connectionStart, connectionEnd, waypoints, hints) {\n if (is(connection, 'bpmn:MessageFlow')) {\n return getMessageFlowManhattanOptions(source, target);\n } else if (is(connection, 'bpmn:SequenceFlow') || isCompensationAssociation(source, target)) {\n return getSequenceFlowManhattanOptions(source, target, connection, connectionEnd, waypoints);\n }\n return null;\n}\n\nfunction getSequenceFlowManhattanOptions(source, target, connection, connectionEnd, waypoints) {\n if (source === target) {\n return { preferredLayouts: getLoopPreferredLayout(source, connection) };\n } else if (is(source, 'bpmn:BoundaryEvent')) {\n return { preferredLayouts: getBoundaryEventPreferredLayouts(source, target, connectionEnd) };\n } else if (isExpandedSubProcess(source) || isExpandedSubProcess(target)) {\n return getSubProcessManhattanOptions(source);\n } else if (is(source, 'bpmn:Gateway')) {\n return { preferredLayouts: ['v:h'] };\n } else if (is(target, 'bpmn:Gateway')) {\n return { preferredLayouts: ['h:v'] };\n } else {\n return { preferredLayouts: ['h:h'] };\n }\n}\n\n\n// helpers //////////\n\nfunction getAttachOrientation(attachedElement) {\n var hostElement = attachedElement.host;\n\n return getOrientation(getMid(attachedElement), hostElement, ATTACH_ORIENTATION_PADDING);\n}\n\nfunction getMessageFlowManhattanOptions(source, target) {\n return {\n preferredLayouts: [ 'straight', 'v:v' ],\n preserveDocking: getMessageFlowPreserveDocking(source, target)\n };\n}\n\nfunction getMessageFlowPreserveDocking(source, target) {\n\n // (1) docking element connected to participant has precedence\n if (is(target, 'bpmn:Participant')) {\n return 'source';\n }\n\n if (is(source, 'bpmn:Participant')) {\n return 'target';\n }\n\n // (2) docking element connected to expanded sub-process has precedence\n if (isExpandedSubProcess(target)) {\n return 'source';\n }\n\n if (isExpandedSubProcess(source)) {\n return 'target';\n }\n\n // (3) docking event has precedence\n if (is(target, 'bpmn:Event')) {\n return 'target';\n }\n\n if (is(source, 'bpmn:Event')) {\n return 'source';\n }\n\n return null;\n}\n\nfunction getSubProcessManhattanOptions(source) {\n return {\n preferredLayouts: [ 'straight', 'h:h' ],\n preserveDocking: getSubProcessPreserveDocking(source)\n };\n}\n\nfunction getSubProcessPreserveDocking(source) {\n return isExpandedSubProcess(source) ? 'target' : 'source';\n}\n\nfunction getConnectionDocking(point, shape) {\n return point ? (point.original || point) : getMid(shape);\n}\n\nfunction isCompensationAssociation(source, target) {\n return is(target, 'bpmn:Activity') &&\n is(source, 'bpmn:BoundaryEvent') &&\n target.businessObject.isForCompensation;\n}\n\nfunction isExpandedSubProcess(element) {\n return is(element, 'bpmn:SubProcess') && isExpanded(element);\n}\n\nfunction isSame(a, b) {\n return a === b;\n}\n\nfunction isAnyOrientation(orientation, orientations) {\n return orientations.indexOf(orientation) !== -1;\n}\n\nfunction getHorizontalOrientation(orientation) {\n var matches = /right|left/.exec(orientation);\n\n return matches && matches[0];\n}\n\nfunction getVerticalOrientation(orientation) {\n var matches = /top|bottom/.exec(orientation);\n\n return matches && matches[0];\n}\n\nfunction isOppositeOrientation(a, b) {\n return oppositeOrientationMapping[a] === b;\n}\n\nfunction isOppositeHorizontalOrientation(a, b) {\n var horizontalOrientation = getHorizontalOrientation(a);\n\n var oppositeHorizontalOrientation = oppositeOrientationMapping[horizontalOrientation];\n\n return b.indexOf(oppositeHorizontalOrientation) !== -1;\n}\n\nfunction isOppositeVerticalOrientation(a, b) {\n var verticalOrientation = getVerticalOrientation(a);\n\n var oppositeVerticalOrientation = oppositeOrientationMapping[verticalOrientation];\n\n return b.indexOf(oppositeVerticalOrientation) !== -1;\n}\n\nfunction isHorizontalOrientation(orientation) {\n return orientation === 'right' || orientation === 'left';\n}\n\nfunction getLoopPreferredLayout(source, connection) {\n var waypoints = connection.waypoints;\n\n var orientation = waypoints && waypoints.length && getOrientation(waypoints[0], source);\n\n if (orientation === 'top') {\n return [ 't:r' ];\n } else if (orientation === 'right') {\n return [ 'r:b' ];\n } else if (orientation === 'left') {\n return [ 'l:t' ];\n }\n\n return [ 'b:l' ];\n}\n\nfunction getBoundaryEventPreferredLayouts(source, target, end) {\n var sourceMid = getMid(source),\n targetMid = getMid(target),\n attachOrientation = getAttachOrientation(source),\n sourceLayout,\n targetLayout;\n\n var isLoop = isSame(source.host, target);\n\n var attachedToSide = isAnyOrientation(attachOrientation, ['top', 'right', 'bottom', 'left']);\n\n var targetOrientation = getOrientation(targetMid, sourceMid, {\n x: source.width / 2 + target.width / 2,\n y: source.height / 2 + target.height / 2\n });\n\n if (isLoop) {\n return getBoundaryEventLoopLayout(attachOrientation, attachedToSide, source, target, end);\n }\n\n // source layout\n sourceLayout = getBoundaryEventLayout(attachOrientation, targetOrientation, attachedToSide, 'source');\n\n // target layout\n targetLayout = getBoundaryEventLayout(attachOrientation, targetOrientation, attachedToSide, 'target');\n\n return [sourceLayout + ':' + targetLayout];\n}\n\nfunction getBoundaryEventLayout(attachOrientation, targetOrientation, attachedToSide, type) {\n var layout;\n\n if (type === 'source') {\n layout = getBoundaryEventSourceLayout(attachOrientation, targetOrientation, attachedToSide);\n } else if (type === 'target') {\n layout = getBoundaryEventTargetLayout(attachOrientation, targetOrientation, attachedToSide);\n }\n\n return layout;\n}\n\n\nfunction getBoundaryEventLoopLayout(attachOrientation, attachedToSide, source, target, end) {\n var orientation = attachedToSide ? attachOrientation : getVerticalOrientation(attachOrientation);\n var sourceLayout = orientationDirectionMapping[orientation];\n var targetLayout = attachedToSide ? getAttachedSideLayout(attachOrientation, source, target, end) : 'v';\n\n return [sourceLayout + ':' + targetLayout];\n}\n\nfunction getAttachedSideLayout(attachOrientation, source, target, end) {\n if (isHorizontalOrientation(attachOrientation)) {\n return shouldConnectToSameSide('y', source, target, end) ? 'h' : 'b';\n } else {\n return shouldConnectToSameSide('x', source, target, end) ? 'v' : 'l';\n }\n}\n\n\nfunction shouldConnectToSameSide(axis, source, target, end) {\n var threshold = BOUNDARY_TO_HOST_THRESHOLD;\n\n return !(\n areCloseOnAxis(axis, end, target, threshold) ||\n areCloseOnAxis(axis, end, {\n x: target.x + target.width,\n y: target.y + target.height\n }, threshold) ||\n areCloseOnAxis(axis, end, getMid(source), threshold)\n );\n}\n\nfunction areCloseOnAxis(axis, a, b, threshold) {\n return Math.abs(a[ axis ] - b[ axis ]) < threshold;\n}\n\nfunction getBoundaryEventSourceLayout(attachOrientation, targetOrientation, attachedToSide) {\n\n // attached to either top, right, bottom or left side\n if (attachedToSide) {\n return orientationDirectionMapping[ attachOrientation ];\n }\n\n // attached to either top-right, top-left, bottom-right or bottom-left corner\n\n // same vertical or opposite horizontal orientation\n if (isSame(\n getVerticalOrientation(attachOrientation), getVerticalOrientation(targetOrientation)\n ) || isOppositeOrientation(\n getHorizontalOrientation(attachOrientation), getHorizontalOrientation(targetOrientation)\n )) {\n return orientationDirectionMapping[ getVerticalOrientation(attachOrientation) ];\n }\n\n // fallback\n return orientationDirectionMapping[ getHorizontalOrientation(attachOrientation) ];\n}\n\nfunction getBoundaryEventTargetLayout(attachOrientation, targetOrientation, attachedToSide) {\n\n // attached to either top, right, bottom or left side\n if (attachedToSide) {\n if (isHorizontalOrientation(attachOrientation)) {\n\n // orientation is right or left\n\n // opposite horizontal orientation or same orientation\n if (\n isOppositeHorizontalOrientation(attachOrientation, targetOrientation) ||\n isSame(attachOrientation, targetOrientation)\n ) {\n return 'h';\n }\n\n // fallback\n return 'v';\n } else {\n\n // orientation is top or bottom\n\n // opposite vertical orientation or same orientation\n if (\n isOppositeVerticalOrientation(attachOrientation, targetOrientation) ||\n isSame(attachOrientation, targetOrientation)\n ) {\n return 'v';\n }\n\n // fallback\n return 'h';\n }\n }\n\n // attached to either top-right, top-left, bottom-right or bottom-left corner\n\n // orientation is right, left\n // or same vertical orientation but also right or left\n if (isHorizontalOrientation(targetOrientation) ||\n (isSame(getVerticalOrientation(attachOrientation), getVerticalOrientation(targetOrientation)) &&\n getHorizontalOrientation(targetOrientation))) {\n return 'h';\n } else {\n return 'v';\n }\n}\n","import BehaviorModule from './actions';\nimport RulesModule from '../modelRules';\nimport DiOrderingModule from '../reorderElements';\nimport OrderingModule from '../orderElements';\nimport ReplaceModule from '../replaceElements';\n\nimport CommandModule from 'diagram-js/lib/command';\nimport TooltipsModule from 'diagram-js/lib/features/tooltips';\nimport LabelSupportModule from 'diagram-js/lib/features/label-support';\nimport AttachSupportModule from 'diagram-js/lib/features/attach-support';\nimport SelectionModule from 'diagram-js/lib/features/selection';\nimport ChangeSupportModule from 'diagram-js/lib/features/change-support';\nimport SpaceToolModule from 'diagram-js/lib/features/space-tool';\n\nimport BpmnFactory from './BpmnFactory';\nimport BpmnUpdater from './BpmnUpdater';\nimport ElementFactory from './ElementFactory';\nimport Modeling from './Modeling';\nimport BpmnLayouter from './BpmnLayouter';\nimport CroppingConnectionDocking from 'diagram-js/lib/layout/CroppingConnectionDocking';\n\n\nexport default {\n __init__: [\n 'modeling',\n 'bpmnUpdater'\n ],\n __depends__: [\n BehaviorModule,\n RulesModule,\n DiOrderingModule,\n OrderingModule,\n ReplaceModule,\n CommandModule,\n TooltipsModule,\n LabelSupportModule,\n AttachSupportModule,\n SelectionModule,\n ChangeSupportModule,\n SpaceToolModule\n ],\n bpmnFactory: [ 'type', BpmnFactory ],\n bpmnUpdater: [ 'type', BpmnUpdater ],\n elementFactory: [ 'type', ElementFactory ],\n modeling: [ 'type', Modeling ],\n layouter: [ 'type', BpmnLayouter ],\n connectionDocking: [ 'type', CroppingConnectionDocking ]\n};","import {\n assign\n} from 'min-dash';\n\n\n/**\n * A palette provider for BPMN 2.0 elements.\n */\nexport default function ElementPalette(\n palette, create, elementFactory,\n spaceTool, lassoTool, handTool,\n globalConnect, translate) {\n\n this._palette = palette;\n this._create = create;\n this._elementFactory = elementFactory;\n this._spaceTool = spaceTool;\n this._lassoTool = lassoTool;\n this._handTool = handTool;\n this._globalConnect = globalConnect;\n this._translate = translate;\n\n palette.registerProvider(this);\n}\n\nElementPalette.$inject = [\n 'palette',\n 'create',\n 'elementFactory',\n 'spaceTool',\n 'lassoTool',\n 'handTool',\n 'globalConnect',\n 'translate'\n];\n\n\nElementPalette.prototype.getPaletteEntries = function(element) {\n\n var actions = {},\n create = this._create,\n elementFactory = this._elementFactory,\n spaceTool = this._spaceTool,\n lassoTool = this._lassoTool,\n handTool = this._handTool,\n globalConnect = this._globalConnect,\n translate = this._translate;\n\n function createAction(type, group, className, title, options) {\n function createListener(event) {\n const shapeOptions = assign({ type: type }, options);\n const shape = elementFactory.createShape(shapeOptions);\n \n if (options) {\n shape.businessObject.di.isExpanded = options.isExpanded;\n }\n \n create.start(event, shape);\n }\n \n const shortType = type.replace(/^bpmn:/, '');\n \n return {\n group,\n className,\n title: title || translate('Create {type}', { type: shortType }),\n action: {\n dragstart: createListener,\n click: createListener\n }\n };\n }\n \n\n function createSubprocess(event) {\n const subProcess = elementFactory.createShape({\n type: 'bpmn:SubProcess',\n x: 0,\n y: 0,\n isExpanded: true\n });\n \n const startEvent = elementFactory.createShape({\n type: 'bpmn:StartEvent',\n x: 40,\n y: 82,\n parent: subProcess\n });\n \n create.start(event, [subProcess, startEvent], {\n hints: {\n autoSelect: [startEvent]\n }\n });\n }\n \n\n function createParticipant(event) {\n create.start(event, elementFactory.createParticipantShape());\n }\n\n assign(actions, {\n 'hand-tool': {\n group: 'tools',\n className: 'bpmn-icon-hand-tool',\n title: translate('Hand Tool'),\n action: {\n click: function(event) {\n handTool.activateHand(event);\n }\n }\n },\n 'lasso-tool': {\n group: 'tools',\n className: 'bpmn-icon-lasso-tool',\n title: translate('Lasso Tool'),\n action: {\n click: function(event) {\n lassoTool.activateSelection(event);\n }\n }\n },\n 'space-tool': {\n group: 'tools',\n className: 'bpmn-icon-space-tool',\n title: translate('Space Tool'),\n action: {\n click: function(event) {\n spaceTool.activateSelection(event);\n }\n }\n },\n 'global-connect-tool': {\n group: 'tools',\n className: 'bpmn-icon-connection-multi',\n title: translate('Connect Tool'),\n action: {\n click: function(event) {\n globalConnect.start(event);\n }\n }\n },\n 'tool-separator': {\n group: 'tools',\n separator: true\n },\n 'create.start-event': createAction(\n 'bpmn:StartEvent', 'event', 'bpmn-icon-start-event-none',\n translate('Start Event')\n ),\n 'create.intermediate-event': createAction(\n 'bpmn:IntermediateThrowEvent', 'event', 'bpmn-icon-intermediate-event-none',\n translate('Intermediate/Boundary Event')\n ),\n 'create.end-event': createAction(\n 'bpmn:EndEvent', 'event', 'bpmn-icon-end-event-none',\n translate('End Event')\n ),\n 'create.exclusive-gateway': createAction(\n 'bpmn:ExclusiveGateway', 'gateway', 'bpmn-icon-gateway-none',\n translate('Gateway')\n ),\n 'create.task': createAction(\n 'bpmn:Task', 'activity', 'bpmn-icon-task',\n translate('Task')\n ),\n 'create.data-object': createAction(\n 'bpmn:DataObjectReference', 'data-object', 'bpmn-icon-data-object',\n translate('Data Object Reference')\n ),\n 'create.data-store': createAction(\n 'bpmn:DataStoreReference', 'data-store', 'bpmn-icon-data-store',\n translate('Data Store Reference')\n ),\n 'create.subprocess-expanded': {\n group: 'activity',\n className: 'bpmn-icon-subprocess-expanded',\n title: translate('Expanded SubProcess'),\n action: {\n dragstart: createSubprocess,\n click: createSubprocess\n }\n },\n 'create.participant-expanded': {\n group: 'collaboration',\n className: 'bpmn-icon-participant',\n title: translate('Pool/Participant'),\n action: {\n dragstart: createParticipant,\n click: createParticipant\n }\n },\n 'create.group': createAction(\n 'bpmn:Group', 'artifact', 'bpmn-icon-group',\n translate('Group')\n ),\n });\n\n return actions;\n};\n","import PaletteModule from 'diagram-js/lib/features/palette';\nimport CreateModule from 'diagram-js/lib/features/create';\nimport SpaceToolModule from 'diagram-js/lib/features/space-tool';\nimport LassoToolModule from 'diagram-js/lib/features/lasso-tool';\nimport HandToolModule from 'diagram-js/lib/features/hand-tool';\nimport GlobalConnectModule from 'diagram-js/lib/features/global-connect';\nimport translate from 'diagram-js/lib/i18n/translate';\n\nimport ElementPalette from './ElementPalette';\n\nexport default {\n __depends__: [\n PaletteModule,\n CreateModule,\n SpaceToolModule,\n LassoToolModule,\n HandToolModule,\n GlobalConnectModule,\n translate\n ],\n __init__: [ 'elementPalette' ],\n elementPalette: [ 'type', ElementPalette ]\n};\n","import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';\n\nimport inherits from 'inherits';\n\nimport cssEscape from 'css.escape';\n\nimport {\n assign,\n forEach\n} from 'min-dash';\n\nimport {\n query as domQuery\n} from 'min-dom';\n\nimport {\n attr as svgAttr\n} from 'tiny-svg';\n\nvar LOW_PRIORITY = 250;\n\n\nexport default function ReplaceElementsPreview(\n eventBus, elementRegistry, elementFactory,\n canvas, previewSupport) {\n\n CommandInterceptor.call(this, eventBus);\n\n /**\n * Replace the visuals of all elements in the context which can be replaced\n *\n * @param {Object} context\n */\n function replaceVisual(context) {\n\n var replacements = context.canExecute.replacements;\n\n forEach(replacements, function(replacement) {\n\n var id = replacement.oldElementId;\n\n var newElement = {\n type: replacement.newElementType\n };\n\n // if the visual of the element is already replaced\n if (context.visualReplacements[id]) {\n return;\n }\n\n var element = elementRegistry.get(id);\n\n assign(newElement, { x: element.x, y: element.y });\n\n // create a temporary shape\n var tempShape = elementFactory.createShape(newElement);\n\n canvas.addShape(tempShape, element.parent);\n\n // select the original SVG element related to the element and hide it\n var gfx = domQuery('[data-element-id=\"' + cssEscape(element.id) + '\"]', context.dragGroup);\n\n if (gfx) {\n svgAttr(gfx, { display: 'none' });\n }\n\n // clone the gfx of the temporary shape and add it to the drag group\n var dragger = previewSupport.addDragger(tempShape, context.dragGroup);\n\n context.visualReplacements[id] = dragger;\n\n canvas.removeShape(tempShape);\n });\n }\n\n /**\n * Restore the original visuals of the previously replaced elements\n *\n * @param {Object} context\n */\n function restoreVisual(context) {\n\n var visualReplacements = context.visualReplacements;\n\n forEach(visualReplacements, function(dragger, id) {\n\n var originalGfx = domQuery('[data-element-id=\"' + cssEscape(id) + '\"]', context.dragGroup);\n\n if (originalGfx) {\n svgAttr(originalGfx, { display: 'inline' });\n }\n\n dragger.remove();\n\n if (visualReplacements[id]) {\n delete visualReplacements[id];\n }\n });\n }\n\n eventBus.on('shape.move.move', LOW_PRIORITY, function(event) {\n\n var context = event.context,\n canExecute = context.canExecute;\n\n if (!context.visualReplacements) {\n context.visualReplacements = {};\n }\n\n if (canExecute && canExecute.replacements) {\n replaceVisual(context);\n } else {\n restoreVisual(context);\n }\n });\n}\n\nReplaceElementsPreview.$inject = [\n 'eventBus',\n 'elementRegistry',\n 'elementFactory',\n 'canvas',\n 'previewSupport'\n];\n\ninherits(ReplaceElementsPreview, CommandInterceptor);","import PreviewSupportModule from 'diagram-js/lib/features/preview-support';\n\nimport ReplaceElementsPreview from './ReplaceElementsPreview';\n\nexport default {\n __depends__: [\n PreviewSupportModule\n ],\n __init__: [ 'replaceElementsPreview' ],\n replaceElementsPreview: [ 'type', ReplaceElementsPreview ]\n};\n","import {\r\n mid,\r\n setSnapped\r\n} from 'diagram-js/lib/features/snapping/SnapUtil';\r\n\r\nimport { isCmd } from 'diagram-js/lib/features/keyboard/KeyboardUtil';\r\n\r\nimport {\r\n getOrientation\r\n} from 'diagram-js/lib/layout/LayoutUtil';\r\n\r\nimport { is } from '../../base/BaseServices';\r\n\r\nimport { isAny } from '../modelElements/services/ModelingService';\r\n\r\nimport { some } from 'min-dash';\r\n\r\nvar HIGHER_PRIORITY = 1250;\r\n\r\nvar BOUNDARY_TO_HOST_THRESHOLD = 40;\r\n\r\nvar TARGET_BOUNDS_PADDING = 20,\r\n TASK_BOUNDS_PADDING = 10;\r\n\r\nvar TARGET_CENTER_PADDING = 20;\r\n\r\nvar AXES = [ 'x', 'y' ];\r\n\r\n/**\r\n * Snap during connect.\r\n *\r\n * @param {EventBus} eventBus\r\n */\r\nexport default function ConnectSnappingAction(eventBus) {\r\n eventBus.on([\r\n 'connect.hover',\r\n 'connect.move',\r\n 'connect.end',\r\n ], HIGHER_PRIORITY, handleConnectEvent);\r\n\r\n function handleConnectEvent(event) {\r\n const context = event.context;\r\n const canExecute = context.canExecute;\r\n const start = context.start;\r\n const hover = context.hover;\r\n const source = context.source;\r\n const target = context.target;\r\n\r\n // do NOT snap on CMD\r\n if (event.originalEvent && isCmd(event.originalEvent)) {\r\n return;\r\n }\r\n\r\n if (!context.initialConnectionStart) {\r\n context.initialConnectionStart = context.connectionStart;\r\n }\r\n\r\n // snap hover\r\n if (canExecute && hover) {\r\n snapToShape(event, hover, getTargetBoundsPadding(hover));\r\n }\r\n\r\n if (hover && isAnyType(canExecute, [\r\n 'bpmn:Association',\r\n 'bpmn:DataInputAssociation',\r\n 'bpmn:DataOutputAssociation',\r\n 'bpmn:SequenceFlow'\r\n ])) {\r\n context.connectionStart = mid(start);\r\n\r\n // snap hover\r\n if (isAny(hover, [ 'bpmn:Event', 'bpmn:Gateway' ])) {\r\n snapToPosition(event, mid(hover));\r\n }\r\n\r\n // snap hover\r\n if (isAny(hover, [ 'bpmn:Task', 'bpmn:SubProcess' ])) {\r\n snapToTargetMid(event, hover);\r\n }\r\n\r\n // snap source and target\r\n if (is(source, 'bpmn:BoundaryEvent') && target === source.host) {\r\n snapBoundaryEventLoop(event);\r\n }\r\n\r\n } else if (isType(canExecute, 'bpmn:MessageFlow')) {\r\n\r\n if (is(start, 'bpmn:Event')) {\r\n\r\n // snap start\r\n context.connectionStart = mid(start);\r\n }\r\n\r\n if (is(hover, 'bpmn:Event')) {\r\n\r\n // snap hover\r\n snapToPosition(event, mid(hover));\r\n }\r\n\r\n } else {\r\n\r\n // un-snap source\r\n context.connectionStart = context.initialConnectionStart;\r\n }\r\n }\r\n}\r\n\r\n\r\nConnectSnappingAction.$inject = [ 'eventBus' ];\r\n\r\n\r\n// helpers //////////\r\n\r\n// snap to target if event in target\r\nfunction snapToShape(event, target, padding) {\r\n AXES.forEach(axis => {\r\n const dimensionForAxis = getDimensionForAxis(axis, target);\r\n const axisPosition = target[axis] + padding;\r\n\r\n if (event[axis] < axisPosition) {\r\n setSnapped(event, axis, axisPosition);\r\n } else if (event[axis] > axisPosition + dimensionForAxis - 2 * padding) {\r\n setSnapped(event, axis, axisPosition + dimensionForAxis - 2 * padding);\r\n }\r\n });\r\n}\r\n\r\n\r\n// snap to target mid if event in target mid\r\nfunction snapToTargetMid(event, target) {\r\n const targetMid = mid(target);\r\n\r\n AXES.forEach(axis => {\r\n if (isMid(event, target, axis)) {\r\n setSnapped(event, axis, targetMid[axis]);\r\n }\r\n });\r\n}\r\n\r\n\r\n// snap to prevent loop overlapping boundary event\r\nfunction snapBoundaryEventLoop(event) {\r\n const { context } = event;\r\n const { source, target } = context;\r\n\r\n if (isReverse(context)) {\r\n return;\r\n }\r\n\r\n const sourceMid = mid(source);\r\n const orientation = getOrientation(sourceMid, target, -10);\r\n const axes = [];\r\n\r\n if (/top|bottom/.test(orientation)) {\r\n axes.push('x');\r\n }\r\n\r\n if (/left|right/.test(orientation)) {\r\n axes.push('y');\r\n }\r\n\r\n axes.forEach(axis => {\r\n const coordinate = event[axis];\r\n let newCoordinate;\r\n\r\n if (Math.abs(coordinate - sourceMid[axis]) < BOUNDARY_TO_HOST_THRESHOLD) {\r\n newCoordinate =\r\n coordinate > sourceMid[axis]\r\n ? sourceMid[axis] + BOUNDARY_TO_HOST_THRESHOLD\r\n : sourceMid[axis] - BOUNDARY_TO_HOST_THRESHOLD;\r\n\r\n setSnapped(event, axis, newCoordinate);\r\n }\r\n });\r\n}\r\n\r\n\r\nfunction snapToPosition(event, position) {\r\n setSnapped(event, 'x', position.x);\r\n setSnapped(event, 'y', position.y);\r\n}\r\n\r\nfunction isType(attrs, type) {\r\n return attrs && attrs.type === type;\r\n}\r\n\r\nfunction isAnyType(attrs, types) {\r\n return some(types, function(type) {\r\n return isType(attrs, type);\r\n });\r\n}\r\n\r\nfunction getDimensionForAxis(axis, element) {\r\n return axis === 'x' ? element.width : element.height;\r\n}\r\n\r\nfunction getTargetBoundsPadding(target) {\r\n if (is(target, 'bpmn:Task')) {\r\n return TASK_BOUNDS_PADDING;\r\n } else {\r\n return TARGET_BOUNDS_PADDING;\r\n }\r\n}\r\n\r\nfunction isMid(event, target, axis) {\r\n return event[ axis ] > target[ axis ] + TARGET_CENTER_PADDING\r\n && event[ axis ] < target[ axis ] + getDimensionForAxis(axis, target) - TARGET_CENTER_PADDING;\r\n}\r\n\r\nfunction isReverse(context) {\r\n var hover = context.hover,\r\n source = context.source;\r\n\r\n return hover && source && hover === source;\r\n}","import inherits from 'inherits';\n\nimport CreateMoveSnapping from 'diagram-js/lib/features/snapping/CreateMoveSnapping';\n\nimport {\n isSnapped,\n setSnapped,\n topLeft,\n bottomRight\n} from 'diagram-js/lib/features/snapping/SnapUtil';\n\nimport { is, isExpanded } from '../../base/BaseServices';\n\nimport {\n asTRBL,\n getMid\n} from 'diagram-js/lib/layout/LayoutUtil';\n\nimport { getBoundaryAttachment } from './SnappingService';\n\nimport { forEach } from 'min-dash';\n\nvar HIGH_PRIORITY = 1500;\n\n\n/**\n * Snap during create and move.\n *\n * @param {EventBus} eventBus\n * @param {Injector} injector\n */\nexport default function CreateMoveSnappingAction(eventBus, injector) {\n injector.invoke(CreateMoveSnapping, this);\n\n // creating first participant\n eventBus.on([ 'create.move', 'create.end' ], HIGH_PRIORITY, setSnappedIfConstrained);\n\n // snap boundary events\n eventBus.on([\n 'create.move',\n 'create.end',\n 'shape.move.move',\n 'shape.move.end'\n ], HIGH_PRIORITY, function(event) {\n var context = event.context,\n canExecute = context.canExecute,\n target = context.target;\n\n var canAttach = canExecute && (canExecute === 'attach' || canExecute.attach);\n\n if (canAttach && !isSnapped(event)) {\n snapBoundaryEvent(event, target);\n }\n });\n}\n\ninherits(CreateMoveSnappingAction, CreateMoveSnapping);\n\nCreateMoveSnappingAction.$inject = [\n 'eventBus',\n 'injector'\n];\n\nCreateMoveSnappingAction.prototype.initSnap = function(event) {\n var snapContext = CreateMoveSnapping.prototype.initSnap.call(this, event);\n\n var shape = event.shape;\n\n var isMove = !!this._elementRegistry.get(shape.id);\n\n // snap to docking points\n forEach(shape.outgoing, function(connection) {\n var docking = connection.waypoints[0];\n\n docking = docking.original || docking;\n\n snapContext.setSnapOrigin(connection.id + '-docking', getDockingSnapOrigin(docking, isMove, event));\n });\n\n forEach(shape.incoming, function(connection) {\n var docking = connection.waypoints[connection.waypoints.length - 1];\n\n docking = docking.original || docking;\n\n snapContext.setSnapOrigin(connection.id + '-docking', getDockingSnapOrigin(docking, isMove, event));\n });\n\n if (is(shape, 'bpmn:Participant')) {\n\n // snap to borders with higher priority\n snapContext.setSnapLocations([ 'top-left', 'bottom-right', 'mid' ]);\n }\n\n return snapContext;\n};\n\nCreateMoveSnappingAction.prototype.addSnapTargetPoints = function(snapPoints, shape, target) {\n CreateMoveSnapping.prototype.addSnapTargetPoints.call(this, snapPoints, shape, target);\n\n var snapTargets = this.getSnapTargets(shape, target);\n\n forEach(snapTargets, function(snapTarget) {\n\n // handle TRBL alignment\n //\n // * with container elements\n // * with text annotations\n if (isContainer(snapTarget) || areAll([ shape, snapTarget ], 'bpmn:TextAnnotation')) {\n snapPoints.add('top-left', topLeft(snapTarget));\n snapPoints.add('bottom-right', bottomRight(snapTarget));\n }\n });\n\n var elementRegistry = this._elementRegistry;\n\n // snap to docking points if not create mode\n forEach(shape.incoming, function(connection) {\n if (elementRegistry.get(shape.id)) {\n\n if (!includes(snapTargets, connection.source)) {\n snapPoints.add('mid', getMid(connection.source));\n }\n\n var docking = connection.waypoints[0];\n snapPoints.add(connection.id + '-docking', docking.original || docking);\n }\n });\n\n forEach(shape.outgoing, function(connection) {\n if (elementRegistry.get(shape.id)) {\n\n if (!includes(snapTargets, connection.target)) {\n snapPoints.add('mid', getMid(connection.target));\n }\n\n var docking = connection.waypoints[ connection.waypoints.length - 1 ];\n\n snapPoints.add(connection.id + '-docking', docking.original || docking);\n }\n });\n\n // add sequence flow parents as snap targets\n if (is(target, 'bpmn:SequenceFlow')) {\n snapPoints = this.addSnapTargetPoints(snapPoints, shape, target.parent);\n }\n\n return snapPoints;\n};\n\nCreateMoveSnappingAction.prototype.getSnapTargets = function(shape, target) {\n return CreateMoveSnapping.prototype.getSnapTargets.call(this, shape, target)\n .filter(function(snapTarget) {\n\n // do not snap to lanes\n return !is(snapTarget, 'bpmn:Lane');\n });\n};\n\n// helpers //////////\n\nfunction snapBoundaryEvent(event, target) {\n var targetTRBL = asTRBL(target);\n\n var direction = getBoundaryAttachment(event, target);\n\n var context = event.context,\n shape = context.shape;\n\n var offset;\n\n if (shape.parent) {\n offset = { x: 0, y: 0 };\n } else {\n offset = getMid(shape);\n }\n\n if (/top/.test(direction)) {\n setSnapped(event, 'y', targetTRBL.top - offset.y);\n } else if (/bottom/.test(direction)) {\n setSnapped(event, 'y', targetTRBL.bottom - offset.y);\n }\n\n if (/left/.test(direction)) {\n setSnapped(event, 'x', targetTRBL.left - offset.x);\n } else if (/right/.test(direction)) {\n setSnapped(event, 'x', targetTRBL.right - offset.x);\n }\n}\n\nfunction areAll(elements, type) {\n return elements.every(function(el) {\n return is(el, type);\n });\n}\n\nfunction isContainer(element) {\n if (is(element, 'bpmn:SubProcess') && isExpanded(element)) {\n return true;\n }\n\n return is(element, 'bpmn:Participant');\n}\n\n\nfunction setSnappedIfConstrained(event) {\n var context = event.context,\n createConstraints = context.createConstraints;\n\n if (!createConstraints) {\n return;\n }\n\n var top = createConstraints.top,\n right = createConstraints.right,\n bottom = createConstraints.bottom,\n left = createConstraints.left;\n\n if ((left && left >= event.x) || (right && right <= event.x)) {\n setSnapped(event, 'x', event.x);\n }\n\n if ((top && top >= event.y) || (bottom && bottom <= event.y)) {\n setSnapped(event, 'y', event.y);\n }\n}\n\nfunction includes(array, value) {\n return array.indexOf(value) !== -1;\n}\n\nfunction getDockingSnapOrigin(docking, isMove, event) {\n return isMove ? (\n {\n x: docking.x - event.x,\n y: docking.y - event.y\n }\n ) : {\n x: docking.x,\n y: docking.y\n };\n}\n","import ConnectSnappingAction from './ConnectSnappingAction';\nimport CreateMoveSnappingAction from './CreateMoveSnappingAction';\nimport SnappingModule from 'diagram-js/lib/features/snapping';\n\nexport default {\n __depends__: [ SnappingModule ],\n __init__: [\n 'connectSnapping',\n 'createMoveSnapping'\n ],\n connectSnapping: [ 'type', ConnectSnappingAction ],\n createMoveSnapping: [ 'type', CreateMoveSnappingAction ]\n};","import inherits from 'inherits';\n\nimport BaseModeler from './base/BaseModeler';\n\nimport Viewer from './Viewer';\nimport NavViewer from './NavViewer';\n\nimport KeyboardMoveModule from 'diagram-js/lib/navigation/keyboard-move';\nimport MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas';\nimport TouchModule from 'diagram-js/lib/navigation/touch';\nimport ZoomScrollModule from 'diagram-js/lib/navigation/zoomscroll';\n\nimport AlignElementsModule from 'diagram-js/lib/features/align-elements';\nimport LocateElementsModule from './components/locateElements';\nimport AutoResizeModule from './components/resizeElements';\nimport AutoScrollModule from 'diagram-js/lib/features/auto-scroll';\nimport BendpointsModule from 'diagram-js/lib/features/bendpoints';\nimport ConnectModule from 'diagram-js/lib/features/connect';\nimport ConnectionPreviewModule from 'diagram-js/lib/features/connection-preview';\nimport ContextPadModule from './components/contextMenu';\nimport CopyPasteModule from './components/copyPasteElements';\nimport CreateModule from 'diagram-js/lib/features/create';\nimport DistributeElementsModule from './components/distributionCheck';\nimport EditorActionsModule from './components/registerActions';\nimport GridSnappingModule from './components/snapToGrid';\nimport InteractionEventsModule from './components/hitZones';\nimport LabelElementsModule from './components/labelElements';\nimport ModelingModule from './components/modelElements';\nimport MoveModule from 'diagram-js/lib/features/move';\nimport PaletteModule from './components/elementPalette';\nimport ReplacePreviewModule from './components/replaceElementsPreview';\nimport ResizeModule from 'diagram-js/lib/features/resize';\nimport SnappingModule from './components/snapActions';\n\nimport {\n wrapForCompatibility\n} from './base/BaseServices';\n\nvar initialDiagram =\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '' +\n '';\n\nexport default function Modeler(options) {\n BaseModeler.call(this, options);\n}\n\ninherits(Modeler, BaseModeler);\n\n\nModeler.Viewer = Viewer;\nModeler.NavViewer = NavViewer;\n\nModeler.prototype.createDiagram = wrapForCompatibility(function createDiagram() {\n return this.importXML(initialDiagram);\n});\n\nModeler.prototype._interactionModules = [\n KeyboardMoveModule,\n MoveCanvasModule,\n TouchModule,\n ZoomScrollModule\n];\n\nModeler.prototype._modelingModules = [\n AlignElementsModule,\n LocateElementsModule,\n AutoScrollModule,\n AutoResizeModule,\n BendpointsModule,\n ConnectModule,\n ConnectionPreviewModule,\n ContextPadModule,\n CopyPasteModule,\n CreateModule,\n DistributeElementsModule,\n EditorActionsModule,\n GridSnappingModule,\n InteractionEventsModule,\n LabelElementsModule,\n ModelingModule,\n MoveModule,\n PaletteModule,\n ReplacePreviewModule,\n ResizeModule,\n SnappingModule\n];\n\nModeler.prototype._modules = [].concat(\n Viewer.prototype._modules,\n Modeler.prototype._interactionModules,\n Modeler.prototype._modelingModules\n);\n","export default \"\\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\";","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildprocess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildprocess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./buildprocess.vue?vue&type=template&id=3378135a&\"\nimport script from \"./buildprocess.vue?vue&type=script&lang=js&\"\nexport * from \"./buildprocess.vue?vue&type=script&lang=js&\"\nimport style0 from \"./buildprocess.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCheckbox,VCol,VCombobox,VDataTable,VDialog,VForm,VIcon,VRow,VSelect,VSnackbar,VSpacer,VSwitch,VTab,VTabItem,VTabs,VTabsItems,VTextField,VTextarea,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildProcess.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildProcess.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BuildProcess.vue?vue&type=template&id=435e1ba3&\"\nimport script from \"./BuildProcess.vue?vue&type=script&lang=js&\"\nexport * from \"./BuildProcess.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('templates')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-btn',{staticClass:\"mr-3 float-right mt-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.allHqConns.length == 0},on:{\"click\":function($event){return _vm.promoteTemplates()}}},[_vm._v(_vm._s(_vm.$t('TEMPLATES.BTNS.PROMOTE')))]),_c('v-tabs',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab',{on:{\"click\":_vm.refreshTemplates}},[_vm._v(\" \"+_vm._s(_vm.$t('TEMPLATES.TABS.DOCS'))+\" \")]),_c('v-tab',{on:{\"click\":_vm.refreshTemplates}},[_vm._v(\" \"+_vm._s(_vm.$t('TEMPLATES.TABS.EMAILS'))+\" \")])],1),_c('v-tabs-items',{model:{value:(_vm.tab),callback:function ($$v) {_vm.tab=$$v},expression:\"tab\"}},[_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('TEMPLATES.SEARCH_DOC_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchDocs),callback:function ($$v) {_vm.searchDocs=$$v},expression:\"searchDocs\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.newTemplate('document')}}},[_vm._v(_vm._s(_vm.$t('TEMPLATES.BTNS.NEW_DOC')))])],1),_c('v-data-table',{staticClass:\"elevation-1 doc-template\",attrs:{\"headers\":_vm.docHeaders,\"items\":_vm.allDocTemplates,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchDocs,\"item-key\":\"ID\",\"sort-by\":_vm.docSortBy,\"sort-desc\":_vm.docSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editTemplate(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteTemplate(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])})],1)],1)],1)],1)],1),_c('v-tab-item',[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('TEMPLATES.SEARCH_EMAIL_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.searchEmails),callback:function ($$v) {_vm.searchEmails=$$v},expression:\"searchEmails\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.newTemplate('email')}}},[_vm._v(_vm._s(_vm.$t('TEMPLATES.BTNS.NEW_EMAIL')))])],1),_c('v-data-table',{staticClass:\"elevation-1 email-template\",attrs:{\"headers\":_vm.emailHeaders,\"items\":_vm.allEmailTemplates,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.searchEmails,\"item-key\":\"ID\",\"sort-by\":_vm.emailSortBy,\"sort-desc\":_vm.emailSortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.editTemplate(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteTemplate(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])})],1)],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteTemplateDialog),callback:function ($$v) {_vm.deleteTemplateDialog=$$v},expression:\"deleteTemplateDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTemplateTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTemplateText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteTemplateDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteTemplate({templateId: _vm.templateId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteTemplatesDialog),callback:function ($$v) {_vm.promoteTemplatesDialog=$$v},expression:\"promoteTemplatesDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteTemplatesTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteTemplatesText))]),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.promoteHeaders,\"items\":_vm.allTemplates,\"items-per-page\":10,\"item-key\":\"ID\",\"sort-by\":\"ID\",\"sort-desc\":true,\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},model:{value:(_vm.templatePromote),callback:function ($$v) {_vm.templatePromote=$$v},expression:\"templatePromote\"}}),_c('v-form',{ref:\"promoteTemplate\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-select',{attrs:{\"label\":\"Remote Engine\",\"items\":_vm.allHqConns,\"item-text\":\"ENGINE_NAME\",\"item-value\":\"URL\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedExternalEngine),callback:function ($$v) {_vm.selectedExternalEngine=$$v},expression:\"selectedExternalEngine\"}})],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelPromote()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmPromoteTemplates()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteCheckDialog),callback:function ($$v) {_vm.promoteCheckDialog=$$v},expression:\"promoteCheckDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteCheckTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteCheckText))]),_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteCheckText2)}})]),_c('v-card-actions',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.promoteCheckCancel}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),(_vm.promoteOverwrite > 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('PROMOTE.BTNS.NO_OVERWITE')))]):_vm._e(),_c('v-spacer'),(_vm.promoteOverwrite > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":_vm.promoteCheckOverwrite}},[_vm._v(_vm._s(_vm.$t('PROMOTE.BTNS.OVERWRITE')))]):_vm._e(),(_vm.promoteOverwrite == 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))]):_vm._e()],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteResultsDialog),callback:function ($$v) {_vm.promoteResultsDialog=$$v},expression:\"promoteResultsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteResultsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteResultsText)}})]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.promoteResultsDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./templates.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./templates.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./templates.vue?vue&type=template&id=600d98c9&\"\nimport script from \"./templates.vue?vue&type=script&lang=js&\"\nexport * from \"./templates.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabItem } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\nimport { VTabsItems } from 'vuetify/lib/components/VTabs';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDialog,VForm,VRow,VSelect,VSpacer,VTab,VTabItem,VTabs,VTabsItems,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Templates.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Templates.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Templates.vue?vue&type=template&id=ec729dc2&\"\nimport script from \"./Templates.vue?vue&type=script&lang=js&\"\nexport * from \"./Templates.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('templateeditor')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.saveTemplate()}}},[_vm._v(_vm._s(_vm.$t('TEMPLATES.BTNS.SAVE')))]),_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeEditor()}}},[_vm._v(_vm._s(_vm.$t('TEMPLATES.BTNS.CLOSE')))]),_c('v-row',{staticClass:\"pa-3\"},[(_vm.templateAction == 'edit')?_c('v-col',{attrs:{\"sm\":\"12\",\"md\":\"12\"}},[_vm._v(\" \"+_vm._s(_vm.$t('TEMPLATES.EDIT_TEMPLATE.DESC'))+\": \"),_c('b',[_vm._v(_vm._s(_vm.templateName))]),_vm._v(\" (\"+_vm._s(_vm.editType)+\") \")]):_vm._e(),_c('v-col',{attrs:{\"sm\":\"12\",\"md\":\"12\"}},[_c('editor',{attrs:{\"init\":_vm.init},model:{value:(_vm.content),callback:function ($$v) {_vm.content=$$v},expression:\"content\"}})],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.saveDialog),callback:function ($$v) {_vm.saveDialog=$$v},expression:\"saveDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.saveTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.saveText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('TEMPLATES.FIELDS.NAME'),\"rules\":[_vm.rules.required]},model:{value:(_vm.tempName),callback:function ($$v) {_vm.tempName=$$v},expression:\"tempName\"}},[_vm._v(_vm._s(_vm.tempName))])],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.saveDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmSave()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./templateeditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./templateeditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./templateeditor.vue?vue&type=template&id=34e2c8bc&\"\nimport script from \"./templateeditor.vue?vue&type=script&lang=js&\"\nexport * from \"./templateeditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCol,VDialog,VForm,VRow,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateEditor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TemplateEditor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TemplateEditor.vue?vue&type=template&id=716c61fb&\"\nimport script from \"./TemplateEditor.vue?vue&type=script&lang=js&\"\nexport * from \"./TemplateEditor.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('documents')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('DOCUMENTS.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.allFiles,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ITEM_ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DOWNLOAD'))+\" \")]):_vm._e(),(!row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.OPEN'))+\" \")]):_vm._e(),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteFile(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteFileDialog),callback:function ($$v) {_vm.deleteFileDialog=$$v},expression:\"deleteFileDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteFileTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteFileDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteFile()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./documents.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./documents.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./documents.vue?vue&type=template&id=7b8e1eec&\"\nimport script from \"./documents.vue?vue&type=script&lang=js&\"\nexport * from \"./documents.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Documents.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Documents.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Documents.vue?vue&type=template&id=a45d158a&\"\nimport script from \"./Documents.vue?vue&type=script&lang=js&\"\nexport * from \"./Documents.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('databasetables')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"Search\",\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.allHqConns.length == 0},on:{\"click\":function($event){return _vm.promoteTables()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.PROMOTE')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.importTable()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.IMPORT')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.exportTables()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.EXPORT')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.importData()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.IMPORT_DATA')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.newTable()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.NEW')))])],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.allDbTables,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.viewTable(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('DB_TABLES.BTNS.VIEW'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editTable(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteTable(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.newTableDialog),callback:function ($$v) {_vm.newTableDialog=$$v},expression:\"newTableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.newTableTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.newTableText))]),_c('v-form',{ref:\"addTableForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.TABLE_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces, _vm.rules.allowedChars]},model:{value:(_vm.tableName),callback:function ($$v) {_vm.tableName=$$v},expression:\"tableName\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.tableHeaders,\"items\":_vm.tableItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.fieldName != 'ID')?_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteField(row.item)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1):_vm._e()]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.FIELDS.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewField()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelNewTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.saveNewTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"800\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editTableDialog),callback:function ($$v) {_vm.editTableDialog=$$v},expression:\"editTableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editTableTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editTableText))]),_c('v-form',{model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.TABLE_NAME'),\"disabled\":\"\"},model:{value:(_vm.tableName),callback:function ($$v) {_vm.tableName=$$v},expression:\"tableName\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-data-table',{attrs:{\"headers\":_vm.tableHeaders,\"items\":_vm.tableItems,\"item-key\":\"id\"},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.fieldName != 'ID')?_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteField(row.item)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-trash-can-outline\")])],1):_vm._e(),(row.item.fieldName != 'ID')?_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editField(row)}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-pencil-outline\")])],1):_vm._e()]}}])},[_c('template',{slot:\"top\"},[_c('v-toolbar',{attrs:{\"color\":\"#2c3a47\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.FIELDS.ADD_REMOVE'))+\" \"),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.addNewField()}}},[_c('v-icon',{attrs:{\"medium\":\"\"}},[_vm._v(\"mdi-plus\")])],1)],1)],1)],2)],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmEditTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addFieldDialog),callback:function ($$v) {_vm.addFieldDialog=$$v},expression:\"addFieldDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addFieldTitle))]),_c('v-card-text',[_c('v-form',{ref:\"addFieldForm\",model:{value:(_vm.isFieldValid),callback:function ($$v) {_vm.isFieldValid=$$v},expression:\"isFieldValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.FIELD_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces, _vm.rules.allowedChars]},model:{value:(_vm.fieldName),callback:function ($$v) {_vm.fieldName=$$v},expression:\"fieldName\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.FIELD_TYPE'),\"items\":_vm.fieldTypeItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.fieldType),callback:function ($$v) {_vm.fieldType=$$v},expression:\"fieldType\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.fieldType == 'Decimal')?_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.DECIMAL_PLACES'),\"type\":\"number\",\"rules\":[_vm.rules.required]},model:{value:(_vm.decimalPlaces),callback:function ($$v) {_vm.decimalPlaces=$$v},expression:\"decimalPlaces\"}}):_vm._e()],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.fieldType != 'Boolean')?_c('v-checkbox',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.ALLOW_NULL')},model:{value:(_vm.allowNull),callback:function ($$v) {_vm.allowNull=$$v},expression:\"allowNull\"}}):_vm._e()],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddField()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFieldValid},on:{\"click\":function($event){return _vm.confirmAddField()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editFieldDialog),callback:function ($$v) {_vm.editFieldDialog=$$v},expression:\"editFieldDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editFieldTitle))]),_c('v-card-text',[_c('v-form',{ref:\"editFieldForm\",model:{value:(_vm.isFieldValid),callback:function ($$v) {_vm.isFieldValid=$$v},expression:\"isFieldValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.FIELD_NAME'),\"rules\":[_vm.rules.required, _vm.rules.noSpaces, _vm.rules.allowedChars]},model:{value:(_vm.fieldName),callback:function ($$v) {_vm.fieldName=$$v},expression:\"fieldName\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.FIELD_TYPE'),\"items\":_vm.fieldTypeItems,\"rules\":[_vm.rules.requiredSelect]},model:{value:(_vm.fieldType),callback:function ($$v) {_vm.fieldType=$$v},expression:\"fieldType\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.fieldType == 'Decimal')?_c('v-text-field',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.DECIMAL_PLACES'),\"type\":\"number\",\"rules\":[_vm.rules.required]},model:{value:(_vm.decimalPlaces),callback:function ($$v) {_vm.decimalPlaces=$$v},expression:\"decimalPlaces\"}}):_vm._e()],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[(_vm.fieldType != 'Boolean')?_c('v-checkbox',{attrs:{\"label\":_vm.$t('DB_TABLES.FIELDS.ALLOW_NULL')},model:{value:(_vm.allowNull),callback:function ($$v) {_vm.allowNull=$$v},expression:\"allowNull\"}}):_vm._e()],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditField()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFieldValid},on:{\"click\":function($event){return _vm.confirmEditField()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteTableDialog),callback:function ($$v) {_vm.deleteTableDialog=$$v},expression:\"deleteTableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTableTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTableText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteTableName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteTableDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.exportTablesDialog),callback:function ($$v) {_vm.exportTablesDialog=$$v},expression:\"exportTablesDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.exportTablesTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.exportTablesText))]),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.exportHeaders,\"items\":_vm.allDbTables,\"items-per-page\":10,\"item-key\":\"ID\",\"sort-by\":\"TABLE_NAME\",\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.exportData\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.exportData),callback:function ($$v) {_vm.$set(row.item, \"exportData\", $$v)},expression:\"row.item.exportData\"}})]}}]),model:{value:(_vm.tableExports),callback:function ($$v) {_vm.tableExports=$$v},expression:\"tableExports\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelExport()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmExportTables()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.importTableDialog),callback:function ($$v) {_vm.importTableDialog=$$v},expression:\"importTableDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.importTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.importText))]),_c('v-file-input',{attrs:{\"label\":_vm.$t('DB_TABLES.IMPORT_TABLE.LABEL')},model:{value:(_vm.importedFile),callback:function ($$v) {_vm.importedFile=$$v},expression:\"importedFile\"}})],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelImportTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.checkTable()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.importDataDialog),callback:function ($$v) {_vm.importDataDialog=$$v},expression:\"importDataDialog\"}},[[_c('gulper',{on:{\"closeImportData\":_vm.closeImportData}})]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteTablesDialog),callback:function ($$v) {_vm.promoteTablesDialog=$$v},expression:\"promoteTablesDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteTablesTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteTablesText))]),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.exportHeaders,\"items\":_vm.allDbTables,\"items-per-page\":10,\"item-key\":\"ID\",\"sort-by\":\"TABLE_NAME\",\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.exportData\",fn:function(row){return [_c('v-switch',{attrs:{\"color\":\"success\"},model:{value:(row.item.exportData),callback:function ($$v) {_vm.$set(row.item, \"exportData\", $$v)},expression:\"row.item.exportData\"}})]}}]),model:{value:(_vm.tablePromote),callback:function ($$v) {_vm.tablePromote=$$v},expression:\"tablePromote\"}}),_c('v-form',{ref:\"promoteForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('DB_TABLES.PROMOTE_TABLES.LABEL'),\"items\":_vm.allHqConns,\"item-text\":\"ENGINE_NAME\",\"item-value\":\"URL\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedExternalEngine),callback:function ($$v) {_vm.selectedExternalEngine=$$v},expression:\"selectedExternalEngine\"}})],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelPromote()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmPromoteTables()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteResultsDialog),callback:function ($$v) {_vm.promoteResultsDialog=$$v},expression:\"promoteResultsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteResultsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteResultsText)}})]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.promoteResultsDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.importDataTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.importDataText))]),_c('div',{staticClass:\"mt-4\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"12\"}},[_c('v-combobox',{attrs:{\"label\":_vm.$t('DB_TABLES.IMPORT_DATA.DB_LABEL'),\"items\":_vm.allDbTables,\"item-text\":\"TABLE_NAME\",\"item-value\":\"TABLE_NAME\"},on:{\"change\":_vm.setDatabaseCols},model:{value:(_vm.selectedTable),callback:function ($$v) {_vm.selectedTable=$$v},expression:\"selectedTable\"}})],1)],1),_c('div',{},[_vm._v(\"If uploading a CSV file, and the header row is not 0, set it here:\")]),_c('v-row',[_c('v-col',{attrs:{\"sm\":\"1\"}},[_c('v-text-field',{attrs:{\"type\":\"number\",\"min\":\"0\",\"value\":\"0\"},model:{value:(_vm.headerRow),callback:function ($$v) {_vm.headerRow=$$v},expression:\"headerRow\"}})],1)],1),_c('v-file-input',{attrs:{\"label\":_vm.$t('DB_TABLES.IMPORT_TABLE.LABEL'),\"accept\":\".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"},on:{\"change\":_vm.handleFileUpload},model:{value:(_vm.uploadedFile),callback:function ($$v) {_vm.uploadedFile=$$v},expression:\"uploadedFile\"}}),(_vm.loading)?_c('h2',{staticClass:\"mt-2\"},[_vm._v(_vm._s(_vm.loadingText))]):_vm._e(),(_vm.loading)?_c('v-progress-linear',{attrs:{\"indeterminate\":\"\",\"rounded\":\"\",\"height\":\"10\"}}):_vm._e(),(!_vm.loading && _vm.previewData.length > 0)?_c('div',{staticClass:\"mt-4\"},[_c('h2',[_vm._v(\"Uploaded Data Preview\")]),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.tableHeaders,\"items\":_vm.previewData,\"items-per-page\":10,\"fixed-header\":\"\"},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('tr',_vm._l((item),function(value,key,index){return _c('td',{key:index},[_vm._v(_vm._s(value))])}),0)]}}],null,false,1883054563)}),_c('h2',[_vm._v(\"Map Columns\")]),_vm._l((_vm.tableHeaders),function(column,index){return _c('v-row',{key:index},[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('h3',{staticClass:\"mt-5\"},[_vm._v(_vm._s(column.text))])]),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-select',{attrs:{\"label\":\"Select Column\",\"items\":_vm.databaseColumns,\"dense\":\"\"},model:{value:(_vm.columnMapping[column.text]),callback:function ($$v) {_vm.$set(_vm.columnMapping, column.text, $$v)},expression:\"columnMapping[column.text]\"}})],1)],1)})],2):_vm._e()],1)]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelImportData()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmImportData()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gulper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gulper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gulper.vue?vue&type=template&id=7fd25a48&\"\nimport script from \"./gulper.vue?vue&type=script&lang=js&\"\nexport * from \"./gulper.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VProgressLinear } from 'vuetify/lib/components/VProgressLinear';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCol,VCombobox,VDataTable,VFileInput,VProgressLinear,VRow,VSelect,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./databasetables.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./databasetables.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./databasetables.vue?vue&type=template&id=2f920712&\"\nimport script from \"./databasetables.vue?vue&type=script&lang=js&\"\nexport * from \"./databasetables.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCheckbox,VCol,VDataTable,VDialog,VFileInput,VForm,VIcon,VRow,VSelect,VSnackbar,VSpacer,VSwitch,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatabaseTables.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatabaseTables.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatabaseTables.vue?vue&type=template&id=73d50a05&\"\nimport script from \"./DatabaseTables.vue?vue&type=script&lang=js&\"\nexport * from \"./DatabaseTables.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override-alt\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('viewtable')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.tableName)+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('DB_TABLES.VIEW_TABLE.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.newRow()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.ADD_ROW')))]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.close()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.tableData,\"page\":_vm.page,\"items-per-page\":_vm.itemsPerPage,\"hide-default-footer\":\"\",\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading,\"fixed-header\":\"\"},on:{\"update:page\":function($event){_vm.page=$event},\"page-count\":function($event){_vm.pageCount = $event}},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editRow(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteRow(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")])]}}])}),_c('div',{staticClass:\"text-center pt-2 mx-2\"},[_c('v-btn',{staticClass:\"mr-2 float-left white--text\",attrs:{\"small\":\"\",\"color\":\"#f57c00\",\"disabled\":_vm.offset == 0},on:{\"click\":function($event){return _vm.prevBatch()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.FETCH_PREV'))+\" \"+_vm._s(_vm.pageSize))]),_c('v-btn',{staticClass:\"mr-2 float-right white--text\",attrs:{\"small\":\"\",\"color\":\"#f57c00\",\"disabled\":_vm.orderDir == 'ASC' ? _vm.rowTo >= _vm.tableRows : _vm.rowFrom <= _vm.pageSize},on:{\"click\":function($event){return _vm.nextBatch()}}},[_vm._v(_vm._s(_vm.$t('DB_TABLES.BTNS.FETCH_NEXT'))+\" \"+_vm._s(_vm.pageSize))]),(_vm.orderDir == 'ASC')?_c('p',[_vm._v(\"Showing rows \"+_vm._s(_vm.rowFrom)+\" to \"+_vm._s(_vm.rowTo)+\" of \"+_vm._s(_vm.tableRows)+\" \")]):_vm._e(),(_vm.orderDir == 'DESC')?_c('p',[_vm._v(\"Showing rows \"+_vm._s(_vm.rowFrom)+\" to \"+_vm._s(_vm.rowTo)+\" of \"+_vm._s(_vm.tableRows)+\" \")]):_vm._e(),_c('v-pagination',{attrs:{\"length\":_vm.pageCount},model:{value:(_vm.page),callback:function ($$v) {_vm.page=$$v},expression:\"page\"}})],1),_c('div',{staticClass:\"text-center pt-2 mx-2\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('DB_TABLES.VIEW_TABLE.SORT_LABEL'),\"items\":_vm.tableHeaders,\"item-text\":\"fieldName\",\"item-value\":\"fieldName\"},on:{\"change\":_vm.updateOrderBy},model:{value:(_vm.orderField),callback:function ($$v) {_vm.orderField=$$v},expression:\"orderField\"}})],1),_c('v-col',{attrs:{\"sm\":\"3\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('DB_TABLES.VIEW_TABLE.DIR_LABEL'),\"items\":_vm.orderDirs,\"item-text\":\"text\",\"item-value\":\"val\"},on:{\"change\":_vm.updateOrderBy},model:{value:(_vm.orderDir),callback:function ($$v) {_vm.orderDir=$$v},expression:\"orderDir\"}})],1),_c('v-col',{attrs:{\"sm\":\"3\"}},[_c('v-text-field',{staticClass:\"mt-6\",attrs:{\"value\":_vm.pageSize,\"label\":\"Returned records (max 5000)\",\"type\":\"number\",\"min\":\"1\",\"max\":\"5000\"},on:{\"change\":function($event){return _vm.updateResultset($event)}}})],1),_c('v-col',{attrs:{\"sm\":\"3\"}},[_c('v-text-field',{staticClass:\"mt-6\",attrs:{\"value\":_vm.itemsPerPage,\"label\":\"Items per page (max 1000)\",\"type\":\"number\",\"min\":\"1\",\"max\":\"1000\"},on:{\"input\":function($event){_vm.itemsPerPage = parseInt($event, 10)}}})],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.addRowDialog),callback:function ($$v) {_vm.addRowDialog=$$v},expression:\"addRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.addRowTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.addRowText))]),_c('v-form',{ref:\"addRowForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},_vm._l((_vm.tableHeaders),function(item){return _c('div',{key:item.fieldName},[(item.fieldName != 'ID')?_c('div',[(item.fieldType == 'Varchar')?_c('v-text-field',{attrs:{\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Integer' || item.fieldType == 'Big Integer')?_c('v-text-field',{attrs:{\"type\":\"number\",\"step\":\"1\",\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Decimal')?_c('v-text-field',{attrs:{\"type\":\"number\",\"step\":\"any\",\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Text' || item.fieldType == 'Longtext' || item.fieldType == 'Blob')?_c('v-textarea',{attrs:{\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required] : [],\"rows\":\"3\"}}):_vm._e(),(item.fieldType == 'Boolean')?_c('v-checkbox',{attrs:{\"label\":item.fieldName + ' (' + item.fieldType + ')',\"data-field\":item.fieldName,\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Date')?_c('v-text-field',{attrs:{\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.dateFormat] : [_vm.rules.dateFormat]}}):_vm._e(),(item.fieldType == 'Time')?_c('v-text-field',{attrs:{\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.timeFormat] : [_vm.rules.timeFormat]}}):_vm._e(),(item.fieldType == 'DateTime')?_c('v-text-field',{attrs:{\"data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.dateTimeFormat] : [_vm.rules.dateTimeFormat]}}):_vm._e()],1):_vm._e()])}),0)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelAddRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmAddRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.ADD')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"500\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.editRowDialog),callback:function ($$v) {_vm.editRowDialog=$$v},expression:\"editRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.editRowTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.editRowText))]),_c('v-form',{ref:\"editRowForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},_vm._l((_vm.tableHeaders),function(item){return _c('div',{key:item.fieldName},[(item.fieldName != 'ID')?_c('div',[(item.fieldType == 'Varchar')?_c('v-text-field',{attrs:{\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Integer' || item.fieldType == 'Big Integer')?_c('v-text-field',{attrs:{\"type\":\"number\",\"step\":\"1\",\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Decimal')?_c('v-text-field',{attrs:{\"type\":\"number\",\"step\":\"any\",\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Text' || item.fieldType == 'Longtext' || item.fieldType == 'Blob')?_c('v-textarea',{attrs:{\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : [],\"rows\":\"3\"}}):_vm._e(),(item.fieldType == 'Boolean')?_c('v-checkbox',{attrs:{\"label\":item.fieldName + ' (' + item.fieldType + ')',\"edit-data-field\":item.fieldName,\"value\":_vm.rowData[item.fieldName],\"input-value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required] : []}}):_vm._e(),(item.fieldType == 'Date')?_c('v-text-field',{attrs:{\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.dateFormat] : [_vm.rules.dateFormat]}}):_vm._e(),(item.fieldType == 'Time')?_c('v-text-field',{attrs:{\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.timeFormat] : [_vm.rules.timeFormat]}}):_vm._e(),(item.fieldType == 'DateTime')?_c('v-text-field',{attrs:{\"edit-data-field\":item.fieldName,\"label\":item.fieldName + ' (' + item.fieldType + ')',\"value\":_vm.rowData[item.fieldName],\"rules\":!item.allowNull ? [_vm.rules.required, _vm.rules.dateTimeFormat] : [_vm.rules.dateTimeFormat]}}):_vm._e()],1):_vm._e()])}),0)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelEditRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmEditRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.SAVE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.deleteRowDialog),callback:function ($$v) {_vm.deleteRowDialog=$$v},expression:\"deleteRowDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteRowTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteRowText))]),_c('div',[_vm._v(_vm._s(_vm.deleteRowText2))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteRowDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteRow()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewtable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./viewtable.vue?vue&type=template&id=e170bac0&\"\nimport script from \"./viewtable.vue?vue&type=script&lang=js&\"\nexport * from \"./viewtable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./viewtable.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VPagination } from 'vuetify/lib/components/VPagination';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCheckbox,VCol,VDataTable,VDialog,VForm,VPagination,VRow,VSelect,VSpacer,VTextField,VTextarea,VToolbar})\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewTable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ViewTable.vue?vue&type=template&id=4a8de6be&\"\nimport script from \"./ViewTable.vue?vue&type=script&lang=js&\"\nexport * from \"./ViewTable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ViewTable.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('external')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height-external\"},[_c('v-container',[(_vm.formCount == 1)?_c('v-form',{ref:\"theForm\",attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":_vm.deployedForm.forms[0]},on:{\"input\":_vm.handleInput}}),_c('v-spacer'),(_vm.filesAvailable && _vm.showUploadedFiles)?_c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.showFiles = !_vm.showFiles}}},[(!_vm.showFiles)?_c('span',[_vm._v(\"Show Uploaded Files\")]):_vm._e(),(_vm.showFiles)?_c('span',[_vm._v(\"Hide Uploaded Files\")]):_vm._e()])],1),(_vm.showFiles)?_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.caseFiles,\"items-per-page\":10,\"item-key\":\"ITEM_ID\",\"sort-by\":\"CREATED\",\"sort-desc\":true,\"loading-text\":\"Loading... Please wait\"},scopedSlots:_vm._u([{key:\"item.FILE_URL\",fn:function(row){return [_c('a',{attrs:{\"href\":row.item.FILE_URL,\"target\":\"_blank\"}},[_vm._v(_vm._s(row.item.FILE_URL))])]}},{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadFile(row.item)}}},[_vm._v(\" Download \")]):_vm._e(),(!row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openFile(row.item)}}},[_vm._v(\" Open \")]):_vm._e(),(row.item.UPLOADED_BY == 'External User')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteFile(row.item)}}},[_vm._v(\" Delete \")]):_vm._e()]}}],null,false,4077202849)}):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteFileDialog),callback:function ($$v) {_vm.deleteFileDialog=$$v},expression:\"deleteFileDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteFileTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteFileDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteFile()}}},[_vm._v(\"Confirm\")])],1)],1)]],2)],1):_vm._e(),_c('div',{attrs:{\"id\":\"marker\"}}),_c('v-row',{staticClass:\"custom-margin\",attrs:{\"align\":\"center\",\"justify\":\"space-around\"}},[_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"loading\":_vm.loading,\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.submitForm(_vm.formModel)}}},[_vm._v(\" Submit \")])],1)],1):_vm._e(),(_vm.formCount > 1)?_c('v-stepper',{staticClass:\"grey lighten-2\",model:{value:(_vm.s1),callback:function ($$v) {_vm.s1=$$v},expression:\"s1\"}},[_c('v-stepper-items',_vm._l((_vm.deployedForm.forms),function(form){return _c('v-stepper-content',{key:form.group0.step,attrs:{\"step\":form.group0.step}},[_c('v-form',{ref:\"theForm\",refInFor:true,attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-form-base',{attrs:{\"model\":_vm.formModel,\"schema\":form},on:{\"input\":_vm.handleInput}}),_c('v-spacer'),(_vm.filesAvailable && _vm.showUploadedFiles)?_c('v-card',{staticClass:\"grey lighten-2\",attrs:{\"flat\":\"\"}},[_c('v-card-title',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"primary\"},on:{\"click\":function($event){_vm.showFiles = !_vm.showFiles}}},[(!_vm.showFiles)?_c('span',[_vm._v(\"Show Uploaded Files\")]):_vm._e(),(_vm.showFiles)?_c('span',[_vm._v(\"Hide Uploaded Files\")]):_vm._e()])],1),(_vm.showFiles)?_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.caseFiles,\"items-per-page\":10,\"item-key\":\"ITEM_ID\",\"sort-by\":\"CREATED\",\"sort-desc\":true,\"loading-text\":\"Loading... Please wait\"},scopedSlots:_vm._u([{key:\"item.FILE_URL\",fn:function(row){return [_c('a',{attrs:{\"href\":row.item.FILE_URL,\"target\":\"_blank\"}},[_vm._v(_vm._s(row.item.FILE_URL))])]}},{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.downloadFile(row.item)}}},[_vm._v(\" Download \")]):_vm._e(),(!row.item.IS_LOCAL)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.openFile(row.item)}}},[_vm._v(\" Open \")]):_vm._e(),(row.item.UPLOADED_BY == 'External User')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteFile(row.item)}}},[_vm._v(\" Delete \")]):_vm._e()]}}],null,true)}):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteFileDialog),callback:function ($$v) {_vm.deleteFileDialog=$$v},expression:\"deleteFileDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteFileTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileText))]),_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteFileName))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteFileDialog = false}}},[_vm._v(\"Cancel\")]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDeleteFile()}}},[_vm._v(\"Confirm\")])],1)],1)]],2)],1):_vm._e(),_c('div',{attrs:{\"id\":\"marker2\"}}),_c('v-row',{staticClass:\"custom-margin\",attrs:{\"align\":\"center\",\"justify\":\"space-around\"}},[(_vm.s1 <= _vm.formCount && _vm.s1 > 1 && _vm.currentPage != -1 && _vm.startPage != _vm.s1)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.backClick()}}},[_vm._v(\" Back \")]):_vm._e(),(_vm.s1 < _vm.formCount && _vm.s1 != _vm.finalPage)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.continueForm(_vm.formModel)}}},[_vm._v(\" Continue \")]):_vm._e(),(_vm.s1 == _vm.formCount || _vm.s1 == _vm.finalPage)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"secondary\",\"loading\":_vm.loading,\"disabled\":!_vm.formValid || _vm.disableSubmit},on:{\"click\":function($event){return _vm.submitForm(_vm.formModel)}}},[_vm._v(\" Submit \")]):_vm._e()],1)],1)],1)}),1)],1):_vm._e()],1),_c('v-snackbar',{attrs:{\"timeout\":_vm.snackTimeout,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./external.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./external.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./external.vue?vue&type=template&id=76ab6aca&\"\nimport script from \"./external.vue?vue&type=script&lang=js&\"\nexport * from \"./external.vue?vue&type=script&lang=js&\"\nimport style0 from \"./external.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperContent } from 'vuetify/lib/components/VStepper';\nimport { VStepperItems } from 'vuetify/lib/components/VStepper';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VContainer,VDataTable,VDialog,VForm,VRow,VSnackbar,VSpacer,VStepper,VStepperContent,VStepperItems,VToolbar})\n","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./External.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./External.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./External.vue?vue&type=template&id=42a064a3&\"\nimport script from \"./External.vue?vue&type=script&lang=js&\"\nexport * from \"./External.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('thankyou')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height-external\"},[_c('v-container',[_vm._v(\" Form completed, thank you for your time. \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./thankyou.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./thankyou.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./thankyou.vue?vue&type=template&id=77ed0611&\"\nimport script from \"./thankyou.vue?vue&type=script&lang=js&\"\nexport * from \"./thankyou.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VContainer})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThankYou.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThankYou.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThankYou.vue?vue&type=template&id=e5e3a04a&\"\nimport script from \"./ThankYou.vue?vue&type=script&lang=js&\"\nexport * from \"./ThankYou.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('oauthcallback')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height-external\"},[_c('v-container',[_vm._v(\" Please wait... \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./oauthcallback.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./oauthcallback.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./oauthcallback.vue?vue&type=template&id=607d8c96&\"\nimport script from \"./oauthcallback.vue?vue&type=script&lang=js&\"\nexport * from \"./oauthcallback.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VContainer})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthCallback.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OAuthCallback.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OAuthCallback.vue?vue&type=template&id=c5307742&\"\nimport script from \"./OAuthCallback.vue?vue&type=script&lang=js&\"\nexport * from \"./OAuthCallback.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('reports')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('REPORTS.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\",\"disabled\":_vm.allHqConns.length == 0},on:{\"click\":function($event){return _vm.promoteReports()}}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.PROMOTE')))]):_vm._e(),(_vm.currentRole != 'userRole')?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.buildReport()}}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.NEW')))]):_vm._e()],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.reportsList,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},scopedSlots:_vm._u([{key:\"item.actions\",fn:function(row){return [(row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.viewReport(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.VIEW'))+\" \")]):_vm._e(),(row.item.IS_LOCKED == 1)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.showLocked(row.item.LOCKED_BY)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-lock\")])],1):_vm._e(),((_vm.isAdmin || _vm.currentUser == row.item.CREATED_BY) && row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.editReport(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.EDIT'))+\" \")]):_vm._e(),(_vm.isAdmin || _vm.currentUser == row.item.CREATED_BY)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.copyReport(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.COPY'))+\" \")]):_vm._e(),((_vm.isAdmin || _vm.currentUser == row.item.CREATED_BY) && row.item.IS_LOCKED == 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.deleteReport(row.item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.DELETE'))+\" \")]):_vm._e()]}}])}),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.deleteDialog),callback:function ($$v) {_vm.deleteDialog=$$v},expression:\"deleteDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.deleteTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.deleteText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.deleteDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmDelete({reportId: _vm.reportId})}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteReportsDialog),callback:function ($$v) {_vm.promoteReportsDialog=$$v},expression:\"promoteReportsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteReportsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteReportsText))]),_c('v-data-table',{staticClass:\"mx-3 mb-3\",attrs:{\"headers\":_vm.promoteHeaders,\"items\":_vm.allReports,\"items-per-page\":10,\"item-key\":\"ID\",\"sort-by\":\"ID\",\"sort-desc\":true,\"show-select\":\"\",\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading},model:{value:(_vm.reportPromote),callback:function ($$v) {_vm.reportPromote=$$v},expression:\"reportPromote\"}}),_c('v-form',{ref:\"promoteReport\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-select',{attrs:{\"label\":_vm.$t('REPORTS.PROMOTE.FIELDS.ENGINE'),\"items\":_vm.allHqConns,\"item-text\":\"ENGINE_NAME\",\"item-value\":\"URL\",\"rules\":[_vm.rules.required]},model:{value:(_vm.selectedExternalEngine),callback:function ($$v) {_vm.selectedExternalEngine=$$v},expression:\"selectedExternalEngine\"}})],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancelPromote()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.confirmPromoteReports()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteCheckDialog),callback:function ($$v) {_vm.promoteCheckDialog=$$v},expression:\"promoteCheckDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteCheckTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.promoteCheckText))]),_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteCheckText2)}})]),_c('v-card-actions',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":_vm.promoteCheckCancel}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))]),_c('v-spacer'),(_vm.promoteOverwrite > 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"warning\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.NO_OVERWRITE')))]):_vm._e(),_c('v-spacer'),(_vm.promoteOverwrite > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"error\"},on:{\"click\":_vm.promoteCheckOverwrite}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.OVERWRITE')))]):_vm._e(),(_vm.promoteOverwrite == 0 && _vm.promoteCount > 0)?_c('v-btn',{staticClass:\"mr-2\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":_vm.promoteCheckConfirm}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))]):_vm._e()],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"900\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.promoteResultsDialog),callback:function ($$v) {_vm.promoteResultsDialog=$$v},expression:\"promoteResultsDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.promoteResultsTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\",domProps:{\"innerHTML\":_vm._s(_vm.promoteResultsText)}})]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.promoteResultsDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.showLockedDialog),callback:function ($$v) {_vm.showLockedDialog=$$v},expression:\"showLockedDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.lockedTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.lockedText))])]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.showLockedDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reports.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./reports.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./reports.vue?vue&type=template&id=6f25e6c6&\"\nimport script from \"./reports.vue?vue&type=script&lang=js&\"\nexport * from \"./reports.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VDataTable,VDialog,VForm,VIcon,VSelect,VSnackbar,VSpacer,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Reports.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Reports.vue?vue&type=template&id=004d3d67&\"\nimport script from \"./Reports.vue?vue&type=script&lang=js&\"\nexport * from \"./Reports.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('buildreport')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-container',{staticClass:\"width-override\"},[_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeReport()}}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.CLOSE')))]),_c('v-stepper',{model:{value:(_vm.s1),callback:function ($$v) {_vm.s1=$$v},expression:\"s1\"}},[_c('v-stepper-header',[_c('v-stepper-step',{attrs:{\"complete\":_vm.s1 > 1,\"step\":\"1\"}},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.TITLE_1')))]),_c('v-divider'),_c('v-stepper-step',{attrs:{\"complete\":_vm.s1 > 2,\"step\":\"2\"}},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.TITLE_2')))]),_c('v-divider'),_c('v-stepper-step',{attrs:{\"complete\":_vm.s1 > 3,\"step\":\"3\"}},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.TITLE_3')))])],1),_c('v-stepper-items',[_c('v-stepper-content',{attrs:{\"step\":\"1\"}},[_c('v-form',{ref:\"nameReport\",attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pl-2 subtitle-1\"},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.DESC_1')))])])],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_TITLE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_TITLE_LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.reportTitle),callback:function ($$v) {_vm.reportTitle=$$v},expression:\"reportTitle\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_GROUPS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"multiple\":\"\",\"items\":_vm.allGroups,\"item-text\":\"name\",\"item-value\":\"id\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_GROUPS_LABEL'),\"loading\":_vm.fieldLoading,\"rules\":[_vm.rules.select]},model:{value:(_vm.selectedGroups),callback:function ($$v) {_vm.selectedGroups=$$v},expression:\"selectedGroups\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_DESC')))]),_c('v-textarea',{attrs:{\"solo\":\"\",\"rows\":\"3\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_DESC_LABEL'),\"rules\":[_vm.rules.required]},model:{value:(_vm.reportDesc),callback:function ($$v) {_vm.reportDesc=$$v},expression:\"reportDesc\"}})],1)],1),_c('v-spacer'),_c('v-row',{staticClass:\"custom-margin\"},[_c('v-btn',{attrs:{\"absolute\":\"\",\"right\":\"\",\"depressed\":\"\",\"color\":\"secondary\",\"disabled\":!_vm.formValid},on:{\"click\":function($event){return _vm.continueForm('name')}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CONTINUE'))+\" \")])],1)],1)],1),_c('v-stepper-content',{attrs:{\"step\":\"2\"}},[_c('v-form',{ref:\"createReport\",attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-row',[_c('v-btn',{staticClass:\"resetQueryBtn\",attrs:{\"absolute\":\"\",\"right\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.resetQuery()}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.RESET'))+\" \")]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_c('div',{staticClass:\"pl-2 subtitle-1\"},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.DESC_2')))])])],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading,\"rules\":[_vm.rules.select]},model:{value:(_vm.selectedTable1),callback:function ($$v) {_vm.selectedTable1=$$v},expression:\"selectedTable1\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields1,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading,\"rules\":[_vm.rules.select]},on:{\"click\":function($event){return _vm.filterFields(1)}},model:{value:(_vm.selectedFields1),callback:function ($$v) {_vm.selectedFields1=$$v},expression:\"selectedFields1\"}})],1),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn1},on:{\"click\":function($event){return _vm.addRow(2)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")])],1)],1),(_vm.activeRows.indexOf(2) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable2),callback:function ($$v) {_vm.selectedTable2=$$v},expression:\"selectedTable2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields2,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(2)}},model:{value:(_vm.selectedFields2),callback:function ($$v) {_vm.selectedFields2=$$v},expression:\"selectedFields2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType2),callback:function ($$v) {_vm.joinType2=$$v},expression:\"joinType2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins2,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(2)}},model:{value:(_vm.joinField2),callback:function ($$v) {_vm.joinField2=$$v},expression:\"joinField2\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn2},on:{\"click\":function($event){return _vm.addRow(3)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(2)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(3) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable3),callback:function ($$v) {_vm.selectedTable3=$$v},expression:\"selectedTable3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields3,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(3)}},model:{value:(_vm.selectedFields3),callback:function ($$v) {_vm.selectedFields3=$$v},expression:\"selectedFields3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType3),callback:function ($$v) {_vm.joinType3=$$v},expression:\"joinType3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins3,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(3)}},model:{value:(_vm.joinField3),callback:function ($$v) {_vm.joinField3=$$v},expression:\"joinField3\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn3},on:{\"click\":function($event){return _vm.addRow(4)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(3)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(4) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable4),callback:function ($$v) {_vm.selectedTable4=$$v},expression:\"selectedTable4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields4,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(4)}},model:{value:(_vm.selectedFields4),callback:function ($$v) {_vm.selectedFields4=$$v},expression:\"selectedFields4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType4),callback:function ($$v) {_vm.joinType4=$$v},expression:\"joinType4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins4,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(4)}},model:{value:(_vm.joinField4),callback:function ($$v) {_vm.joinField4=$$v},expression:\"joinField4\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn4},on:{\"click\":function($event){return _vm.addRow(5)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(4)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(5) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable5),callback:function ($$v) {_vm.selectedTable5=$$v},expression:\"selectedTable5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields5,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(5)}},model:{value:(_vm.selectedFields5),callback:function ($$v) {_vm.selectedFields5=$$v},expression:\"selectedFields5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType5),callback:function ($$v) {_vm.joinType5=$$v},expression:\"joinType5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins5,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(5)}},model:{value:(_vm.joinField5),callback:function ($$v) {_vm.joinField5=$$v},expression:\"joinField5\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn5},on:{\"click\":function($event){return _vm.addRow(6)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(5)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(6) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable6),callback:function ($$v) {_vm.selectedTable6=$$v},expression:\"selectedTable6\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields6,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(6)}},model:{value:(_vm.selectedFields6),callback:function ($$v) {_vm.selectedFields6=$$v},expression:\"selectedFields6\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType6),callback:function ($$v) {_vm.joinType6=$$v},expression:\"joinType6\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins6,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(6)}},model:{value:(_vm.joinField6),callback:function ($$v) {_vm.joinField6=$$v},expression:\"joinField6\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn6},on:{\"click\":function($event){return _vm.addRow(7)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(6)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(7) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable7),callback:function ($$v) {_vm.selectedTable7=$$v},expression:\"selectedTable7\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields7,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(7)}},model:{value:(_vm.selectedFields7),callback:function ($$v) {_vm.selectedFields7=$$v},expression:\"selectedFields7\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType7),callback:function ($$v) {_vm.joinType7=$$v},expression:\"joinType7\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins7,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(7)}},model:{value:(_vm.joinField7),callback:function ($$v) {_vm.joinField7=$$v},expression:\"joinField7\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn7},on:{\"click\":function($event){return _vm.addRow(8)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(7)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(8) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable8),callback:function ($$v) {_vm.selectedTable8=$$v},expression:\"selectedTable8\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields8,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(8)}},model:{value:(_vm.selectedFields8),callback:function ($$v) {_vm.selectedFields8=$$v},expression:\"selectedFields8\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType8),callback:function ($$v) {_vm.joinType8=$$v},expression:\"joinType8\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins8,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(8)}},model:{value:(_vm.joinField8),callback:function ($$v) {_vm.joinField8=$$v},expression:\"joinField8\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn8},on:{\"click\":function($event){return _vm.addRow(9)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(8)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(9) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable9),callback:function ($$v) {_vm.selectedTable9=$$v},expression:\"selectedTable9\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields9,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(9)}},model:{value:(_vm.selectedFields9),callback:function ($$v) {_vm.selectedFields9=$$v},expression:\"selectedFields9\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType9),callback:function ($$v) {_vm.joinType9=$$v},expression:\"joinType9\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins9,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(9)}},model:{value:(_vm.joinField9),callback:function ($$v) {_vm.joinField9=$$v},expression:\"joinField9\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addBtn9},on:{\"click\":function($event){return _vm.addRow(10)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD_ROW'))+\" \")]),_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(9)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),(_vm.activeRows.indexOf(10) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.TABLE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableTables,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.TABLE_LABEL'),\"loading\":_vm.fieldLoading},model:{value:(_vm.selectedTable10),callback:function ($$v) {_vm.selectedTable10=$$v},expression:\"selectedTable10\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.FIELDS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"multiple\":\"\",\"items\":_vm.availableFields10,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.FIELDS_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterFields(10)}},model:{value:(_vm.selectedFields10),callback:function ($$v) {_vm.selectedFields10=$$v},expression:\"selectedFields10\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.joinTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_TYPE_LABEL')},model:{value:(_vm.joinType10),callback:function ($$v) {_vm.joinType10=$$v},expression:\"joinType10\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.JOIN_ON')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.availableJoins10,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.JOIN_ON_LABEL'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterJoins(10)}},model:{value:(_vm.joinField10),callback:function ($$v) {_vm.joinField10=$$v},expression:\"joinField10\"}})],1),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{staticClass:\"removeRowBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeRow(10)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE_ROW'))+\" \")])],1)],1):_vm._e(),_c('v-divider',{staticClass:\"mb-5 report-divider\"}),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.WHERE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.WHERE'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.where1),callback:function ($$v) {_vm.where1=$$v},expression:\"where1\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.OPERATOR')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.OPERATOR')},model:{value:(_vm.whereType1),callback:function ($$v) {_vm.whereType1=$$v},expression:\"whereType1\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.VALUE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"dense\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.VALUE')},model:{value:(_vm.whereValue1),callback:function ($$v) {_vm.whereValue1=$$v},expression:\"whereValue1\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled1,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(2, 'and')}},model:{value:(_vm.and1),callback:function ($$v) {_vm.and1=$$v},expression:\"and1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.AND'))+\" \")]),_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled1,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(2, 'or')}},model:{value:(_vm.or1),callback:function ($$v) {_vm.or1=$$v},expression:\"or1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.OR'))+\" \")]),_c('v-btn',{staticClass:\"clearWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\",\"disabled\":_vm.addWhereDisabled1},on:{\"click\":function($event){return _vm.clearWhere()}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.CLEAR'))+\" \")])],1)],1),(_vm.activeWheres.indexOf(2) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.WHERE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.WHERE'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.where2),callback:function ($$v) {_vm.where2=$$v},expression:\"where2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.OPERATOR')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.OPERATOR')},model:{value:(_vm.whereType2),callback:function ($$v) {_vm.whereType2=$$v},expression:\"whereType2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.VALUE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"dense\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.VALUE')},model:{value:(_vm.whereValue2),callback:function ($$v) {_vm.whereValue2=$$v},expression:\"whereValue2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled2,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(3, 'and')}},model:{value:(_vm.and2),callback:function ($$v) {_vm.and2=$$v},expression:\"and2\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.AND'))+\" \")]),_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled2,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(3, 'or')}},model:{value:(_vm.or2),callback:function ($$v) {_vm.or2=$$v},expression:\"or2\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.OR'))+\" \")]),_c('v-btn',{staticClass:\"removeWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeWhere(2)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeWheres.indexOf(3) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.WHERE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.WHERE'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.where3),callback:function ($$v) {_vm.where3=$$v},expression:\"where3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.OPERATOR')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.OPERATOR')},model:{value:(_vm.whereType3),callback:function ($$v) {_vm.whereType3=$$v},expression:\"whereType3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.VALUE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"dense\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.VALUE')},model:{value:(_vm.whereValue3),callback:function ($$v) {_vm.whereValue3=$$v},expression:\"whereValue3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled3,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(4, 'and')}},model:{value:(_vm.and3),callback:function ($$v) {_vm.and3=$$v},expression:\"and3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.AND'))+\" \")]),_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled3,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(4, 'or')}},model:{value:(_vm.or3),callback:function ($$v) {_vm.or3=$$v},expression:\"or3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.OR'))+\" \")]),_c('v-btn',{staticClass:\"removeWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeWhere(3)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeWheres.indexOf(4) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.WHERE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.WHERE'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.where4),callback:function ($$v) {_vm.where4=$$v},expression:\"where4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.OPERATOR')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.OPERATOR')},model:{value:(_vm.whereType4),callback:function ($$v) {_vm.whereType4=$$v},expression:\"whereType4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.VALUE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"dense\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.VALUE')},model:{value:(_vm.whereValue4),callback:function ($$v) {_vm.whereValue4=$$v},expression:\"whereValue4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled4,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(5, 'and')}},model:{value:(_vm.and4),callback:function ($$v) {_vm.and4=$$v},expression:\"and4\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.AND'))+\" \")]),_c('v-btn',{staticClass:\"addWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addWhereDisabled4,\"active-class\":\"btn-selected\"},on:{\"click\":function($event){return _vm.addWhere(5, 'or')}},model:{value:(_vm.or4),callback:function ($$v) {_vm.or4=$$v},expression:\"or4\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.OR'))+\" \")]),_c('v-btn',{staticClass:\"removeWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeWhere(4)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeWheres.indexOf(5) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.WHERE')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.WHERE'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.where5),callback:function ($$v) {_vm.where5=$$v},expression:\"where5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.OPERATOR')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.OPERATOR')},model:{value:(_vm.whereType5),callback:function ($$v) {_vm.whereType5=$$v},expression:\"whereType5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.VALUE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"dense\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.VALUE')},model:{value:(_vm.whereValue5),callback:function ($$v) {_vm.whereValue5=$$v},expression:\"whereValue5\"}})],1),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{staticClass:\"removeWhereBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeWhere(5)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),_c('v-divider',{staticClass:\"mb-5 report-divider\"}),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_BY')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_BY'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.orderBy1),callback:function ($$v) {_vm.orderBy1=$$v},expression:\"orderBy1\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.orderTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_TYPE')},model:{value:(_vm.orderType1),callback:function ($$v) {_vm.orderType1=$$v},expression:\"orderType1\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addOrderDisabled1},on:{\"click\":function($event){return _vm.addOrder(2)}},model:{value:(_vm.order1),callback:function ($$v) {_vm.order1=$$v},expression:\"order1\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD'))+\" \")]),_c('v-btn',{staticClass:\"clearOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\",\"disabled\":_vm.addOrderDisabled1},on:{\"click\":function($event){return _vm.clearOrder()}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.CLEAR'))+\" \")])],1)],1),(_vm.activeOrders.indexOf(2) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_BY')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_BY'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.orderBy2),callback:function ($$v) {_vm.orderBy2=$$v},expression:\"orderBy2\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.orderTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_TYPE')},model:{value:(_vm.orderType2),callback:function ($$v) {_vm.orderType2=$$v},expression:\"orderType2\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addOrderDisabled2},on:{\"click\":function($event){return _vm.addOrder(3)}},model:{value:(_vm.order2),callback:function ($$v) {_vm.order2=$$v},expression:\"order2\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD'))+\" \")]),_c('v-btn',{staticClass:\"removeOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeOrder(2)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeOrders.indexOf(3) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_BY')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_BY'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.orderBy3),callback:function ($$v) {_vm.orderBy3=$$v},expression:\"orderBy3\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.orderTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_TYPE')},model:{value:(_vm.orderType3),callback:function ($$v) {_vm.orderType3=$$v},expression:\"orderType3\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addOrderDisabled3},on:{\"click\":function($event){return _vm.addOrder(4)}},model:{value:(_vm.order3),callback:function ($$v) {_vm.order3=$$v},expression:\"order3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD'))+\" \")]),_c('v-btn',{staticClass:\"removeOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeOrder(3)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeOrders.indexOf(4) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_BY')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_BY'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.orderBy4),callback:function ($$v) {_vm.orderBy4=$$v},expression:\"orderBy4\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.orderTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_TYPE')},model:{value:(_vm.orderType4),callback:function ($$v) {_vm.orderType4=$$v},expression:\"orderType4\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-btn',{staticClass:\"addOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":_vm.addOrderDisabled4},on:{\"click\":function($event){return _vm.addOrder(5)}},model:{value:(_vm.order4),callback:function ($$v) {_vm.order4=$$v},expression:\"order4\"}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.ADD'))+\" \")]),_c('v-btn',{staticClass:\"removeOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeOrder(4)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),(_vm.activeOrders.indexOf(5) !== -1)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_BY')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.whereOptions,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_BY'),\"loading\":_vm.fieldLoading},on:{\"click\":function($event){return _vm.filterWhere()}},model:{value:(_vm.orderBy5),callback:function ($$v) {_vm.orderBy5=$$v},expression:\"orderBy5\"}})],1),_c('v-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.ORDER_TYPE')))]),_c('v-select',{attrs:{\"solo\":\"\",\"dense\":\"\",\"items\":_vm.orderTypes,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('REPORTS.FIELDS.ORDER_TYPE')},model:{value:(_vm.orderType5),callback:function ($$v) {_vm.orderType5=$$v},expression:\"orderType5\"}})],1),_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{staticClass:\"removeOrderBtn\",attrs:{\"small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.removeOrder(5)}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.REMOVE'))+\" \")])],1)],1):_vm._e(),_c('v-spacer'),_c('v-row',{staticClass:\"custom-margin\"},[_c('v-btn',{attrs:{\"absolute\":\"\",\"left\":\"\",\"depressed\":\"\",\"color\":\"success\",\"disabled\":!_vm.formValid},on:{\"click\":function($event){return _vm.buildQuery()}}},[_vm._v(\" \"+_vm._s(_vm.$t('REPORTS.BTNS.BUILD'))+\" \")])],1),(_vm.showResult)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"mt-2 body-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.BUILD_REPORT.ADV_MODE_DESC')))]),_c('v-switch',{staticClass:\"ml-2\",attrs:{\"dense\":\"\",\"label\":_vm.$t('REPORTS.BUILD_REPORT.ADV_MODE_TOGGLE')},model:{value:(_vm.isAdvanced),callback:function ($$v) {_vm.isAdvanced=$$v},expression:\"isAdvanced\"}})],1)],1):_vm._e(),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[(_vm.showResult)?_c('v-textarea',{attrs:{\"solo\":\"\",\"disabled\":!_vm.isAdvanced},model:{value:(_vm.buildResult),callback:function ($$v) {_vm.buildResult=$$v},expression:\"buildResult\"}}):_vm._e()],1)],1),_c('v-spacer'),_c('v-row',{staticClass:\"custom-margin\"},[_c('v-btn',{attrs:{\"absolute\":\"\",\"left\":\"\",\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.backClick()}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.BACK'))+\" \")]),_c('v-btn',{attrs:{\"absolute\":\"\",\"right\":\"\",\"depressed\":\"\",\"color\":\"secondary\",\"disabled\":!_vm.formValid || !_vm.allowContinue},on:{\"click\":function($event){return _vm.continueForm('create')}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.CONTINUE'))+\" \")])],1)],1)],1),_c('v-stepper-content',{attrs:{\"step\":\"3\"}},[_c('v-form',{ref:\"previewReport\",attrs:{\"lazy-validation\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}},model:{value:(_vm.formValid),callback:function ($$v) {_vm.formValid=$$v},expression:\"formValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_TITLE')))]),_c('v-text-field',{attrs:{\"solo\":\"\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_TITLE_LABEL'),\"disabled\":\"\"},model:{value:(_vm.reportTitle),callback:function ($$v) {_vm.reportTitle=$$v},expression:\"reportTitle\"}})],1),_c('v-col',{attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_GROUPS')))]),_c('v-autocomplete',{attrs:{\"solo\":\"\",\"multiple\":\"\",\"items\":_vm.allGroups,\"item-text\":\"name\",\"item-value\":\"id\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_GROUPS_LABEL'),\"disabled\":\"\"},model:{value:(_vm.selectedGroups),callback:function ($$v) {_vm.selectedGroups=$$v},expression:\"selectedGroups\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"pl-2 subtitle-2\"},[_vm._v(_vm._s(_vm.$t('REPORTS.FIELDS.REPORT_DESC')))]),_c('v-textarea',{attrs:{\"solo\":\"\",\"rows\":\"3\",\"label\":_vm.$t('REPORTS.FIELDS.REPORT_DESC_LABEL'),\"disabled\":\"\"},model:{value:(_vm.reportDesc),callback:function ($$v) {_vm.reportDesc=$$v},expression:\"reportDesc\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card',[_c('v-card-title',[_c('v-text-field',{attrs:{\"solo\":\"\",\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('REPORTS.BUILD_REPORT.PREVIEW_SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1),_c('v-spacer'),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.reportSqlData,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading,\"fixed-header\":\"\"}})],1)],1)],1),_c('v-spacer'),_c('v-row',{staticClass:\"custom-margin\"},[_c('v-btn',{attrs:{\"absolute\":\"\",\"left\":\"\",\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.backClick()}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.BACK'))+\" \")]),_c('v-btn',{attrs:{\"absolute\":\"\",\"right\":\"\",\"depressed\":\"\",\"color\":\"secondary\",\"loading\":_vm.loading,\"disabled\":!_vm.formValid},on:{\"click\":function($event){return _vm.submitForm()}}},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.BTNS.SAVE'))+\" \")])],1)],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false},model:{value:(_vm.resetQueryDialog),callback:function ($$v) {_vm.resetQueryDialog=$$v},expression:\"resetQueryDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('REPORTS.RESET_QUERY.TITLE')))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.$t('REPORTS.RESET_QUERY.DESC')))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.resetQueryDialog = false}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CANCEL')))]),_c('v-spacer'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.confirmResetQuery()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CONFIRM')))])],1)],1)]],2),_c('v-snackbar',{attrs:{\"timeout\":_vm.snackTimeout,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildreport.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildreport.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./buildreport.vue?vue&type=template&id=2de42998&\"\nimport script from \"./buildreport.vue?vue&type=script&lang=js&\"\nexport * from \"./buildreport.vue?vue&type=script&lang=js&\"\nimport style0 from \"./buildreport.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAutocomplete } from 'vuetify/lib/components/VAutocomplete';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VStepper } from 'vuetify/lib/components/VStepper';\nimport { VStepperContent } from 'vuetify/lib/components/VStepper';\nimport { VStepperHeader } from 'vuetify/lib/components/VStepper';\nimport { VStepperItems } from 'vuetify/lib/components/VStepper';\nimport { VStepperStep } from 'vuetify/lib/components/VStepper';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAutocomplete,VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDialog,VDivider,VForm,VRow,VSelect,VSnackbar,VSpacer,VStepper,VStepperContent,VStepperHeader,VStepperItems,VStepperStep,VSwitch,VTextField,VTextarea,VToolbar})\n","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildReport.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuildReport.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BuildReport.vue?vue&type=template&id=a9f02950&\"\nimport script from \"./BuildReport.vue?vue&type=script&lang=js&\"\nexport * from \"./BuildReport.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BuildReport.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override-alt\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('viewreport')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.rTitle)+\" \"),_c('v-spacer'),_c('v-text-field',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":_vm.$t('REPORTS.VIEW_REPORT.SEARCH_TEXT'),\"single-line\":\"\",\"hide-details\":\"\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}}),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"success\"},on:{\"click\":function($event){return _vm.exportReport()}}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.EXPORT')))]),_c('v-btn',{staticClass:\"mr-2 ma-3\",attrs:{\"small\":\"\",\"color\":\"secondary\"},on:{\"click\":function($event){return _vm.closeReport()}}},[_vm._v(_vm._s(_vm.$t('REPORTS.BTNS.CLOSE')))])],1),_c('v-data-table',{staticClass:\"elevation-1 mx-3 mb-3\",attrs:{\"headers\":_vm.headers,\"items\":_vm.reportSqlData,\"items-per-page\":25,\"footer-props\":{'items-per-page-options':[25, 50, 100, -1]},\"search\":_vm.search,\"item-key\":\"ID\",\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"loading-text\":\"Loading... Please wait\",\"loading\":_vm.loading,\"fixed-header\":\"\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewreport.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./viewreport.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./viewreport.vue?vue&type=template&id=3c3a9b86&\"\nimport script from \"./viewreport.vue?vue&type=script&lang=js&\"\nexport * from \"./viewreport.vue?vue&type=script&lang=js&\"\nimport style0 from \"./viewreport.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardTitle,VDataTable,VSpacer,VTextField})\n","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewReport.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewReport.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ViewReport.vue?vue&type=template&id=cadaaa68&\"\nimport script from \"./ViewReport.vue?vue&type=script&lang=js&\"\nexport * from \"./ViewReport.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ViewReport.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',{staticClass:\"width-override\"},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('support')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"rsl-fixed-height\"},[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"md\":\"12\"}},[_c('v-card',{staticClass:\"pa-5\"},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.$t('SUPPORT.TITLE'))+\" \")]),_c('v-form',{ref:\"supportForm\",model:{value:(_vm.isFormValid),callback:function ($$v) {_vm.isFormValid=$$v},expression:\"isFormValid\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('SUPPORT.FIELDS.FROM'),\"disabled\":\"\"},model:{value:(_vm.supportFrom),callback:function ($$v) {_vm.supportFrom=$$v},expression:\"supportFrom\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('SUPPORT.FIELDS.TO'),\"disabled\":\"\"},model:{value:(_vm.supportTo),callback:function ($$v) {_vm.supportTo=$$v},expression:\"supportTo\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-text-field',{attrs:{\"type\":'text',\"label\":_vm.$t('SUPPORT.FIELDS.SUBJECT'),\"rules\":[_vm.rules.required]},model:{value:(_vm.supportSubject),callback:function ($$v) {_vm.supportSubject=$$v},expression:\"supportSubject\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-select',{attrs:{\"solo\":\"\",\"items\":_vm.categories,\"item-text\":\"name\",\"item-value\":\"val\",\"label\":_vm.$t('SUPPORT.FIELDS.CATEGORY'),\"rules\":[_vm.rules.required]},model:{value:(_vm.supportCategory),callback:function ($$v) {_vm.supportCategory=$$v},expression:\"supportCategory\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-textarea',{attrs:{\"label\":_vm.$t('SUPPORT.FIELDS.DESC'),\"rules\":[_vm.rules.required]},model:{value:(_vm.supportDescription),callback:function ($$v) {_vm.supportDescription=$$v},expression:\"supportDescription\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-file-input',{attrs:{\"show-size\":1024,\"label\":_vm.$t('SUPPORT.FIELDS.FILES')},model:{value:(_vm.attachments),callback:function ($$v) {_vm.attachments=$$v},expression:\"attachments\"}})],1)],1),_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-btn',{staticClass:\"mr-2 float-right\",attrs:{\"right\":\"\",\"color\":\"success\",\"disabled\":!_vm.isFormValid},on:{\"click\":function($event){return _vm.submitRequest()}}},[_vm._v(_vm._s(_vm.$t('SUPPORT.BTNS.SUBMIT')))])],1)],1)],1)],1)],1)],1),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"max-width\":\"400\",\"retain-focus\":false,\"persistent\":\"\"},model:{value:(_vm.supportResultDialog),callback:function ($$v) {_vm.supportResultDialog=$$v},expression:\"supportResultDialog\"}},[[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.supportResultTitle))]),_c('v-card-text',[_c('div',{staticClass:\"pt-5\"},[_vm._v(_vm._s(_vm.supportResultText))])]),_c('v-card-actions',[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.close()}}},[_vm._v(_vm._s(_vm.$t('GENERAL.BTNS.CLOSE')))])],1)],1)]],2)],1),_c('v-snackbar',{attrs:{\"timeout\":_vm.snackTimeout,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./support.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./support.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./support.vue?vue&type=template&id=41eb9206&\"\nimport script from \"./support.vue?vue&type=script&lang=js&\"\nexport * from \"./support.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFileInput } from 'vuetify/lib/components/VFileInput';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDialog,VFileInput,VForm,VRow,VSelect,VSnackbar,VTextField,VTextarea,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Support.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Support.vue?vue&type=template&id=526b8537&\"\nimport script from \"./Support.vue?vue&type=script&lang=js&\"\nexport * from \"./Support.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',[_c('v-row',{staticClass:\"bkgd-black\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('changepw')],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"text-center\"},[_c('v-col',{attrs:{\"cols\":\"10\",\"md\":\"4\",\"sm\":\"8\",\"offset-md\":\"4\",\"offset-sm\":\"2\",\"offset\":\"1\"}},[_c('v-img',{staticClass:\"mx-auto\",attrs:{\"src\":_vm.upperLogo,\"alt\":\"Welcome to Harlequin\"}}),_c('v-card',[_c('v-toolbar',{attrs:{\"color\":\"#f87723\",\"dark\":\"\"}},[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD')))]),_c('v-card-text',[_c('v-form',[(_vm.reset && !_vm.ssoDetails.msalEnabled && !_vm.ssoDetails.samlEnabled)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"label\":_vm.$t('ADMIN.USERS.FIELDS.PASS'),\"append-icon\":_vm.showPass ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass ? 'text' : 'password',\"rules\":[_vm.rules.password],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass = !_vm.showPass}},model:{value:(_vm.password1),callback:function ($$v) {_vm.password1=$$v},expression:\"password1\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-text-field',{attrs:{\"onpaste\":\"return false\",\"label\":_vm.$t('ADMIN.USERS.FIELDS.CONFIRM_PASS'),\"append-icon\":_vm.showPass2 ? 'mdi-eye-off' : 'mdi-eye',\"type\":_vm.showPass2 ? 'text' : 'password',\"rules\":_vm.password1 != '' ? [_vm.rules.required, _vm.rules.password, _vm.rules.passMatch] : [],\"autocomplete\":\"new-password\"},on:{\"click:append\":function($event){_vm.showPass2 = !_vm.showPass2}},model:{value:(_vm.password2),callback:function ($$v) {_vm.password2=$$v},expression:\"password2\"}})],1)],1):_vm._e(),(!_vm.reset || _vm.ssoDetails.msalEnabled || _vm.ssoDetails.samlEnabled)?_c('v-row',[_c('div',{staticClass:\"mt-2\"},[_vm._v(_vm._s(_vm.$t('GENERAL.PW_RESET_NO')))])]):_vm._e()],1)],1),_c('v-card-actions',[_c('v-col',{staticClass:\"text-center\"},[(_vm.reset && !_vm.ssoDetails.msalEnabled && !_vm.ssoDetails.samlEnabled)?_c('v-btn',{attrs:{\"large\":\"\",\"dark\":\"\",\"color\":\"#f87723\"},on:{\"click\":function($event){return _vm.changePw({password1: _vm.password1, password2: _vm.password2})}}},[_vm._v(_vm._s(_vm.$t('SETTINGS.CHANGE_PASSWORD')))]):_vm._e()],1)],1),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":_vm.snackColor},scopedSlots:_vm._u([{key:\"action\",fn:function(ref){\nvar attrs = ref.attrs;\nreturn [_c('v-btn',_vm._b({attrs:{\"text\":\"\"},on:{\"click\":function($event){_vm.snack = false}}},'v-btn',attrs,false),[_vm._v(\" Close \")])]}}]),model:{value:(_vm.snack),callback:function ($$v) {_vm.snack=$$v},expression:\"snack\"}},[_vm._v(\" \"+_vm._s(_vm.snackText)+\" \")])],1),_c('v-img',{staticClass:\"mx-auto rsl-logo\",attrs:{\"src\":_vm.lowerLogo,\"alt\":\"Welcome to Harlequin\"}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changepw.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changepw.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./changepw.vue?vue&type=template&id=5ea0117e&\"\nimport script from \"./changepw.vue?vue&type=script&lang=js&\"\nexport * from \"./changepw.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCol,VForm,VImg,VRow,VSnackbar,VTextField,VToolbar})\n","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangePassword.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangePassword.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChangePassword.vue?vue&type=template&id=62ec78ec&\"\nimport script from \"./ChangePassword.vue?vue&type=script&lang=js&\"\nexport * from \"./ChangePassword.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VLayout,VRow})\n","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport store from '../store'\nimport Login from '../views/Login.vue'\nimport Home from '../views/Home.vue'\nimport StartNewCase from '../views/StartNewCase.vue'\nimport RunningCases from '../views/RunningCases.vue'\nimport MyTasks from '../views/MyTasks.vue'\nimport TeamTasks from '../views/TeamTasks.vue'\nimport UnassignedTasks from '../views/UnassignedTasks.vue'\nimport AllTasks from '../views/AllTasks.vue'\nimport HistoricCases from '../views/HistoricCases.vue'\nimport ViewTask from '../views/ViewTask.vue'\nimport ViewCaseHistory from '../views/ViewCaseHistory.vue'\nimport Admin from '../views/Admin.vue'\nimport FormBuilder from '../views/FormBuilder.vue'\nimport BuildForm from '../views/BuildForm.vue'\nimport ProcessDesigner from '../views/ProcessDesigner.vue'\nimport BuildProcess from '../views/BuildProcess.vue'\nimport Templates from '../views/Templates.vue'\nimport TemplateEditor from '../views/TemplateEditor.vue'\nimport Documents from '../views/Documents.vue'\nimport DatabaseTables from '../views/DatabaseTables.vue'\nimport ViewTable from '../views/ViewTable.vue'\nimport External from '../views/External.vue'\nimport ThankYou from '../views/ThankYou.vue'\nimport OAuthCallback from '../views/OAuthCallback.vue'\nimport Reports from '../views/Reports.vue'\nimport BuildReport from '../views/BuildReport.vue'\nimport ViewReport from '../views/ViewReport.vue'\nimport Support from '../views/Support.vue'\nimport ChangePassword from '../views/ChangePassword.vue'\n\nVue.use(VueRouter)\n\nconst routes = [\n {\n path: '/',\n name: 'Login',\n component: Login\n },\n {\n path: '/external',\n name: 'External',\n component: External\n },\n {\n path: '/changepw',\n name: 'ChangePassword',\n component: ChangePassword\n },\n {\n path: '/thank-you',\n name: 'ThankYou',\n component: ThankYou\n },\n {\n path: '/oauthcallback',\n name: 'OAuthCallback',\n component: OAuthCallback\n },\n {\n path: '/dashboard',\n name: 'Home',\n component: Home,\n meta: {\n title: 'MAIN_MENU.ITEMS.DASH',\n requiresAuth: true\n }\n },\n {\n path: '/admin',\n name: 'Admin',\n component: Admin,\n meta: {\n title: 'MAIN_MENU.ITEMS.ADMIN',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/documents',\n name: 'Documents',\n component: Documents,\n meta: {\n title: 'MAIN_MENU.ITEMS.DOCS',\n requiresAuth: true\n }\n },\n {\n path: '/templates',\n name: 'Templates',\n component: Templates,\n meta: {\n title: 'MAIN_MENU.ITEMS.TEMPLATES',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/template-editor',\n name: 'TemplateEditor',\n component: TemplateEditor,\n meta: {\n title: 'MAIN_MENU.ITEMS.TEMPLATE_EDITOR',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/form-builder',\n name: 'FormBuilder',\n component: FormBuilder,\n meta: {\n title: 'MAIN_MENU.ITEMS.FORM_BUILDER',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/build-form',\n name: 'BuildForm',\n component: BuildForm,\n meta: {\n title: 'MAIN_MENU.ITEMS.BUILD_FORM',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/process-designer',\n name: 'ProcessDesigner',\n component: ProcessDesigner,\n meta: {\n title: 'MAIN_MENU.ITEMS.PROCESS_DESIGNER',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/build-process',\n name: 'BuildProcess',\n component: BuildProcess,\n meta: {\n title: 'MAIN_MENU.ITEMS.BUILD_PROCESS',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/database-tables',\n name: 'DatabaseTables',\n component: DatabaseTables,\n meta: {\n title: 'MAIN_MENU.ITEMS.DB_TABLES',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/view-table',\n name: 'ViewTable',\n component: ViewTable,\n meta: {\n title: 'MAIN_MENU.ITEMS.DB_VIEW_TABLE',\n requiresAuth: true,\n requiresDevPlus: true\n }\n },\n {\n path: '/start-new-case',\n name: 'StartNewCase',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: StartNewCase,\n meta: {\n title: 'MAIN_MENU.ITEMS.START_CASE',\n requiresAuth: true\n }\n },\n {\n path: '/running-cases',\n name: 'RunningCases',\n component: RunningCases,\n meta: {\n title: 'MAIN_MENU.ITEMS.RUNNING_CASES',\n requiresAuth: true,\n requiresSuperPlus: true\n }\n },\n {\n path: '/my-tasks',\n name: 'MyTasks',\n component: MyTasks,\n meta: {\n title: 'MAIN_MENU.ITEMS.MY_TASKS',\n requiresAuth: true\n }\n },\n {\n path: '/team-tasks',\n name: 'TeamTasks',\n component: TeamTasks,\n meta: {\n title: 'MAIN_MENU.ITEMS.TEAM_TASKS',\n requiresAuth: true,\n requiresManagerPlus: true\n }\n },\n {\n path: '/unassigned-tasks',\n name: 'UnassignedTasks',\n component: UnassignedTasks,\n meta: {\n title: 'MAIN_MENU.ITEMS.UNASSIGNED_TASKS',\n requiresAuth: true\n }\n },\n {\n path: '/all-tasks',\n name: 'AllTasks',\n component: AllTasks,\n meta: {\n title: 'MAIN_MENU.ITEMS.ALL_TASKS',\n requiresAuth: true,\n requiresSuperPlus: true\n }\n },\n {\n path: '/historic-cases',\n name: 'HistoricCases',\n component: HistoricCases,\n meta: {\n title: 'MAIN_MENU.ITEMS.HISTORIC_CASES',\n requiresAuth: true,\n requiresSuperPlus: true\n }\n },\n {\n path: '/reports',\n name: 'Reports',\n component: Reports,\n meta: {\n title: 'MAIN_MENU.ITEMS.REPORTS',\n requiresAuth: true\n }\n },\n {\n path: '/build-report',\n name: 'BuildReport',\n component: BuildReport,\n meta: {\n title: 'MAIN_MENU.ITEMS.BUILD_REPORT',\n requiresAuth: true,\n requiresManagerPlus: true\n }\n },\n {\n path: '/view-report',\n name: 'ViewReport',\n component: ViewReport,\n meta: {\n title: 'MAIN_MENU.ITEMS.VIEW_REPORT',\n requiresAuth: true\n }\n },\n {\n path: '/view-task',\n name: 'ViewTask',\n component: ViewTask,\n meta: {\n title: 'MAIN_MENU.ITEMS.VIEW_TASK',\n requiresAuth: true\n }\n },\n {\n path: '/view-case-history',\n name: 'ViewCaseHistory',\n component: ViewCaseHistory,\n meta: {\n title: 'MAIN_MENU.ITEMS.VIEW_CASE_HISTORY',\n requiresAuth: true,\n requiresSuperPlus: true\n }\n },\n {\n path: '/support',\n name: 'Support',\n component: Support,\n meta: {\n title: 'MAIN_MENU.ITEMS.SUPPORT_REQUEST',\n requiresAuth: true\n }\n }\n]\n\nconst router = new VueRouter({\n mode: 'history', // For docker\n base: process.env.BASE_URL, // For docker\n routes\n})\n\n// Nav guards\nrouter.beforeEach((to, from, next) => {\n\n // Check for requiresAuth guard\n if(to.matched.some(record => record.meta.requiresAuth)) {\n // Check if not logged in\n if(!store.state.isLoggedIn) {\n // Go to login page\n next({\n path: '/',\n query: {\n redirect: to.fullPath\n }\n });\n }else {\n // Check for requiresAdmin guard\n if(to.matched.some(record => record.meta.requiresAdmin)) {\n // Check is user is not an admin\n if(!store.state.isAdmin) {\n // Got to home page\n next({\n path: '/dashboard',\n query: {\n redirect: to.fullPath\n }\n });\n }else {\n // Proceed to the route\n next();\n }\n }else {\n // Proceed to the route\n next();\n }\n\n // Check for requiresDevPlus guard\n if(to.matched.some(record => record.meta.requiresDevPlus)) {\n // Check is user is not an admin or developer\n if(!store.state.isAdmin && !store.state.isDeveloper) {\n // Got to home page\n next({\n path: '/dashboard',\n query: {\n redirect: to.fullPath\n }\n });\n }else {\n // Proceed to the route\n next();\n }\n }else {\n // Proceed to the route\n next();\n }\n\n // Check for requiresSuperPlus guard\n if(to.matched.some(record => record.meta.requiresSuperPlus)) {\n // Check is user is not an admin or developer or supervisor\n if(!store.state.isAdmin && !store.state.isDeveloper && !store.state.isSupervisor) {\n // Got to home page\n next({\n path: '/dashboard',\n query: {\n redirect: to.fullPath\n }\n });\n }else {\n // Proceed to the route\n next();\n }\n }else {\n // Proceed to the route\n next();\n }\n\n // Check for requiresManagerPlus guard\n if(to.matched.some(record => record.meta.requiresManagerPlus)) {\n // Check is user is not an admin, developer, supervisor or manager\n if(!store.state.isAdmin && !store.state.isDeveloper && !store.state.isSupervisor && !store.state.isManager) {\n // Got to home page\n next({\n path: '/dashboard',\n query: {\n redirect: to.fullPath\n }\n });\n }else {\n // Proceed to the route\n next();\n }\n }else {\n // Proceed to the route\n next();\n }\n }\n \n }else {\n // Proceed to the route\n next();\n }\n})\n\nexport default router\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper'),\n eventDefinitionHelper = require('../../../../helper/EventDefinitionHelper'),\n utils = require('../../../../Utils');\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../../process-builder/lib/base/BaseServices').is;\n\nvar forEach = require('lodash/forEach'),\n find = require('lodash/find'),\n filter = require('lodash/filter');\n\n\nfunction getContainedActivities(element) {\n return getFlowElements(element, 'bpmn:Activity');\n}\n\nfunction getContainedBoundaryEvents(element) {\n return getFlowElements(element, 'bpmn:BoundaryEvent');\n}\n\nfunction getFlowElements(element, type) {\n return utils.filterElementsByType(element.flowElements, type);\n}\n\nfunction isCompensationEventAttachedToActivity(activity, boundaryEvents) {\n var activityId = activity.id;\n var boundaryEvent = find(boundaryEvents, function(boundaryEvent) {\n var compensateEventDefinition = eventDefinitionHelper.getCompensateEventDefinition(boundaryEvent);\n var attachedToRef = boundaryEvent.attachedToRef;\n return compensateEventDefinition && attachedToRef && attachedToRef.id === activityId;\n });\n return !!boundaryEvent;\n}\n\n// subprocess: only when it is not triggeredByEvent\n// activity: only when it attach a compensation boundary event\n// callActivity: no limitation\nfunction canActivityBeCompensated(activity, boundaryEvents) {\n return (is(activity, 'bpmn:SubProcess') && !activity.triggeredByEvent) ||\n is(activity, 'bpmn:CallActivity') ||\n isCompensationEventAttachedToActivity(activity, boundaryEvents);\n}\n\nfunction getActivitiesForCompensation(element) {\n var boundaryEvents = getContainedBoundaryEvents(element);\n return filter(getContainedActivities(element), function(activity) {\n return canActivityBeCompensated(activity, boundaryEvents);\n });\n}\n\nfunction getActivitiesForActivityRef(element) {\n var bo = getBusinessObject(element);\n var parent = bo.$parent;\n\n var activitiesForActivityRef = getActivitiesForCompensation(parent);\n\n // if throwing compensation event is in an event sub process:\n // get also all activities outside of the event sub process\n if (is(parent, 'bpmn:SubProcess') && parent.triggeredByEvent) {\n parent = parent.$parent;\n if (parent) {\n activitiesForActivityRef = activitiesForActivityRef.concat(getActivitiesForCompensation(parent));\n }\n\n }\n\n return activitiesForActivityRef;\n}\n\nfunction createActivityRefOptions(element) {\n var options = [ { value: '' } ];\n\n var activities = getActivitiesForActivityRef(element);\n forEach(activities, function(activity) {\n var activityId = activity.id;\n var name = (activity.name ? (activity.name + ' ') : '') + '(id=' + activityId + ')';\n options.push({ value: activityId, name: name });\n });\n\n return options;\n}\n\n\nmodule.exports = function(group, element, bpmnFactory, compensateEventDefinition, elementRegistry, translate) {\n\n group.entries.push(entryFactory.checkbox(translate, {\n id: 'wait-for-completion',\n label: translate('Wait for Completion'),\n modelProperty: 'waitForCompletion',\n\n get: function(element, node) {\n return {\n waitForCompletion: compensateEventDefinition.waitForCompletion\n };\n },\n\n set: function(element, values) {\n values.waitForCompletion = values.waitForCompletion || false;\n return cmdHelper.updateBusinessObject(element, compensateEventDefinition, values);\n }\n }));\n\n group.entries.push(entryFactory.selectBox(translate, {\n id: 'activity-ref',\n label: translate('Activity Ref'),\n selectOptions: createActivityRefOptions(element),\n modelProperty: 'activityRef',\n\n get: function(element, node) {\n var activityRef = compensateEventDefinition.activityRef;\n activityRef = activityRef && activityRef.id;\n return {\n activityRef: activityRef || ''\n };\n },\n\n set: function(element, values) {\n var activityRef = values.activityRef || undefined;\n activityRef = activityRef && getBusinessObject(elementRegistry.get(activityRef));\n return cmdHelper.updateBusinessObject(element, compensateEventDefinition, {\n activityRef: activityRef\n });\n }\n }));\n\n};\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\n/**\n * Create an entry to modify a property of an element which\n * is referenced by a event definition.\n *\n * @param {djs.model.Base} element\n * @param {ModdleElement} definition\n * @param {BpmnFactory} bpmnFactory\n * @param {Object} options\n * @param {string} options.id the id of the entry\n * @param {string} options.label the label of the entry\n * @param {string} options.referenceProperty the name of referencing property\n * @param {string} options.modelProperty the name of property to modify\n * @param {string} options.shouldValidate a flag indicate whether to validate or not\n *\n * @return {Array} return an array containing the entries\n */\nmodule.exports = function(element, definition, bpmnFactory, translate, options) {\n\n var id = options.id || 'element-property';\n var label = options.label;\n var referenceProperty = options.referenceProperty;\n var modelProperty = options.modelProperty || 'name';\n var shouldValidate = options.shouldValidate || false;\n var description = options.description;\n var canBeHidden = !!options.hidden && typeof options.hidden === 'function';\n\n var entry = entryFactory.textField(translate, {\n id: id,\n label: label,\n modelProperty: modelProperty,\n description: description,\n\n get: function(element, node) {\n var reference = definition.get(referenceProperty);\n var props = {};\n props[modelProperty] = reference && reference.get(modelProperty);\n return props;\n },\n\n set: function(element, values, node) {\n var reference = definition.get(referenceProperty);\n var props = {};\n props[modelProperty] = values[modelProperty] || undefined;\n return cmdHelper.updateBusinessObject(element, reference, props);\n },\n\n hidden: function(element, node) {\n if (canBeHidden) {\n return options.hidden.apply(definition, arguments) || !definition.get(referenceProperty);\n }\n return !definition.get(referenceProperty);\n }\n });\n\n if (shouldValidate) {\n entry.validate = function(element, values, node) {\n var reference = definition.get(referenceProperty);\n if (reference && !values[modelProperty]) {\n var validationErrors = {};\n validationErrors[modelProperty] = 'Must provide a value';\n return validationErrors;\n }\n };\n }\n\n return [ entry ];\n};\n","'use strict';\n\nvar domQuery = require('min-dom').query,\n domClear = require('min-dom').clear,\n domClasses = require('min-dom').classes,\n is = require('../../process-builder/lib/base/BaseServices').is,\n forEach = require('lodash/forEach'),\n domify = require('min-dom').domify,\n Ids = require('ids').default;\n\nvar SPACE_REGEX = /\\s/;\n\n// for QName validation as per http://www.w3.org/TR/REC-xml/#NT-NameChar\nvar QNAME_REGEX = /^([a-z][\\w-.]*:)?[a-z_][\\w-.]*$/i;\n\n// for ID validation as per BPMN Schema (QName - Namespace)\nvar ID_REGEX = /^[a-z_][\\w-.]*$/i;\n\nvar HTML_ESCAPE_MAP = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n '\\'': '''\n};\n\nfunction selectedOption(selectBox) {\n if (selectBox.selectedIndex >= 0) {\n return selectBox.options[selectBox.selectedIndex].value;\n }\n}\n\nmodule.exports.selectedOption = selectedOption;\n\n\nfunction selectedType(elementSyntax, inputNode) {\n var typeSelect = domQuery(elementSyntax, inputNode);\n return selectedOption(typeSelect);\n}\n\nmodule.exports.selectedType = selectedType;\n\n\n/**\n * Retrieve the root element the document this\n * business object is contained in.\n *\n * @return {ModdleElement}\n */\nfunction getRoot(businessObject) {\n var parent = businessObject;\n while (parent.$parent) {\n parent = parent.$parent;\n }\n return parent;\n}\n\nmodule.exports.getRoot = getRoot;\n\n\n/**\n * filters all elements in the list which have a given type.\n * removes a new list\n */\nfunction filterElementsByType(objectList, type) {\n var list = objectList || [];\n var result = [];\n forEach(list, function(obj) {\n if (is(obj, type)) {\n result.push(obj);\n }\n });\n return result;\n}\n\nmodule.exports.filterElementsByType = filterElementsByType;\n\n\nfunction findRootElementsByType(businessObject, referencedType) {\n var root = getRoot(businessObject);\n\n return filterElementsByType(root.rootElements, referencedType);\n}\n\nmodule.exports.findRootElementsByType = findRootElementsByType;\n\n\nfunction removeAllChildren(domElement) {\n while (domElement.firstChild) {\n domElement.removeChild(domElement.firstChild);\n }\n}\n\nmodule.exports.removeAllChildren = removeAllChildren;\n\n\n/**\n * adds an empty option to the list\n */\nfunction addEmptyParameter(list) {\n return list.push({ 'label': '', 'value': '', 'name': '' });\n}\n\nmodule.exports.addEmptyParameter = addEmptyParameter;\n\n\n/**\n * returns a dropdown option label depending on the defined event attributes\n */\nfunction getOptionLabel(obj) {\n var label = obj.name || '';\n\n if (obj.errorCode)\n label += ' (code=' + obj.errorCode + ')';\n if (obj.escalationCode)\n label += ' (code=' + obj.escalationCode + ')';\n\n return label;\n}\n\n/**\n * returns a list with all root elements for the given parameter 'referencedType'\n */\nfunction refreshOptionsModel(businessObject, referencedType) {\n var model = [];\n var referableObjects = findRootElementsByType(businessObject, referencedType);\n forEach(referableObjects, function(obj) {\n model.push({\n label: getOptionLabel(obj),\n value: obj.id,\n name: obj.name\n });\n });\n return model;\n}\n\nmodule.exports.refreshOptionsModel = refreshOptionsModel;\n\n\n/**\n * fills the drop down with options\n */\nfunction updateOptionsDropDown(domSelector, businessObject, referencedType, entryNode) {\n var options = refreshOptionsModel(businessObject, referencedType);\n addEmptyParameter(options);\n var selectBox = domQuery(domSelector, entryNode);\n domClear(selectBox);\n\n forEach(options, function(option) {\n var optionEntry = domify('');\n selectBox.appendChild(optionEntry);\n });\n return options;\n}\n\nmodule.exports.updateOptionsDropDown = updateOptionsDropDown;\n\n\n/**\n * checks whether the id value is valid\n *\n * @param {ModdleElement} bo\n * @param {String} idValue\n * @param {Function} translate\n *\n * @return {String} error message\n */\nfunction isIdValid(bo, idValue, translate) {\n var assigned = bo.$model.ids.assigned(idValue);\n\n var idExists = assigned && assigned !== bo;\n\n if (!idValue || idExists) {\n return translate('Element must have an unique id.');\n }\n\n return validateId(idValue, translate);\n}\n\nmodule.exports.isIdValid = isIdValid;\n\n\nfunction validateId(idValue, translate) {\n\n if (containsSpace(idValue)) {\n return translate('Id must not contain spaces.');\n }\n\n if (!ID_REGEX.test(idValue)) {\n\n if (QNAME_REGEX.test(idValue)) {\n return translate('Id must not contain prefix.');\n }\n\n return translate('Id must be a valid QName.');\n }\n}\n\nmodule.exports.validateId = validateId;\n\n\nfunction containsSpace(value) {\n return SPACE_REGEX.test(value);\n}\n\nmodule.exports.containsSpace = containsSpace;\n\n/**\n * generate a semantic id with given prefix\n */\nfunction nextId(prefix) {\n var ids = new Ids([32,32,1]);\n\n return ids.nextPrefixed(prefix);\n}\n\nmodule.exports.nextId = nextId;\n\n\nfunction triggerClickEvent(element) {\n var evt;\n var eventType = 'click';\n\n if (document.createEvent) {\n try {\n\n // Chrome, Safari, Firefox\n evt = new MouseEvent((eventType), { view: window, bubbles: true, cancelable: true });\n } catch (e) {\n\n // IE 11, PhantomJS (wat!)\n evt = document.createEvent('MouseEvent');\n\n evt.initEvent((eventType), true, true);\n }\n return element.dispatchEvent(evt);\n } else {\n\n // Welcome IE\n evt = document.createEventObject();\n\n return element.fireEvent('on' + eventType, evt);\n }\n}\n\nmodule.exports.triggerClickEvent = triggerClickEvent;\n\n\nfunction escapeHTML(str) {\n str = '' + str;\n\n return str && str.replace(/[&<>\"']/g, function(match) {\n return HTML_ESCAPE_MAP[match];\n });\n}\n\nmodule.exports.escapeHTML = escapeHTML;\n\nfunction createDropdown(dropdown) {\n var menu = dropdown.menu;\n\n var dropdownNode = domify(\n '
' +\n '' +\n '
' +\n '
'\n );\n\n var buttonNode = domQuery('.group__dropdown-button', dropdownNode),\n menuNode = domQuery('.group__dropdown-menu', dropdownNode);\n\n buttonNode.addEventListener('click', function(event) {\n domClasses(dropdownNode).toggle('group__dropdown--open');\n\n createOnGlobalClick(event);\n });\n\n forEach(menu, function(menuItem) {\n var menuItemNode = domify('
' + escapeHTML(menuItem.label) + '
');\n\n menuItemNode.addEventListener('click', function() {\n menuItem.onClick();\n\n domClasses(dropdownNode).remove('group__dropdown--open');\n });\n\n menuNode.appendChild(menuItemNode);\n });\n\n var _onGlobalClick;\n\n function createOnGlobalClick(_event) {\n function onGlobalClick(event) {\n if (event === _event) {\n return;\n }\n\n var target = event.target;\n\n if (menuNode !== target && !menuNode.contains(target)) {\n domClasses(dropdownNode).remove('group__dropdown--open');\n\n document.removeEventListener('click', onGlobalClick);\n }\n }\n\n if (_onGlobalClick) {\n document.removeEventListener('click', _onGlobalClick);\n }\n\n document.addEventListener('click', onGlobalClick);\n\n _onGlobalClick = onGlobalClick;\n }\n\n return dropdownNode;\n}\n\nmodule.exports.createDropdown = createDropdown;","module.exports = {\n __depends__: [\n require('./element-templates'),\n require('diagram-js/lib/i18n/translate').default\n ],\n __init__: [ 'propertiesProvider' ],\n propertiesProvider: [ 'type', require('./HarlequinPropertiesProvider') ]\n};\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\n/**\n * Create an entry to modify the name of an an element.\n *\n * @param {djs.model.Base} element\n * @param {Object} options\n * @param {string} options.id the id of the entry\n * @param {string} options.label the label of the entry\n *\n * @return {Array} return an array containing\n * the entry to modify the name\n */\nmodule.exports = function(element, options, translate) {\n\n options = options || {};\n var id = options.id || 'name',\n label = options.label || translate('Name'),\n modelProperty = options.modelProperty || 'name';\n\n var nameEntry = entryFactory.textBox(translate, {\n id: id,\n label: label,\n modelProperty: modelProperty,\n get: options.get,\n set: options.set\n });\n\n return [ nameEntry ];\n\n};\n","'use strict';\n\nvar isArray = require('min-dash').isArray,\n filter = require('min-dash').filter;\n\nvar semver = require('semver');\n\nvar validateAgainstSchema = require('./services/elementTemplatesValidator').validate,\n getTemplateSchemaVersion = require('./services/elementTemplatesValidator').getSchemaVersion;\n\nvar SUPPORTED_SCHEMA_VERSION = getTemplateSchemaVersion();\n\n\n/**\n * A element template validator.\n */\nfunction Validator() {\n\n this._templatesById = {};\n\n this._validTemplates = [];\n this._errors = [];\n\n /**\n * Adds the templates.\n *\n * @param {Array} templates\n *\n * @return {Validator} self\n */\n this.addAll = function(templates) {\n\n if (!isArray(templates)) {\n this._logError('templates must be []');\n } else {\n templates.forEach(this.add, this);\n }\n\n return this;\n };\n\n /**\n * Add the given element template, if it is valid.\n *\n * @param {TemplateDescriptor} template\n *\n * @return {Validator} self\n */\n this.add = function(template) {\n\n var err = this._validateTemplate(template);\n\n var id, version;\n\n if (!err) {\n id = template.id;\n version = template.version || '_';\n\n if (!this._templatesById[ id ]) {\n this._templatesById[ id ] = {};\n }\n\n this._templatesById[ id ][ version ] = template;\n\n this._validTemplates.push(template);\n }\n\n return this;\n };\n\n /**\n * Validate given template and return error (if any).\n *\n * @param {TemplateDescriptor} template\n *\n * @return {Error} validation error, if any\n */\n this._validateTemplate = function(template) {\n\n var err,\n id = template.id,\n version = template.version || '_',\n schemaVersion = template.$schema && getSchemaVersion(template.$schema),\n self = this;\n\n // (1) Compatibility\n if (schemaVersion &&\n (semver.compare(SUPPORTED_SCHEMA_VERSION, schemaVersion) < 0)) {\n return this._logError('unsupported element template schema version <' + schemaVersion +\n '>. Your installation only supports up to version <' + SUPPORTED_SCHEMA_VERSION +\n '>. Please update your installation', template);\n }\n\n // (2) Versioning\n if (this._templatesById[ id ] && this._templatesById[ id ][ version ]) {\n if (version === '_') {\n return this._logError('template id <' + id + '> already used', template);\n } else {\n return this._logError('template id <' + id + '> and version <' + version + '> already used', template);\n }\n }\n\n // (3) JSON Schema compliant\n var validationResult = validateAgainstSchema(template),\n valid = validationResult.valid,\n errors = validationResult.errors;\n\n if (!valid) {\n err = new Error('invalid template');\n\n filteredSchemaErrors(errors).forEach(function(error) {\n self._logError(error.message, template);\n });\n }\n\n return err;\n };\n\n /**\n * Log an error for the given template\n *\n * @param {(String|Error)} err\n * @param {TemplateDescriptor} template\n *\n * @return {Error} logged validation errors\n */\n this._logError = function(err, template) {\n\n if (typeof err === 'string') {\n\n if (template) {\n err = 'template(id: <' + template.id + '>, name: <' + template.name + '>): ' + err;\n }\n\n err = new Error(err);\n }\n\n this._errors.push(err);\n\n return err;\n };\n\n this.getErrors = function() {\n return this._errors;\n };\n\n this.getValidTemplates = function() {\n return this._validTemplates;\n };\n}\n\nmodule.exports = Validator;\n\n\n// helpers ///////////////////////////////////\n\n/**\n * Extract schema version from schema URI\n *\n * @param {String} schemaUri\n *\n * @return {String} for example '99.99.99'\n */\nfunction getSchemaVersion(schemaUri) {\n var re = /\\d+\\.\\d+\\.\\d+/g;\n\n var match = schemaUri.match(re);\n\n return match === null ? undefined : match[0];\n}\n\n/**\n * Extract only relevant errors of the validation result.\n *\n * The JSON Schema we use under the hood produces more errors than we need for a\n * detected schema violation (for example, unmatched sub-schemas, if-then-rules,\n * `oneOf`-definitions ...).\n *\n * We call these errors \"relevant\" that have a custom error message defined by us OR\n * are basic data type errors.\n *\n * @param {Array} schemaErrors\n *\n * @return {Array}\n */\nfunction filteredSchemaErrors(schemaErrors) {\n return filter(schemaErrors, function(err) {\n\n // (1) regular errors are customized from the schema\n if (err.keyword === 'errorMessage') {\n return true;\n }\n\n // (2) data type errors are relevant, except for\n // (scope) root level data type errors due to basic schema errors\n if (err.keyword === 'type' && err.dataPath && err.dataPath !== '/scopes') {\n return true;\n }\n\n return false;\n });\n}\n","\n\n\n\n\n\n","'use strict';\r\n\r\nvar find = require('lodash/find'),\r\n isUndefined = require('lodash/isUndefined');\r\n\r\nvar isAny = require('../../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\r\n\r\nvar ELEMENT_TEMPLATE_OPTION_EMPTY = 'element-template-option-empty';\r\n\r\nmodule.exports.ELEMENT_TEMPLATE_OPTION_EMPTY = ELEMENT_TEMPLATE_OPTION_EMPTY;\r\n\r\nvar emptyOption = {\r\n name: '',\r\n value: ELEMENT_TEMPLATE_OPTION_EMPTY\r\n};\r\n\r\n/**\r\n * Get options for given element and templates.\r\n *\r\n * @param {dj.model.Base} element\r\n * @param {ElementTemplates} elementTemplates\r\n * @param {Translate} translate\r\n */\r\nfunction getOptions(element, elementTemplates, translate) {\r\n var options = [ emptyOption ];\r\n\r\n var defaultTemplate = elementTemplates.getDefault(element);\r\n\r\n if (defaultTemplate) {\r\n options.push(option('element-template-option-0', defaultTemplate, translate));\r\n\r\n return options;\r\n }\r\n\r\n var index = 0;\r\n\r\n elementTemplates.getAll().forEach(function(template) {\r\n if (!isAny(element, template.appliesTo)) {\r\n return;\r\n }\r\n\r\n options.push(option('element-template-option-' + index, template, translate));\r\n\r\n index++;\r\n });\r\n\r\n return options;\r\n}\r\n\r\nmodule.exports.getOptions = getOptions;\r\n\r\nfunction getOption(optionId, options) {\r\n return find(options, function(option) {\r\n return optionId === option.value;\r\n });\r\n}\r\n\r\nmodule.exports.getOption = getOption;\r\n\r\nfunction option(value, template, translate) {\r\n var name = translate(template.name);\r\n\r\n if (template.version) {\r\n name += ' (v' + template.version + ')';\r\n }\r\n\r\n var option = {\r\n id: template.id,\r\n name: name,\r\n value: value\r\n };\r\n\r\n if (template.version) {\r\n option.version = template.version;\r\n }\r\n\r\n return option;\r\n}\r\n\r\nmodule.exports.getVersionOrDateFromTemplate = function(template) {\r\n var metadata = template.metadata,\r\n version = template.version;\r\n\r\n if (metadata) {\r\n if (!isUndefined(metadata.created)) {\r\n return 'Version ' + toDateString(metadata.created);\r\n } else if (!isUndefined(metadata.updated)) {\r\n return 'Version ' + toDateString(metadata.updated);\r\n }\r\n }\r\n\r\n if (isUndefined(version)) {\r\n return null;\r\n }\r\n\r\n return 'Version ' + version;\r\n};\r\n\r\nfunction toDateString(timestamp) {\r\n var date = new Date(timestamp);\r\n\r\n var year = date.getFullYear();\r\n\r\n var month = leftPad(String(date.getMonth() + 1), 2, '0');\r\n\r\n var day = leftPad(String(date.getDate()), 2, '0');\r\n\r\n return day + '.' + month + '.' + year;\r\n}\r\n\r\nfunction leftPad(string, length, character) {\r\n while (string.length < length) {\r\n string = character + string;\r\n }\r\n\r\n return string;\r\n}","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n getExtensionElements = require('../../../helper/ExtensionElementsHelper').getExtensionElements,\n removeEntry = require('../../../helper/ExtensionElementsHelper').removeEntry,\n extensionElements = require('./implementation/ExtensionElements'),\n properties = require('./implementation/Properties'),\n entryFactory = require('../../../factory/EntryFactory'),\n elementHelper = require('../../../helper/ElementHelper'),\n cmdHelper = require('../../../helper/CmdHelper'),\n formHelper = require('../../../helper/FormHelper'),\n utils = require('../../../Utils'),\n is = require('../../../../../process-builder/lib/base/BaseServices').is,\n find = require('lodash/find'),\n each = require('lodash/forEach');\n\nfunction generateValueId() {\n return utils.nextId('Value_');\n}\n\n/**\n * Generate a form field specific textField using entryFactory.\n *\n * @param {Function} translate\n * @param {string} options.id\n * @param {string} options.label\n * @param {string} options.modelProperty\n * @param {Function} options.validate\n *\n * @return {Object} an entryFactory.textField object\n */\nfunction formFieldTextField(translate, options, getSelectedFormField) {\n\n var id = options.id,\n label = options.label,\n modelProperty = options.modelProperty,\n validate = options.validate;\n\n return entryFactory.textField(translate, {\n id: id,\n label: label,\n modelProperty: modelProperty,\n get: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node) || {},\n values = {};\n\n values[modelProperty] = selectedFormField[modelProperty];\n\n return values;\n },\n\n set: function(element, values, node) {\n var commands = [];\n\n if (typeof options.set === 'function') {\n var cmd = options.set(element, values, node);\n\n if (cmd) {\n commands.push(cmd);\n }\n }\n\n var formField = getSelectedFormField(element, node),\n properties = {};\n\n properties[modelProperty] = values[modelProperty] || undefined;\n\n commands.push(cmdHelper.updateBusinessObject(element, formField, properties));\n\n return commands;\n },\n hidden: function(element, node) {\n return !getSelectedFormField(element, node);\n },\n validate: validate\n });\n}\n\nfunction ensureFormKeyAndDataSupported(element) {\n return (\n is(element, 'bpmn:StartEvent') && !is(element.parent, 'bpmn:SubProcess')\n ) || is(element, 'bpmn:UserTask');\n}\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n if (!ensureFormKeyAndDataSupported(element)) {\n return;\n }\n\n\n /**\n * Return the currently selected form field querying the form field select box\n * from the DOM.\n *\n * @param {djs.model.Base} element\n * @param {DOMElement} node - DOM element of any form field text input\n *\n * @return {ModdleElement} the currently selected form field\n */\n function getSelectedFormField(element, node) {\n var selected = formFieldsEntry.getSelected(element, node.parentNode);\n\n if (selected.idx === -1) {\n return;\n }\n\n return formHelper.getFormField(element, selected.idx);\n }\n\n // [FormKey] form key text input field\n group.entries.push(entryFactory.textField(translate, {\n id : 'form-key',\n label : translate('Form Key'),\n modelProperty: 'formKey',\n get: function(element, node) {\n var bo = getBusinessObject(element);\n\n return {\n formKey: bo.get('harlequin:formKey')\n };\n },\n set: function(element, values, node) {\n var bo = getBusinessObject(element),\n formKey = values.formKey || undefined;\n\n return cmdHelper.updateBusinessObject(element, bo, { 'harlequin:formKey': formKey });\n }\n }));\n\n // [FormData] form field select box\n var formFieldsEntry = extensionElements(element, bpmnFactory, {\n id: 'form-fields',\n label: translate('Form Fields'),\n modelProperty: 'id',\n prefix: 'FormField',\n createExtensionElement: function(element, extensionElements, value) {\n var bo = getBusinessObject(element), commands = [];\n\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateProperties(element, { extensionElements: extensionElements }));\n }\n\n var formData = formHelper.getFormData(element);\n\n if (!formData) {\n formData = elementHelper.createElement('harlequin:FormData', { fields: [] }, extensionElements, bpmnFactory);\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [formData],\n []\n ));\n }\n\n var field = elementHelper.createElement('harlequin:FormField', { id: value }, formData, bpmnFactory);\n if (typeof formData.fields !== 'undefined') {\n commands.push(cmdHelper.addElementsTolist(element, formData, 'fields', [ field ]));\n } else {\n commands.push(cmdHelper.updateBusinessObject(element, formData, {\n fields: [ field ]\n }));\n }\n return commands;\n },\n removeExtensionElement: function(element, extensionElements, value, idx) {\n var formData = getExtensionElements(getBusinessObject(element), 'harlequin:FormData')[0],\n entry = formData.fields[idx],\n commands = [];\n\n if (formData.fields.length < 2) {\n commands.push(removeEntry(getBusinessObject(element), element, formData));\n } else {\n commands.push(cmdHelper.removeElementsFromList(element, formData, 'fields', null, [entry]));\n\n if (entry.id === formData.get('businessKey')) {\n commands.push(cmdHelper.updateBusinessObject(element, formData, { 'businessKey': undefined }));\n }\n }\n\n return commands;\n },\n getExtensionElements: function(element) {\n return formHelper.getFormFields(element);\n },\n hideExtensionElements: function(element, node) {\n return false;\n }\n });\n group.entries.push(formFieldsEntry);\n\n // [FormData] business key form field select box\n var formBusinessKeyFormFieldEntry = entryFactory.selectBox(translate, {\n id: 'form-business-key',\n label: translate('Business Key'),\n modelProperty: 'businessKey',\n selectOptions: function(element, inputNode) {\n var selectOptions = [{ name: '', value: '' }];\n var formFields = formHelper.getFormFields(element);\n each(formFields, function(field) {\n if (field.type !== 'boolean') {\n selectOptions.push({ name: field.id, value: field.id });\n }\n });\n return selectOptions;\n },\n get: function(element, node) {\n var result = { businessKey: '' };\n var bo = getBusinessObject(element);\n var formDataExtension = getExtensionElements(bo, 'harlequin:FormData');\n if (formDataExtension.length) {\n var formData = formDataExtension[0];\n var storedValue = formData.get('businessKey');\n result = { businessKey: storedValue };\n }\n return result;\n },\n set: function(element, values, node) {\n var formData = getExtensionElements(getBusinessObject(element), 'harlequin:FormData')[0];\n return cmdHelper.updateBusinessObject(element, formData, { 'businessKey': values.businessKey || undefined });\n },\n hidden: function(element, node) {\n var isStartEvent = is(element,'bpmn:StartEvent');\n return !(isStartEvent && formHelper.getFormFields(element).length > 0);\n }\n });\n group.entries.push(formBusinessKeyFormFieldEntry);\n\n // [FormData] Form Field label\n group.entries.push(entryFactory.label({\n id: 'form-field-header',\n labelText: translate('Form Field'),\n showLabel: function(element, node) {\n return !!getSelectedFormField(element, node);\n }\n }));\n\n // [FormData] form field id text input field\n group.entries.push(entryFactory.validationAwareTextField(translate, {\n id: 'form-field-id',\n label: translate('ID (process variable name)'),\n modelProperty: 'id',\n\n getProperty: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node) || {};\n\n return selectedFormField.id;\n },\n\n setProperty: function(element, properties, node) {\n var formField = getSelectedFormField(element, node);\n\n return cmdHelper.updateBusinessObject(element, formField, properties);\n },\n\n hidden: function(element, node) {\n return !getSelectedFormField(element, node);\n },\n\n validate: function(element, values, node) {\n\n var formField = getSelectedFormField(element, node);\n\n if (formField) {\n\n var idValue = values.id;\n\n if (!idValue || idValue.trim() === '') {\n return { id: 'Form field id must not be empty' };\n }\n\n var formFields = formHelper.getFormFields(element);\n\n var existingFormField = find(formFields, function(f) {\n return f !== formField && f.id === idValue;\n });\n\n if (existingFormField) {\n return { id: 'Form field id already used in form data.' };\n }\n }\n }\n }));\n\n // [FormData] form field type combo box\n group.entries.push(entryFactory.comboBox(translate, {\n id: 'form-field-type',\n label: translate('Type'),\n selectOptions: [\n { name: 'string', value: 'string' },\n { name: 'long', value: 'long' },\n { name: 'boolean', value: 'boolean' },\n { name: 'date', value: 'date' },\n { name: 'enum', value: 'enum' }\n ],\n modelProperty: 'type',\n emptyParameter: true,\n\n get: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node);\n\n if (selectedFormField) {\n return { type: selectedFormField.type };\n } else {\n return {};\n }\n },\n set: function(element, values, node) {\n var selectedFormField = getSelectedFormField(element, node),\n formData = getExtensionElements(getBusinessObject(element), 'harlequin:FormData')[0],\n commands = [];\n\n if (selectedFormField.type === 'enum' && values.type !== 'enum') {\n\n // delete harlequin:value objects from formField.values when switching from type enum\n commands.push(cmdHelper.updateBusinessObject(element, selectedFormField, { values: undefined }));\n }\n if (values.type === 'boolean' && selectedFormField.get('id') === formData.get('businessKey')) {\n commands.push(cmdHelper.updateBusinessObject(element, formData, { 'businessKey': undefined }));\n }\n commands.push(cmdHelper.updateBusinessObject(element, selectedFormField, values));\n\n return commands;\n },\n hidden: function(element, node) {\n return !getSelectedFormField(element, node);\n }\n }));\n\n // [FormData] form field label text input field\n group.entries.push(formFieldTextField(translate, {\n id: 'form-field-label',\n label: translate('Label'),\n modelProperty: 'label'\n }, getSelectedFormField));\n\n // [FormData] form field defaultValue text input field\n group.entries.push(formFieldTextField(translate, {\n id: 'form-field-defaultValue',\n label: translate('Default Value'),\n modelProperty: 'defaultValue'\n }, getSelectedFormField));\n\n\n // [FormData] form field enum values label\n group.entries.push(entryFactory.label({\n id: 'form-field-enum-values-header',\n labelText: translate('Values'),\n divider: true,\n showLabel: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node);\n\n return selectedFormField && selectedFormField.type === 'enum';\n }\n }));\n\n // [FormData] form field enum values table\n group.entries.push(entryFactory.table(translate, {\n id: 'form-field-enum-values',\n labels: [ translate('Id'), translate('Name') ],\n modelProperties: [ 'id', 'name' ],\n show: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node);\n\n return selectedFormField && selectedFormField.type === 'enum';\n },\n getElements: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node);\n\n return formHelper.getEnumValues(selectedFormField);\n },\n addElement: function(element, node) {\n var selectedFormField = getSelectedFormField(element, node),\n id = generateValueId();\n\n var enumValue = elementHelper.createElement(\n 'harlequin:Value',\n { id: id, name: undefined },\n getBusinessObject(element),\n bpmnFactory\n );\n\n return cmdHelper.addElementsTolist(element, selectedFormField, 'values', [enumValue]);\n },\n removeElement: function(element, node, idx) {\n var selectedFormField = getSelectedFormField(element, node),\n enumValue = selectedFormField.values[idx];\n\n return cmdHelper.removeElementsFromList(element, selectedFormField, 'values', null, [enumValue]);\n },\n updateElement: function(element, value, node, idx) {\n var selectedFormField = getSelectedFormField(element, node),\n enumValue = selectedFormField.values[idx];\n\n value.name = value.name || undefined;\n return cmdHelper.updateBusinessObject(element, enumValue, value);\n },\n validate: function(element, value, node, idx) {\n\n var selectedFormField = getSelectedFormField(element, node),\n enumValue = selectedFormField.values[idx];\n\n if (enumValue) {\n\n // check if id is valid\n var validationError = utils.isIdValid(enumValue, value.id, translate);\n\n if (validationError) {\n return { id: validationError };\n }\n }\n }\n }));\n\n // [FormData] Validation label\n group.entries.push(entryFactory.label({\n id: 'form-field-validation-header',\n labelText: translate('Validation'),\n divider: true,\n showLabel: function(element, node) {\n return !!getSelectedFormField(element, node);\n }\n }));\n\n // [FormData] form field constraints table\n group.entries.push(entryFactory.table(translate, {\n id: 'constraints-list',\n modelProperties: [ 'name', 'config' ],\n labels: [ translate('Name'), translate('Config') ],\n addLabel: translate('Add Constraint'),\n getElements: function(element, node) {\n var formField = getSelectedFormField(element, node);\n\n return formHelper.getConstraints(formField);\n },\n addElement: function(element, node) {\n\n var commands = [],\n formField = getSelectedFormField(element, node),\n validation = formField.validation;\n\n if (!validation) {\n\n // create validation business object and add it to form data, if it doesn't exist\n validation = elementHelper.createElement('harlequin:Validation', {}, getBusinessObject(element), bpmnFactory);\n\n commands.push(cmdHelper.updateBusinessObject(element, formField, { 'validation': validation }));\n }\n\n var newConstraint = elementHelper.createElement(\n 'harlequin:Constraint',\n { name: undefined, config: undefined },\n validation,\n bpmnFactory\n );\n\n commands.push(cmdHelper.addElementsTolist(element, validation, 'constraints', [ newConstraint ]));\n\n return commands;\n },\n updateElement: function(element, value, node, idx) {\n var formField = getSelectedFormField(element, node),\n constraint = formHelper.getConstraints(formField)[idx];\n\n value.name = value.name || undefined;\n value.config = value.config || undefined;\n\n return cmdHelper.updateBusinessObject(element, constraint, value);\n },\n removeElement: function(element, node, idx) {\n var commands = [],\n formField = getSelectedFormField(element, node),\n constraints = formHelper.getConstraints(formField),\n currentConstraint = constraints[idx];\n\n commands.push(cmdHelper.removeElementsFromList(\n element,\n formField.validation,\n 'constraints',\n null,\n [ currentConstraint ]\n ));\n\n if (constraints.length === 1) {\n\n // remove harlequin:validation if the last existing constraint has been removed\n commands.push(cmdHelper.updateBusinessObject(element, formField, { validation: undefined }));\n }\n\n return commands;\n },\n show: function(element, node) {\n return !!getSelectedFormField(element, node);\n }\n }));\n\n // [FormData] Properties label\n group.entries.push(entryFactory.label({\n id: 'form-field-properties-header',\n labelText: translate('Properties'),\n divider: true,\n showLabel: function(element, node) {\n return !!getSelectedFormField(element, node);\n }\n }));\n\n // [FormData] harlequin:properties table\n group.entries.push(properties(element, bpmnFactory, {\n id: 'form-field-properties',\n modelProperties: [ 'id', 'value' ],\n labels: [ translate('Id'), translate('Value') ],\n getParent: function(element, node) {\n return getSelectedFormField(element, node);\n },\n show: function(element, node) {\n return !!getSelectedFormField(element, node);\n }\n }, translate));\n};\n","import Vue from 'vue';\nimport axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n availableProcesses: [],\n allProcesses: [],\n runningProcesses: [],\n runningProcessesCount: null,\n instanceId: '',\n origInstanceId: '',\n definitionId: '',\n deletedInstanceId: '',\n completedInstances: [],\n deployedProcess: [],\n processAction: '',\n processId: '',\n deploymentName: '',\n processXml: '',\n deletedDeploymentId: '',\n savedProcess: [],\n savedExternalProcess: [],\n allProcessXml: [],\n allExternalProcessXml: [],\n savedProcessXml: '',\n deploymentSuccess: false,\n deletedXmlId: '',\n latestVersions: [],\n updatedXmlVersion: false,\n setCaseId: null,\n setCaseLabel: null,\n getCaseId: null,\n getCaseLabel: null,\n allCaseLabels: null,\n newCaseId: null,\n processCount: null,\n historicVariables: [],\n historicCaseId: '',\n deletedVariable: '',\n bulkDeletion: '',\n processSelections: {},\n importXml: null,\n caseStatus: null,\n statusGet: '',\n statusUpdate: '',\n caseDataDeleted: '',\n editingProcess: false,\n processLocked: false,\n processLockedUser: '',\n processMap: null,\n activityInstance: null,\n savedStartedBefore: '',\n savedStartedAfter: '',\n savedFinishedBefore: '',\n savedFinishedAfter: '',\n histDatesCleared: false,\n migrationSuccess: false,\n setVarSuccess: false\n};\n\nconst getters = {\n availableProcesses: (state) => state.availableProcesses,\n allProcesses: (state) => state.allProcesses,\n runningProcesses: (state) => state.runningProcesses,\n runningProcessesCount: (state) => state.runningProcessesCount,\n instanceId: (state) => state.instanceId,\n origInstanceId: (state) => state.origInstanceId,\n definitionId: (state) => state.definitionId,\n completedInstances: (state) => state.completedInstances,\n processAction: (state) => state.processAction,\n processId: (state) => state.processId,\n deploymentName: (state) => state.deploymentName,\n processXml: (state) => state.processXml,\n allProcessXml: (state) => state.allProcessXml,\n allExternalProcessXml: (state) => state.allExternalProcessXml,\n savedProcessXml: (state) => state.savedProcessXml,\n deploymentSuccess: (state) => state.deploymentSuccess,\n latestVersions: (state) => state.latestVersions,\n getCaseId: (state) => state.getCaseId,\n getCaseLabel: (state) => state.getCaseLabel,\n allCaseLabels: (state) => state.allCaseLabels,\n setCaseLabel: (state) => state.setCaseLabel,\n processCount: (state) => state.processCount,\n historicVariables: (state) => state.historicVariables,\n historicCaseId: (state) => state.historicCaseId,\n newCaseId: (state) => state.newCaseId,\n processSelections: (state) => state.processSelections,\n importXml: (state) => state.importXml,\n processLocked: (state) => state.processLocked,\n processLockedUser: (state) => state.processLockedUser,\n processMap: (state) => state.processMap,\n activityInstance: (state) => state.activityInstance,\n savedStartedBefore: (state) => state.savedStartedBefore,\n savedStartedAfter: (state) => state.savedStartedAfter,\n savedFinishedBefore: (state) => state.savedFinishedBefore,\n savedFinishedAfter: (state) => state.savedFinishedAfter,\n histDatesCleared: (state) => state.histDatesCleared,\n migrationSuccess: (state) => state.migrationSuccess,\n setVarSuccess: (state) => state.setVarSuccess\n};\n\nconst actions = {\n // Get all startable processes\n getProcesses({commit}) {\n\n return axios.get(baseURL + '/process-definition?startableInTasklist=true&startablePermissionCheck=true&latestVersion=true&startableBy=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('PROCESSES', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllProcesses({commit}) {\n\n return axios.get(baseURL + '/process-definition', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n \n let processes = [];\n for(let i = 0; i < result.data.length; i++) {\n if(!result.data[i].key.includes('Controller')) {\n processes.push(result.data[i]);\n }\n }\n\n let latestVersions = [];\n for(let j = 0; j < processes.length; j++) {\n if(latestVersions.length === 0) {\n latestVersions[processes[j].key] = processes[j].version;\n }else {\n if(latestVersions[processes[j].key]) {\n if(processes[j].version > latestVersions[processes[j].key]) {\n latestVersions[processes[j].key] = processes[j].version;\n }\n }else {\n latestVersions[processes[j].key] = processes[j].version;\n }\n }\n }\n \n commit('LATEST_VERSIONS', latestVersions);\n commit('PROCESS_COUNT', processes.length);\n commit('ALL_PROCESSES', processes);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getProcessXml({commit}, processId) {\n\n return axios.get(baseURL + '/process-definition/' + processId + '/xml', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('PROCESS_XML', result.data.bpmn20Xml);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getProcessInstances({rootState, commit}) {\n let ref = this;\n\n return axios.get(baseURL + '/process-instance', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n const PromiseArr = [];\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n PromiseArr.push(\n axios.get(baseURL + '/process-definition?processDefinitionId=' + result.data[i].definitionId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.data[0].name)))\n );\n }\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n // Check for a case ID, if null get one\n if(result.data[index].businessKey == null) {\n let payload = {\n 'instanceId': result.data[index].id,\n 'processId': result.data[index].definitionId\n };\n ref.dispatch('setCaseId', payload).then( () => {\n ref.dispatch('getCaseId', result.data[index].id).then( () => {\n Vue.set(result.data[index], 'caseId', rootState.process.getCaseId);\n });\n });\n }else {\n Vue.set(result.data[index], 'caseId', result.data[index].businessKey);\n }\n Vue.set(result.data[index], 'processName', item);\n });\n \n commit('RUNNING_PROCESSES_COUNT', result.data.length);\n commit('RUNNING_PROCESSES', result.data);\n });\n \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async startProcess({rootState, state, commit}, payload) {\n let caseLabel = payload.caseLabel;\n let startVars = {\n 'variables': {\n 'currentUser': { 'value': payload.currentUser, 'type': 'String' },\n 'currentUserFullname': { 'value': payload.currentUserFullname, 'type': 'String' },\n 'currentUserEmail': { 'value': payload.currentUserEmail, 'type': 'String' },\n 'users': { 'value': payload.users, 'type': 'Json' },\n 'groups': { 'value': payload.groups, 'type': 'Json' }\n },\n 'withVariablesInReturn': true,\n 'businessKey': state.newCaseId\n }\n\n // Get any additional starter variables\n await this.dispatch('getStarterVars', payload.key).then( () => {\n if(rootState.tables.starterVars.value) {\n let starterVars = JSON.parse(rootState.tables.starterVars.value);\n\n for(let i = 0; i < starterVars.length; i++) {\n let varName = starterVars[i].varName;\n let varValue = starterVars[i].varValue;\n let varType = starterVars[i].varType;\n\n if(varType == 'Integer') {\n varValue = parseInt(varValue);\n }\n\n if(varType == 'Boolean') {\n if(varValue == 'true') {\n varValue = true;\n }else {\n varValue = false;\n }\n }\n\n if(varType == 'Json') {\n varValue = JSON.stringify(varValue);\n }\n\n startVars.variables[varName] = { 'value': varValue, 'type': varType };\n }\n }\n \n return axios.post(baseURL + '/process-definition/key/' + payload.key + '/tenant-id/harlequin/start', startVars, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let payload = {\n 'instanceId': result.data.id,\n 'processId': result.data.definitionId,\n 'caseLabel': caseLabel\n };\n this.dispatch('setCaseId', payload);\n commit('PROCESS_DATA', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n });\n },\n startExternalProcess({state, commit}, payload) {\n let caseLabel = payload.caseLabel;\n return axios.post(baseURL + '/process-definition/key/' + payload.key + '/tenant-id/harlequin/start', { businessKey: state.newCaseId }, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n let payload = {\n 'instanceId': result.data.id,\n 'processId': result.data.definitionId,\n 'caseLabel': caseLabel\n };\n this.dispatch('setExternalCaseId', payload);\n commit('PROCESS_DATA', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteProcessInstance({commit}, payload) {\n return axios.delete(baseURL + '/process-instance/' + payload.id + '?skipCustomListeners=true&skipIoMappings=true', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n this.dispatch('deleteCaseData', payload.id);\n commit('DELETED_INSTANCE_ID', payload.id);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteHistoricProcessInstance({commit}, payload) {\n return axios.delete(baseURL + '/history/process-instance/' + payload.id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n commit('DELETED_INSTANCE_ID', payload.id);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n bulkDeleteHistoricProcessInstance({commit}, payload) {\n const PromiseArr = [];\n const items = payload.items;\n for(let i = 0; i < items.length; i++) {\n PromiseArr.push(\n axios.delete(baseURL + '/history/process-instance/' + items[i].id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.status)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n let success = true;\n res.forEach(function(item) {\n if(item != 204) {\n success = false;\n }\n });\n \n commit('BULK_DELETION', success);\n });\n },\n getCompletedInstances({rootState, commit}, payload) {\n let endpoint = '/history/process-instance?processDefinitionKeyNotIn=formController,fileController,emailController,templateController,processController,databaseController,documentController,sqlController,apiController,userController,supportController,ssoController,ldapController';\n if(payload.startedBefore) {\n endpoint += '&startedBefore=' + encodeURIComponent(payload.startedBefore);\n }\n if(payload.startedAfter) {\n endpoint += '&startedAfter=' + encodeURIComponent(payload.startedAfter);\n }\n if(payload.finishedBefore) {\n endpoint += '&finishedBefore=' + encodeURIComponent(payload.finishedBefore);\n }\n if(payload.finishedAfter) {\n endpoint += '&finishedAfter=' + encodeURIComponent(payload.finishedAfter);\n }\n \n return axios.get(baseURL + endpoint, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let instances = [];\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n if(!result.data[i].processDefinitionKey.includes('Controller')) {\n if(result.data[i].businessKey == null) {\n this.dispatch('getCaseId', result.data[i].rootProcessInstanceId).then( () => {\n Vue.set(result.data[i], 'caseId', rootState.process.getCaseId);\n });\n }else {\n Vue.set(result.data[i], 'caseId', result.data[i].businessKey);\n }\n // Format date\n let sdate = new Date(result.data[i].startTime);\n Vue.set(result.data[i], 'startTime', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(sdate));\n let edate = new Date(result.data[i].endTime);\n if(edate.toString().includes('1970')) {\n Vue.set(result.data[i], 'endTime', '')\n }else {\n Vue.set(result.data[i], 'endTime', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(edate));\n }\n \n instances.push(result.data[i]);\n }\n }\n commit('COMPLETED_INSTANCES', instances);\n }else {\n commit('COMPLETED_INSTANCES', []);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getHistoricVariables({commit}, payload) {\n return axios.get(baseURL + '/history/variable-instance?processInstanceId=' + payload.processInstanceId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 200) {\n commit('HISTORIC_VARIABLES', result.data);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteHistoricVariable({commit}, id) {\n return axios.delete(baseURL + '/history/variable-instance/' + id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 204) {\n commit('DELETED_VARIABLE', id);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deployProcess({commit}, form) {\n return axios.post(baseURL + '/deployment/create', form, {headers: {'Content-Type': 'multipart/form-data', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 200) {\n commit('DEPLOYED_PROCESS', result.data);\n commit('DEPLOYMENT_SUCCESS', true);\n }else {\n commit('DEPLOYMENT_SUCCESS', false);\n }\n }).catch(error => {\n commit('DEPLOYMENT_SUCCESS', false);\n throw new Error(`API ${error}`);\n });\n },\n deleteDeployment({commit}, payload) {\n return axios.delete(baseURL + '/deployment/' + payload.id + '?cascade=true&skipCustomListeners=true&skipIoMappings=true', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 204) {\n this.dispatch('deleteProcessData', payload.processId);\n commit('DELETED_DEPLOYMENT_ID', payload.id);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveProcessXml({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'save', 'type': 'String' },\n 'name': { 'value': payload.name, 'type': 'String' },\n 'processName': { 'value': payload.processName, 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'xml': { 'value': payload.xml, 'type': 'Xml' },\n 'version': { 'value': payload.version, 'type': 'Integer' },\n 'selections': { 'value': payload.selections, 'type': 'Json' },\n 'isLocked': { 'value': payload.isLocked, 'type': 'Integer' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('SAVED_PROCESS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveExternalProcessXml({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'save', 'type': 'String' },\n 'name': { 'value': payload.name, 'type': 'String' },\n 'processName': { 'value': payload.processName, 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'xml': { 'value': payload.xml, 'type': 'Xml' },\n 'version': { 'value': payload.version, 'type': 'Integer' },\n 'selections': { 'value': payload.selections, 'type': 'Json' },\n 'isLocked': { 'value': payload.isLocked, 'type': 'Integer' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(payload.engine + '/engine-rest/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('SAVED_EXTERNAL_PROCESS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllProcessXml({commit}) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' },\n 'version': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let allXml = JSON.parse(result.data.variables.allXml.value);\n commit('ALL_PROCESS_XML', allXml);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async getAllExternalProcessXml({commit, rootState}) {\n await this.dispatch('getAllHqConnections').then( () => {\n const PromiseArr = [];\n let conns = rootState.admin.allHqConns;\n let extXmls = [];\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'getAll', 'type': 'String' },\n 'version': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n for(let i = 0; i < conns.length; i++) {\n PromiseArr.push(\n axios.post(conns[i].URL + '/engine-rest/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => new Promise(resolve => \n resolve(JSON.parse(result.data.variables.allXml.value))))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n res.forEach(function(item, index) {\n item['ENGINE'] = conns[index].ENGINE_NAME;\n extXmls.push(item);\n });\n \n commit('ALL_EXTERNAL_PROCESS_XML', extXmls);\n });\n });\n },\n getSavedProcessXml({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'get', 'type': 'String' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'version': { 'value': payload.version, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let xml = JSON.parse(result.data.variables.xml.value);\n let selections = JSON.parse(JSON.parse(result.data.variables.selections.value));\n commit('SAVED_PROCESS_XML', xml);\n commit('PROCESS_SELECTIONS', selections);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteProcessXml({commit}, xmlId) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'delete', 'type': 'String' },\n 'xmlId': { 'value': xmlId, 'type': 'Integer' },\n 'version': { 'value': 0, 'type': 'Integer' }\n }\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('DELETED_PROCESS_XML', xmlId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateXmlVersion({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'xml', 'type': 'String' },\n 'action': { 'value': 'updateVersion', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'version': { 'value': payload.version, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('UPDATED_XML_VERSION', true);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getProcessMap({commit}, id) {\n return axios.get(baseURL + '/process-definition/' + id + '/xml', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 200) {\n commit('PROCESS_MAP', result.data.bpmn20Xml);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getInstanceActivity({commit}, id) {\n return axios.get(baseURL + '/history/activity-instance?sortBy=startTime&sortOrder=asc&processInstanceId=' + id, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 200) {\n commit('ACTIVITY_INSTANCE', result.data);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n setCaseId({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'save', 'type': 'String' },\n 'instanceId': { 'value': payload.instanceId, 'type': 'String' },\n 'processId': { 'value': payload.processId, 'type': 'String' },\n 'caseLabel': { 'value': payload.caseLabel, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('SET_CASE_ID', payload.instanceId);\n commit('SET_CASE_LABEL', payload.caseLabel);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n setExternalCaseId({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'save', 'type': 'String' },\n 'instanceId': { 'value': payload.instanceId, 'type': 'String' },\n 'processId': { 'value': payload.processId, 'type': 'String' },\n 'caseLabel': { 'value': payload.caseLabel, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( () => {\n commit('SET_CASE_ID', payload.instanceId);\n commit('SET_CASE_LABEL', payload.caseLabel);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getCaseLabelById({commit}, caseId) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'getLabel', 'type': 'String' },\n 'caseId': { 'value': caseId, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n commit('GET_CASE_LABEL', result.data.variables.caseLabel.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllCaseLabels({commit}, instIds) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'getLabels', 'type': 'String' },\n 'instIds': { 'value': instIds, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n commit('ALL_CASE_LABEL', result.data.variables.caseLabels.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getCaseId({commit}, instanceId) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'get', 'type': 'String' },\n 'instanceId': { 'value': instanceId, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n commit('GET_CASE_ID', result.data.variables.caseId.value);\n commit('GET_CASE_LABEL', result.data.variables.caseLabel.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getNewCaseId({commit}) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'getNew', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('NEW_CASE_ID', result.data.variables.newCaseId.value);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n setCaseStatus({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'setStatus', 'type': 'String' },\n 'instanceId': { 'value': payload.instanceId, 'type': 'String' },\n 'opened': { 'value': payload.opened, 'type': 'Boolean' },\n 'caseId': { 'value': payload.caseId, 'type': 'String' },\n 'taskId': { 'value': payload.taskId, 'type': 'String' },\n 'assignee': { 'value': payload.assignee, 'type': 'String' }\n }\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('STATUS_SET', payload.opened);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getCaseStatus({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'getStatus', 'type': 'String' },\n 'instanceId': { 'value': payload.instanceId, 'type': 'String' },\n 'processId': { 'value': payload.processId, 'type': 'String' },\n 'caseId': { 'value': payload.caseId, 'type': 'String' },\n 'taskId': { 'value': payload.taskId, 'type': 'String' },\n 'assignee': { 'value': payload.assignee, 'type': 'String' }\n }\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('STATUS_GET', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateCaseLabel({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'updateLabel', 'type': 'String' },\n 'caseId': { 'value': payload.caseId, 'type': 'Integer' },\n 'caseLabel': { 'value': payload.caseLabel, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('SET_CASE_LABEL', payload.caseLabel);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n updateAssignee({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'updateAssignee', 'type': 'String' },\n 'instanceId': { 'value': payload.instanceId, 'type': 'String' },\n 'opened': { 'value': payload.opened, 'type': 'Boolean' },\n 'caseId': { 'value': payload.caseId, 'type': 'String' },\n 'taskId': { 'value': payload.taskId, 'type': 'String' },\n 'assignee': { 'value': payload.assignee, 'type': 'String' }\n }\n }\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('STATUS_UPDATE', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteCaseData({commit}, instanceId) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'deleteData', 'type': 'String' },\n 'instanceId': { 'value': instanceId, 'type': 'String' }\n }\n };\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('CASE_DATA_DELETED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteProcessData({commit}, processId) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'deleteProcessData', 'type': 'String' },\n 'processId': { 'value': processId, 'type': 'String' }\n }\n };\n\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('CASE_DATA_DELETED', 'success');\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n processLockCheck({commit}, payload) {\n let data = {\n 'variables': {\n 'pType': { 'value': 'lockCheck', 'type': 'String' },\n 'processId': { 'value': payload.processId, 'type': 'Integer' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let retData = {\n 'processLocked': result.data.variables.processLocked.value,\n 'processLockedUser': result.data.variables.processLockedUser.value\n };\n commit('PROCESS_LOCK_CHECK', retData);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n unlockAll() {\n let data = {\n 'variables': {\n 'pType': { 'value': 'lockCheck', 'type': 'String' },\n 'processId': { 'value': 0, 'type': 'Integer' },\n 'lockedByUser': { 'value': store.state.currentUser, 'type': 'String' },\n 'checkType': { 'value': 'unlockAll', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n // Do nothing\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n migrateCases({commit}, payload) {\n // Generate migration plan\n let data = {\n 'sourceProcessDefinitionId': payload.sourceProcessDefId,\n 'targetProcessDefinitionId': payload.targetProcessDefId,\n 'updateEventTriggers': true\n }\n return axios.post(baseURL + '/migration/generate', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( plan => {\n // Execute migration plan\n let migrationData = {\n 'migrationPlan': plan.data,\n 'processInstanceIds': payload.targetInstances\n }\n // let migrationData = {\n // 'migrationPlan': plan.data,\n // 'processInstanceQuery': {\n // 'processDefinitionId': payload.sourceProcessDefId\n // }\n // }\n return axios.post(baseURL + '/migration/execute', migrationData, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => {\n commit('MIGRATION_SUCCESS', true);\n\n // Update process IDs in RSL_CASES\n let instanceIds = JSON.stringify(payload.targetInstances);\n instanceIds = instanceIds.replace(/\\[/g, '(');\n instanceIds = instanceIds.replace(/\\]/g, ')');\n let theSql = 'UPDATE RSL_CASES SET PROCESS_ID = \"' + payload.targetProcessDefId + '\" WHERE INSTANCE_ID IN ' + instanceIds;\n let tableData = {\n 'connId': 0,\n 'theSql': theSql\n }\n this.dispatch('executeSqlOther', tableData);\n }).catch(error => {\n commit('MIGRATION_SUCCESS', false);\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n commit('MIGRATION_SUCCESS', false);\n throw new Error(`API ${error}`);\n });\n },\n setVariables({commit}, payload) {\n let varName = payload.varName;\n let varValue = payload.varValue;\n\n if(payload.varType == 'Boolean') {\n if(varValue == 'true') {\n varValue = true;\n }else {\n varValue = false;\n }\n }\n\n if(payload.varType == 'Json') {\n varValue = JSON.stringify(varValue);\n }\n\n for(let i = 0; i < payload.targetInstances.length; i++) {\n let data = {\n \"modifications\": {\n }\n }\n data.modifications[varName] = { \"value\": varValue, \"type\": payload.varType }\n\n axios.post(baseURL + '/process-instance/' + payload.targetInstances[i] + '/variables', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.status == 204) {\n commit('SET_VAR_SUCCESS', true);\n }\n }).catch(error => {\n commit('SET_VAR_SUCCESS', false);\n throw new Error(`API ${error}`);\n });\n }\n }\n};\n\nconst mutations = {\n PROCESSES(state, payload) {\n state.availableProcesses = payload;\n },\n ALL_PROCESSES(state, payload) {\n state.allProcesses = payload;\n },\n PROCESS_COUNT(state, payload) {\n state.processCount = payload;\n },\n RUNNING_PROCESSES(state, payload) {\n state.runningProcesses = payload;\n },\n RUNNING_PROCESSES_COUNT(state, payload) {\n state.runningProcessesCount = payload;\n },\n PROCESS_DATA(state, payload) {\n state.instanceId = payload.id;\n state.definitionId = payload.definitionId;\n },\n UPDATE_DEFINITION_ID(state, payload) {\n state.definitionId = payload;\n },\n UPDATE_INSTANCE_ID(state, payload) {\n state.instanceId = payload;\n },\n UPDATE_ORIG_INSTANCE_ID(state, payload) {\n state.origInstanceId = payload;\n },\n DELETED_INSTANCE_ID(state, payload) {\n state.deletedInstanceId = payload;\n },\n COMPLETED_INSTANCES(state, payload) {\n state.completedInstances = payload;\n },\n DEPLOYED_PROCESS(state, payload) {\n state.deployedProcess = payload;\n },\n UPDATE_PROCESS_ACTION(state, payload) {\n state.processAction = payload;\n },\n UPDATE_PROCESS_ID(state, payload) {\n state.processId = payload;\n },\n UPDATE_DEPLOYMENT_NAME(state, payload) {\n state.deploymentName = payload;\n },\n PROCESS_XML(state, payload) {\n state.processXml = payload;\n },\n ALL_PROCESS_XML(state, payload) {\n state.allProcessXml = payload;\n },\n ALL_EXTERNAL_PROCESS_XML(state, payload) {\n state.allExternalProcessXml = payload;\n },\n DELETED_DEPLOYMENT_ID(state, payload) {\n state.deletedDeploymentId = payload;\n },\n SAVED_PROCESS(state, payload) {\n state.savedProcess = payload;\n },\n SAVED_EXTERNAL_PROCESS(state, payload) {\n state.savedExternalProcess = payload;\n },\n SAVED_PROCESS_XML(state, payload) {\n state.savedProcessXml = payload;\n },\n DEPLOYMENT_SUCCESS(state, payload) {\n state.deploymentSuccess = payload;\n },\n DELETED_PROCESS_XML(state, payload) {\n state.deletedXmlId = payload;\n },\n LATEST_VERSIONS(state, payload) {\n state.latestVersions = payload;\n },\n UPDATED_XML_VERSION(state, payload) {\n state.updatedXmlVersion = payload;\n },\n SET_CASE_ID(state, payload) {\n state.setCaseId = payload;\n },\n SET_CASE_LABEL(state, payload) {\n state.setCaseLabel = payload;\n },\n GET_CASE_ID(state, payload) {\n state.getCaseId = payload;\n },\n GET_CASE_LABEL(state, payload) {\n state.getCaseLabel = payload;\n },\n ALL_CASE_LABEL(state, payload) {\n state.allCaseLabels = payload;\n },\n NEW_CASE_ID(state, payload) {\n state.newCaseId = payload;\n },\n STATUS_SET(state, payload) {\n state.caseStatus = payload;\n },\n STATUS_GET(state, payload) {\n state.statusGet = payload;\n },\n STATUS_UPDATE(state, payload) {\n state.statusUpdate = payload;\n },\n HISTORIC_VARIABLES(state, payload) {\n state.historicVariables = payload;\n },\n UPDATE_HISTORIC_CASE_ID(state, payload) {\n state.historicCaseId = payload;\n },\n DELETED_VARIABLE(state, payload) {\n state.deletedVariable = payload;\n },\n BULK_DELETION(state, payload) {\n state.bulkDeletion = payload;\n },\n PROCESS_SELECTIONS(state, payload) {\n state.processSelections = payload;\n },\n UPDATE_IMPORT_XML(state, payload) {\n state.importXml = payload;\n },\n CASE_DATA_DELETED(state, payload) {\n state.caseDataDeleted = payload;\n },\n EDITING_PROCESS(state, payload) {\n state.editingProcess = payload;\n },\n PROCESS_LOCK_CHECK(state, payload) {\n state.processLocked = payload.processLocked;\n state.processLockedUser = payload.processLockedUser;\n },\n PROCESS_MAP(state, payload) {\n state.processMap = payload;\n },\n ACTIVITY_INSTANCE(state, payload) {\n state.activityInstance = payload;\n },\n SAVED_STARTED_BEFORE(state, payload) {\n state.savedStartedBefore = payload;\n },\n SAVED_STARTED_AFTER(state, payload) {\n state.savedStartedAfter = payload;\n },\n SAVED_FINISHED_BEFORE(state, payload) {\n state.savedFinishedBefore = payload;\n },\n SAVED_FINISHED_AFTER(state, payload) {\n state.savedFinishedAfter = payload;\n },\n HIST_DATES_CLEARED(state, payload) {\n state.histDatesCleared = payload;\n },\n MIGRATION_SUCCESS(state, payload) {\n state.migrationSuccess = payload;\n },\n SET_VAR_SUCCESS(state, payload) {\n state.setVarSuccess = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar inherits = require('inherits');\n\nvar PropertiesActivator = require('../../PropertiesActivator');\n\nvar asyncCapableHelper = require('../../helper/AsyncCapableHelper'),\n ImplementationTypeHelper = require('../../helper/ImplementationTypeHelper');\n\nvar is = require('../../../../process-builder/lib/base/BaseServices').is;\n\n// bpmn properties\nvar processProps = require('../bpmn/parts/ProcessProps'),\n eventProps = require('../bpmn/parts/EventProps'),\n linkProps = require('../bpmn/parts/LinkProps'),\n documentationProps = require('../bpmn/parts/DocumentationProps'),\n idProps = require('../bpmn/parts/IdProps'),\n nameProps = require('../bpmn/parts/NameProps'),\n executableProps = require('../bpmn/parts/ExecutableProps');\n\n// Harlequin properties\nvar serviceTaskDelegateProps = require('./parts/ServiceTaskDelegateProps'),\n userTaskProps = require('./parts/UserTaskProps'),\n asynchronousContinuationProps = require('./parts/AsynchronousContinuationProps'),\n callActivityProps = require('./parts/CallActivityProps'),\n multiInstanceProps = require('./parts/MultiInstanceLoopProps'),\n conditionalProps = require('./parts/ConditionalProps'),\n scriptProps = require('./parts/ScriptTaskProps'),\n errorProps = require('./parts/ErrorEventProps'),\n formProps = require('./parts/FormProps'),\n startEventInitiator = require('./parts/StartEventInitiator'),\n variableMapping = require('./parts/VariableMappingProps'),\n versionTag = require('./parts/VersionTagProps'),\n processVariablesProps = require('./parts/ProcessVariablesProps');\n\nvar listenerProps = require('./parts/ListenerProps'),\n listenerDetails = require('./parts/ListenerDetailProps'),\n listenerFields = require('./parts/ListenerFieldInjectionProps');\n\n// element template properties\nvar elementTemplateDescriptionProps = require('./element-templates/parts/DescriptionProps'),\n elementTemplateChooserProps = require('./element-templates/parts/ChooserProps'),\n elementTemplateCustomProps = require('./element-templates/parts/CustomProps'),\n elementTemplateInputParametersProps = require('./element-templates/parts/InputParametersProps'),\n elementTemplateOutputParametersProps = require('./element-templates/parts/OutputParametersProps'),\n elementTemplateErrorsProps = require('./element-templates/parts/ErrorsProps'),\n getTemplateId = require('./element-templates/Helper').getTemplateId;\n\n// Input/Output\nvar inputParameters = require('./parts/InputParametersProps'),\n outputParameters = require('./parts/OutputParametersProps'),\n errorsProps = require('./parts/ErrorsProps');\n\n// Connector\nvar connectorDetails = require('./parts/ConnectorDetailProps'),\n connectorInputParameters = require('./parts/ConnectorInputParametersProps'),\n connectorOutputParameters = require('./parts/ConnectorOutputParametersProps');\n\n// properties\nvar properties = require('./parts/PropertiesProps');\n\n// job configuration\nvar jobConfiguration = require('./parts/JobConfigurationProps');\n\n// history time to live\nvar historyTimeToLive = require('./parts/HistoryTimeToLiveProps');\n\n// candidate starter groups/users\nvar candidateStarter = require('./parts/CandidateStarterProps');\n\n// tasklist\nvar tasklist = require('./parts/TasklistProps');\n\n// external task configuration\nvar externalTaskConfiguration = require('./parts/ExternalTaskConfigurationProps');\n\n// field injection\nvar fieldInjections = require('./parts/FieldInjectionProps');\n\nvar getBusinessObject = require('../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n eventDefinitionHelper = require('../../helper/EventDefinitionHelper'),\n implementationTypeHelper = require('../../helper/ImplementationTypeHelper');\n\n// helpers ////////////////////////////////////////\n\nvar isExternalTaskPriorityEnabled = function(element) {\n var businessObject = getBusinessObject(element);\n\n // show only if element is a process, a participant ...\n if (is(element, 'bpmn:Process') || is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\n return true;\n }\n\n var externalBo = ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element),\n isExternalTask = ImplementationTypeHelper.getImplementationType(externalBo) === 'external';\n\n // ... or an external task with selected external implementation type\n return !!ImplementationTypeHelper.isExternalCapable(externalBo) && isExternalTask;\n};\n\nvar isJobConfigEnabled = function(element) {\n var businessObject = getBusinessObject(element);\n\n if (is(element, 'bpmn:Process') || is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\n return true;\n }\n\n // async behavior\n var bo = getBusinessObject(element);\n if (asyncCapableHelper.isAsyncBefore(bo) || asyncCapableHelper.isAsyncAfter(bo)) {\n return true;\n }\n\n // timer definition\n if (is(element, 'bpmn:Event')) {\n return !!eventDefinitionHelper.getTimerEventDefinition(element);\n }\n\n return false;\n};\n\nvar getListenerLabel = function(param, translate) {\n\n if (is(param, 'harlequin:ExecutionListener')) {\n return translate('Execution Listener');\n }\n\n if (is(param, 'harlequin:TaskListener')) {\n return translate('Task Listener');\n }\n\n return '';\n};\n\nvar PROCESS_KEY_HINT = 'This maps to the process definition key.';\nvar TASK_KEY_HINT = 'This maps to the task definition key.';\n\nfunction getIdOptions(element) {\n\n if (is(element, 'bpmn:Participant')) {\n return { id: 'participant-id', label: 'Participant Id' };\n }\n\n if (is(element, 'bpmn:Process')) {\n return { description: PROCESS_KEY_HINT };\n }\n\n if (is(element, 'bpmn:UserTask')) {\n return { description: TASK_KEY_HINT };\n }\n}\n\nfunction getNameOptions(element) {\n if (is(element, 'bpmn:Participant')) {\n return { id: 'participant-name', label: 'Participant Name' };\n }\n}\n\nfunction getProcessOptions(element) {\n if (is(element, 'bpmn:Participant')) {\n return { processIdDescription: PROCESS_KEY_HINT };\n }\n}\n\nfunction createElementTemplateGroups(\n element,\n bpmnFactory,\n canvas,\n commandStack,\n elementTemplates,\n modeling,\n replace,\n selection,\n translate) {\n var templateId = getTemplateId(element);\n\n if (!templateId) {\n return [];\n }\n\n var descriptionGroup = elementTemplateDescriptionProps(\n element, commandStack, elementTemplates, modeling, replace, selection, translate);\n\n var idOptions = getIdOptions(element) || {};\n\n idOptions.id = 'element-template-element-id';\n\n var nameOptions = { id: 'element-template-element-name' };\n\n idProps(descriptionGroup, element, translate, idOptions);\n nameProps(descriptionGroup, element, bpmnFactory, canvas, translate, nameOptions);\n processProps(descriptionGroup, element, translate, getProcessOptions(element));\n\n var elementTemplateInputParametersGroup = {\n id: 'template-inputs',\n label: translate('Input Parameters'),\n entries: []\n };\n elementTemplateInputParametersProps(elementTemplateInputParametersGroup, element, elementTemplates, bpmnFactory, translate);\n\n var elementTemplateOutputParametersGroup = {\n id: 'template-outputs',\n label: translate('Output Parameters'),\n entries: []\n };\n elementTemplateOutputParametersProps(elementTemplateOutputParametersGroup, element, elementTemplates, bpmnFactory, translate);\n\n\n var elementTemplateErrorsGroup = {\n id: 'template-errors',\n label: translate('Errors'),\n entries: []\n };\n elementTemplateErrorsProps(elementTemplateErrorsGroup, element, elementTemplates, bpmnFactory, translate);\n\n var customFieldsGroups = elementTemplateCustomProps(element, elementTemplates, bpmnFactory, translate);\n\n return [\n descriptionGroup,\n elementTemplateInputParametersGroup,\n elementTemplateOutputParametersGroup,\n elementTemplateErrorsGroup\n ].concat(customFieldsGroups);\n}\n\nfunction createGeneralTabGroups(\n element, canvas, bpmnFactory,\n elementRegistry, elementTemplates, translate) {\n\n // refer to target element for external labels\n element = element.labelTarget || element;\n\n var generalGroup = {\n id: 'general',\n label: translate('General'),\n entries: []\n };\n\n idProps(generalGroup, element, translate, getIdOptions(element));\n nameProps(generalGroup, element, bpmnFactory, canvas, translate, getNameOptions(element));\n processProps(generalGroup, element, translate, getProcessOptions(element));\n versionTag(generalGroup, element, translate);\n executableProps(generalGroup, element, translate);\n elementTemplateChooserProps(generalGroup, element, elementTemplates, translate);\n\n var detailsGroup = {\n id: 'details',\n label: translate('Details'),\n entries: []\n };\n serviceTaskDelegateProps(detailsGroup, element, bpmnFactory, translate);\n userTaskProps(detailsGroup, element, translate);\n scriptProps(detailsGroup, element, bpmnFactory, translate);\n linkProps(detailsGroup, element, translate);\n callActivityProps(detailsGroup, element, bpmnFactory, translate);\n eventProps(detailsGroup, element, bpmnFactory, elementRegistry, translate);\n errorProps(detailsGroup, element, bpmnFactory, translate);\n conditionalProps(detailsGroup, element, bpmnFactory, translate);\n startEventInitiator(detailsGroup, element, translate); // this must be the last element of the details group!\n\n var multiInstanceGroup = {\n id: 'multiInstance',\n label: translate('Multi Instance'),\n entries: []\n };\n multiInstanceProps(multiInstanceGroup, element, bpmnFactory, translate);\n\n var asyncGroup = {\n id : 'async',\n label: translate('Asynchronous Continuations'),\n entries : []\n };\n asynchronousContinuationProps(asyncGroup, element, bpmnFactory, translate);\n\n var jobConfigurationGroup = {\n id : 'jobConfiguration',\n label : translate('Job Configuration'),\n entries : [],\n enabled: isJobConfigEnabled\n };\n jobConfiguration(jobConfigurationGroup, element, bpmnFactory, translate);\n\n var externalTaskGroup = {\n id : 'externalTaskConfiguration',\n label : translate('External Task Configuration'),\n entries : [],\n enabled: isExternalTaskPriorityEnabled\n };\n externalTaskConfiguration(externalTaskGroup, element, bpmnFactory, translate);\n\n\n var candidateStarterGroup = {\n id: 'candidateStarterConfiguration',\n label: translate('Candidate Starter Configuration'),\n entries: []\n };\n candidateStarter(candidateStarterGroup, element, bpmnFactory, translate);\n\n var historyTimeToLiveGroup = {\n id: 'historyConfiguration',\n label: translate('History Configuration'),\n entries: []\n };\n historyTimeToLive(historyTimeToLiveGroup, element, bpmnFactory, translate);\n\n var tasklistGroup = {\n id: 'tasklist',\n label: translate('Tasklist Configuration'),\n entries: []\n };\n tasklist(tasklistGroup, element, bpmnFactory, translate);\n\n var documentationGroup = {\n id: 'documentation',\n label: translate('Documentation'),\n entries: []\n };\n documentationProps(documentationGroup, element, bpmnFactory, translate);\n\n var groups = [];\n groups.push(generalGroup);\n groups.push(detailsGroup);\n groups.push(externalTaskGroup);\n groups.push(multiInstanceGroup);\n groups.push(asyncGroup);\n groups.push(jobConfigurationGroup);\n groups.push(candidateStarterGroup);\n groups.push(historyTimeToLiveGroup);\n groups.push(tasklistGroup);\n groups.push(documentationGroup);\n\n return groups;\n}\n\nfunction createVariablesTabGroups(element, bpmnFactory, elementRegistry, translate) {\n var variablesGroup = {\n id : 'variables',\n label : translate('Variables'),\n entries: []\n };\n variableMapping(variablesGroup, element, bpmnFactory, translate);\n\n return [\n variablesGroup\n ];\n}\n\nfunction createProcessVariablesTabGroups(element, translate) {\n var processVariablesGroup = {\n id : 'process-variables',\n label : translate('Variables'),\n entries: []\n };\n\n processVariablesProps(processVariablesGroup, element, translate);\n\n return [\n processVariablesGroup\n ];\n}\n\nfunction createFormsTabGroups(element, bpmnFactory, elementRegistry, translate) {\n var formGroup = {\n id : 'forms',\n label : translate('Forms'),\n entries: []\n };\n formProps(formGroup, element, bpmnFactory, translate);\n\n return [\n formGroup\n ];\n}\n\nfunction createListenersTabGroups(element, bpmnFactory, elementRegistry, translate) {\n\n var listenersGroup = {\n id : 'listeners',\n label: translate('Listeners'),\n entries: []\n };\n\n var options = listenerProps(listenersGroup, element, bpmnFactory, translate);\n\n var listenerDetailsGroup = {\n id: 'listener-details',\n entries: [],\n enabled: function(element, node) {\n return options.getSelectedListener(element, node);\n },\n label: function(element, node) {\n var param = options.getSelectedListener(element, node);\n return getListenerLabel(param, translate);\n }\n };\n\n listenerDetails(listenerDetailsGroup, element, bpmnFactory, options, translate);\n\n var listenerFieldsGroup = {\n id: 'listener-fields',\n label: translate('Field Injection'),\n entries: [],\n enabled: function(element, node) {\n return options.getSelectedListener(element, node);\n }\n };\n\n listenerFields(listenerFieldsGroup, element, bpmnFactory, options, translate);\n\n return [\n listenersGroup,\n listenerDetailsGroup,\n listenerFieldsGroup\n ];\n}\n\nfunction createInputOutputTabGroups(element, bpmnFactory, elementTemplates, translate) {\n\n var inputParametersGroup = {\n id: 'input-parameters',\n label: translate('Input Parameters'),\n entries: []\n };\n\n inputParameters(inputParametersGroup, element, bpmnFactory, elementTemplates, translate);\n\n var outputParametersGroup = {\n id: 'output-parameters',\n label: translate('Output Parameters'),\n entries: []\n };\n\n outputParameters(outputParametersGroup, element, bpmnFactory, elementTemplates, translate);\n\n var errorsGroup = {\n id: 'errors',\n label: translate('Errors'),\n entries: [],\n\n enabled: function(element, node) {\n var businessObject = getBusinessObject(element);\n var isExternal = ImplementationTypeHelper.getImplementationType(businessObject) === 'external';\n\n return is(element, 'bpmn:ServiceTask') && isExternal;\n },\n };\n\n errorsProps(errorsGroup, element, bpmnFactory, elementTemplates, translate);\n\n return [\n inputParametersGroup,\n outputParametersGroup,\n errorsGroup\n ];\n}\n\nfunction createConnectorTabGroups(element, bpmnFactory, elementRegistry, translate) {\n var connectorDetailsGroup = {\n id: 'connector-details',\n label: translate('Details'),\n entries: []\n };\n\n connectorDetails(connectorDetailsGroup, element, bpmnFactory, translate);\n\n var connectorInputParametersGroup = {\n id: 'connector-input-parameters',\n label: translate('Input Parameters'),\n entries: []\n };\n\n connectorInputParameters(connectorInputParametersGroup, element, bpmnFactory, translate);\n\n var connectorOutputParametersGroup = {\n id: 'connector-output-parameters',\n label: translate('Output Parameters'),\n entries: []\n };\n\n connectorOutputParameters(connectorOutputParametersGroup, element, bpmnFactory, translate);\n\n return [\n connectorDetailsGroup,\n connectorInputParametersGroup,\n connectorOutputParametersGroup\n ];\n}\n\nfunction createFieldInjectionsTabGroups(element, bpmnFactory, elementRegistry, translate) {\n\n var fieldGroup = {\n id: 'field-injections-properties',\n label: translate('Field Injections'),\n entries: []\n };\n\n fieldInjections(fieldGroup, element, bpmnFactory, translate);\n\n return [\n fieldGroup\n ];\n}\n\nfunction createExtensionElementsGroups(element, bpmnFactory, elementRegistry, translate) {\n\n var propertiesGroup = {\n id : 'extensionElements-properties',\n label: translate('Properties'),\n entries: []\n };\n properties(propertiesGroup, element, bpmnFactory, translate);\n\n return [\n propertiesGroup\n ];\n}\n\n// Harlequin Properties Provider /////////////////////////////////////\n\n\n/**\n * A properties provider for Harlequin related properties.\n *\n * @param {BpmnFactory} bpmnFactory\n * @param {Canvas} canvas\n * @param {ElementRegistry} elementRegistry\n * @param {ElementTemplates} elementTemplates\n * @param {EventBus} eventBus\n * @param {Modeling} modeling\n * @param {Replace} replace\n * @param {Selection} selection\n * @param {Translate} translate\n */\nfunction HarlequinPropertiesProvider(\n bpmnFactory,\n canvas,\n commandStack,\n elementRegistry,\n elementTemplates,\n eventBus,\n modeling,\n replace,\n selection,\n translate\n) {\n PropertiesActivator.call(this, eventBus);\n\n this.getTabs = function(element) {\n\n var generalTab = {\n id: 'general',\n label: translate('General'),\n groups: createGeneralTabGroups(\n element, canvas, bpmnFactory,\n elementRegistry, elementTemplates, translate)\n };\n\n var elementTemplateTab = {\n id: 'element-template',\n label: translate('Template'),\n groups: createElementTemplateGroups(\n element,\n bpmnFactory,\n canvas,\n commandStack,\n elementTemplates,\n modeling,\n replace,\n selection,\n translate\n )\n };\n\n var variablesTab = {\n id: 'variables',\n label: translate('Variables'),\n groups: createVariablesTabGroups(element, bpmnFactory, elementRegistry, translate)\n };\n\n var processVariablesTab = {\n id: 'process-variables',\n label: translate('Variables'),\n groups: createProcessVariablesTabGroups(element, translate)\n };\n\n var formsTab = {\n id: 'forms',\n label: translate('Forms'),\n groups: createFormsTabGroups(element, bpmnFactory, elementRegistry, translate)\n };\n\n var listenersTab = {\n id: 'listeners',\n label: translate('Listeners'),\n groups: createListenersTabGroups(element, bpmnFactory, elementRegistry, translate),\n enabled: function(element) {\n return !eventDefinitionHelper.getLinkEventDefinition(element)\n || (!is(element, 'bpmn:IntermediateThrowEvent')\n && eventDefinitionHelper.getLinkEventDefinition(element));\n }\n };\n\n var inputOutputTab = {\n id: 'input-output',\n label: translate('Input/Output'),\n groups: createInputOutputTabGroups(element, bpmnFactory, elementTemplates, translate)\n };\n\n var connectorTab = {\n id: 'connector',\n label: translate('Connector'),\n groups: createConnectorTabGroups(element, bpmnFactory, elementRegistry, translate),\n enabled: function(element) {\n var bo = implementationTypeHelper.getServiceTaskLikeBusinessObject(element);\n return bo && implementationTypeHelper.getImplementationType(bo) === 'connector';\n }\n };\n\n var fieldInjectionsTab = {\n id: 'field-injections',\n label: translate('Field Injections'),\n groups: createFieldInjectionsTabGroups(element, bpmnFactory, elementRegistry, translate)\n };\n\n var extensionsTab = {\n id: 'extensionElements',\n label: translate('Extensions'),\n groups: createExtensionElementsGroups(element, bpmnFactory, elementRegistry, translate)\n };\n\n return [\n generalTab,\n elementTemplateTab,\n variablesTab,\n processVariablesTab,\n connectorTab,\n formsTab,\n listenersTab,\n inputOutputTab,\n fieldInjectionsTab,\n extensionsTab\n ];\n };\n\n}\n\nHarlequinPropertiesProvider.$inject = [\n 'bpmnFactory',\n 'canvas',\n 'commandStack',\n 'elementRegistry',\n 'elementTemplates',\n 'eventBus',\n 'modeling',\n 'replace',\n 'selection',\n 'translate'\n];\n\ninherits(HarlequinPropertiesProvider, PropertiesActivator);\n\nmodule.exports = HarlequinPropertiesProvider;\n","'use strict';\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar eventDefinitionReference = require('../../../bpmn/parts/implementation/EventDefinitionReference'),\n elementReferenceProperty = require('../../../bpmn/parts/implementation/ElementReferenceProperty');\n\nvar domQuery = require('min-dom').query;\n\nmodule.exports = function(error, bpmnFactory, element, options, translate) {\n\n options = options || {};\n\n var idPrefix = options.idPrefix || '';\n\n var getError =\n (options.getError && typeof options.getError === 'function') ?\n function() {\n return options.getError();\n } :\n function() {\n return error;\n };\n\n var result = {},\n entries = [];\n\n result.entries = entries;\n\n var getCollapsibleTitle = function() {\n var error = getError();\n var title = 'No Error referenced';\n\n if (error.errorRef) {\n title = error.errorRef.name;\n if (error.errorRef.errorCode) {\n title += ' (code = ' + error.errorRef.errorCode + ')';\n }\n }\n return title;\n };\n\n // heading ////////////////////////////////////////////////////////\n var collapsible = entryFactory.collapsible({\n id: idPrefix + 'collapsible',\n title: getCollapsibleTitle(),\n description: getError().expression || '',\n cssClasses: [ 'bpp-collapsible-error' ],\n open: false,\n onRemove: options.onRemove,\n onToggle: options.onToggle,\n get: function() {\n return {\n title: getCollapsibleTitle(),\n description: getError().expression || '',\n };\n }\n });\n\n var isOpen = options.isOpen || collapsible.isOpen;\n\n result.setOpen = function(value) {\n var entryNode = domQuery('[data-entry=\"' + collapsible.id + '\"]');\n collapsible.setOpen(value, entryNode);\n };\n\n entries.push(collapsible);\n\n entries.push(entryFactory.validationAwareTextField(translate, {\n id: idPrefix + 'error-expression',\n label: translate('Throw Expression'),\n modelProperty: 'expression',\n\n getProperty: function(element, node) {\n return error.expression;\n },\n\n setProperty: function(element, values, node) {\n return cmdHelper.updateBusinessObject(element, error, values);\n },\n\n validate: function(element, values, node) {\n var validation = {};\n var expressionValue = values.expression;\n\n if (!expressionValue) {\n validation.expression = translate('Error must have an expression');\n }\n\n return validation;\n },\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n\n entries.push.apply(entries, eventDefinitionReference(element, error, bpmnFactory, {\n id: idPrefix + 'error-reference',\n label: translate('Global Error referenced'),\n elementName: 'error',\n elementType: 'bpmn:Error',\n referenceProperty: 'errorRef',\n newElementIdPrefix: 'Error_',\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n\n entries.push.apply(entries, elementReferenceProperty(element, error, bpmnFactory, translate, {\n id: idPrefix + 'error-element-name',\n label: translate('Name'),\n referenceProperty: 'errorRef',\n modelProperty: 'name',\n shouldValidate: true,\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n\n entries.push.apply(entries, elementReferenceProperty(element, error, bpmnFactory, translate, {\n id: idPrefix + 'error-element-code',\n label: translate('Code'),\n referenceProperty: 'errorRef',\n modelProperty: 'errorCode',\n shouldValidate: true,\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n\n entries.push.apply(entries, elementReferenceProperty(element, error, bpmnFactory, translate, {\n id: idPrefix + 'error-element-message',\n label: translate('Message'),\n referenceProperty: 'errorRef',\n modelProperty: 'errorMessage',\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n return result;\n};\n","'use strict';\n\nvar forEach = require('lodash/forEach');\n\nvar elementHelper = require('../helper/ElementHelper');\n\n/**\n * A handler that implements a BPMN 2.0 property update\n * for business objects which are not represented in the\n * diagram.\n *\n * This is useful in the context of the properties panel in\n * order to update child elements of elements visible in\n * the diagram.\n *\n * Example: perform an update of a specific event definition\n * of an intermediate event.\n *\n * @class\n * @constructor\n */\nfunction CreateBusinessObjectListHandler(elementRegistry, bpmnFactory) {\n this._elementRegistry = elementRegistry;\n this._bpmnFactory = bpmnFactory;\n}\n\nCreateBusinessObjectListHandler.$inject = [ 'elementRegistry', 'bpmnFactory' ];\n\nmodule.exports = CreateBusinessObjectListHandler;\n\nfunction ensureNotNull(prop, name) {\n if (!prop) {\n throw new Error(name + ' required');\n }\n return prop;\n\n}\nfunction ensureList(prop, name) {\n if (!prop || Object.prototype.toString.call(prop) !== '[object Array]') {\n throw new Error(name + ' needs to be a list');\n }\n return prop;\n}\n\n// api /////////////////////////////////////////////\n\n/**\n * Creates a new element under a provided parent and updates / creates a reference to it in\n * one atomic action.\n *\n * @method CreateBusinessObjectListHandler#execute\n *\n * @param {Object} context\n * @param {djs.model.Base} context.element which is the context for the reference\n * @param {moddle.referencingObject} context.referencingObject the object which creates the reference\n * @param {String} context.referenceProperty the property of the referencingObject which makes the reference\n * @param {moddle.newObject} context.newObject the new object to add\n * @param {moddle.newObjectContainer} context.newObjectContainer the container for the new object\n *\n * @return {Array} the updated element\n */\nCreateBusinessObjectListHandler.prototype.execute = function(context) {\n\n var currentObject = ensureNotNull(context.currentObject, 'currentObject'),\n propertyName = ensureNotNull(context.propertyName, 'propertyName'),\n newObjects = ensureList(context.newObjects, 'newObjects'),\n changed = [ context.element ]; // this will not change any diagram-js elements\n\n\n var childObjects = [];\n var self = this;\n\n // create new array of business objects\n forEach(newObjects, function(obj) {\n var element = elementHelper.createElement(obj.type, obj.properties, currentObject, self._bpmnFactory);\n\n childObjects.push(element);\n });\n context.childObject = childObjects;\n\n // adjust array reference in the parent business object\n context.previousChilds = currentObject[propertyName];\n currentObject[propertyName] = childObjects;\n\n context.changed = changed;\n\n // indicate changed on objects affected by the update\n return changed;\n};\n\n/**\n * Reverts the update\n *\n * @method CreateBusinessObjectListHandler#revert\n *\n * @param {Object} context\n *\n * @return {djs.mode.Base} the updated element\n */\nCreateBusinessObjectListHandler.prototype.revert = function(context) {\n\n var currentObject = context.currentObject,\n propertyName = context.propertyName,\n previousChilds = context.previousChilds;\n\n // remove new element\n currentObject.set(propertyName, previousChilds);\n\n return context.changed;\n};\n","'use strict';\n\nvar Validator = require('./Validator');\n\n/**\n * The guy responsible for template loading.\n *\n * Provide the actual templates via the `config.elementTemplates`.\n *\n * That configuration can either be an array of template\n * descriptors or a node style callback to retrieve\n * the templates asynchronously.\n *\n * @param {Array|Function} loadTemplates\n * @param {EventBus} eventBus\n * @param {ElementTemplates} elementTemplates\n */\nfunction ElementTemplatesLoader(loadTemplates, eventBus, elementTemplates) {\n this._loadTemplates = loadTemplates;\n this._eventBus = eventBus;\n this._elementTemplates = elementTemplates;\n\n var self = this;\n\n eventBus.on('diagram.init', function() {\n self.reload();\n });\n}\n\nmodule.exports = ElementTemplatesLoader;\n\nElementTemplatesLoader.$inject = [\n 'config.elementTemplates',\n 'eventBus',\n 'elementTemplates'\n];\n\n\nElementTemplatesLoader.prototype.reload = function() {\n\n var self = this;\n\n var loadTemplates = this._loadTemplates;\n\n // no templates specified\n if (typeof loadTemplates === 'undefined') {\n return;\n }\n\n // template loader function specified\n if (typeof loadTemplates === 'function') {\n\n return loadTemplates(function(err, templates) {\n\n if (err) {\n return self.templateErrors([ err ]);\n }\n\n self.setTemplates(templates);\n });\n }\n\n // templates array specified\n if (loadTemplates.length) {\n return this.setTemplates(loadTemplates);\n }\n\n};\n\nElementTemplatesLoader.prototype.setTemplates = function(templates) {\n\n var elementTemplates = this._elementTemplates;\n\n var validator = new Validator().addAll(templates);\n\n var errors = validator.getErrors(),\n validTemplates = validator.getValidTemplates();\n\n elementTemplates.set(validTemplates);\n\n if (errors.length) {\n this.templateErrors(errors);\n }\n\n this.templatesChanged();\n};\n\nElementTemplatesLoader.prototype.templatesChanged = function() {\n this._eventBus.fire('elementTemplates.changed');\n};\n\nElementTemplatesLoader.prototype.templateErrors = function(errors) {\n this._eventBus.fire('elementTemplates.errors', {\n errors: errors\n });\n};","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buildreport.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n inputOutputHelper = require('../../../../helper/InputOutputHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils');\n\nvar entryFieldDescription = require('../../../../factory/EntryFieldDescription');\n\nvar domQuery = require('min-dom').query;\n\nvar InputOutputParameter = require('./InputOutputParameter');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n options = options || {};\n\n var insideConnector = !!options.insideConnector,\n idPrefix = options.idPrefix || '';\n\n var result = {};\n\n var entries = result.entries = [];\n\n if (!inputOutputHelper.isInputOutputSupported(element, insideConnector) ||\n !inputOutputHelper.areOutputParametersSupported(element, insideConnector)) {\n return result;\n }\n\n var parametersOptions = {\n insideConnector: insideConnector,\n idPrefix: idPrefix\n };\n\n // output parameters ///////////////////////////////////////////////////////\n entries.push(\n getParametersHeading(element, bpmnFactory, {\n idPrefix: idPrefix,\n insideConnector: insideConnector,\n type: 'harlequin:OutputParameter',\n prop: 'outputParameters',\n prefix: 'Output'\n }));\n\n append(entries,\n getOutputParameterEntries(element, bpmnFactory, parametersOptions, translate)\n );\n\n return result;\n};\n\nfunction getParametersHeading(element, bpmnFactory, options) {\n var idPrefix = options.idPrefix || '',\n prefix = options.prefix,\n type = options.type,\n prop = options.prop,\n insideConnector = options.insideConnector;\n\n var entry = {\n id: idPrefix + prefix + '-heading',\n cssClasses: [ 'bpp-input-output' ],\n html: '
' +\n '' +\n '
'\n };\n\n entry.createElement = function(_, entryNode) {\n var commands = createElement();\n\n if (commands) {\n scheduleCommands(commands, entryNode);\n return true;\n }\n };\n\n entry.set = function() {\n var commands = entry._commands;\n\n if (commands) {\n delete entry._commands;\n return commands;\n }\n };\n\n function createElement() {\n var commands = [];\n var bo = getBusinessObject(element);\n var extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n\n var inputOutput = getInputOutput(element, insideConnector);\n if (!inputOutput) {\n var parent = !insideConnector ? extensionElements : getConnector(element);\n inputOutput = createInputOutput(parent, bpmnFactory, {\n inputParameters: [],\n outputParameters: []\n });\n\n if (!insideConnector) {\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [ inputOutput ],\n []\n ));\n } else {\n commands.push(cmdHelper.updateBusinessObject(element, parent, { inputOutput: inputOutput }));\n }\n }\n\n var newElem = createParameter(type, inputOutput, bpmnFactory, { name: generateElementId(prefix) });\n commands.push(cmdHelper.addElementsTolist(element, inputOutput, prop, [], [ newElem ]));\n\n return commands;\n }\n\n /**\n * Schedule commands to be run with next `set` method call.\n *\n * @param {Array} commands\n * @param {HTMLElement} entryNode\n */\n function scheduleCommands(commands, entryNode) {\n entry._commands = commands;\n\n // @barmac: hack to make properties panel call `set`\n var input = domQuery('input[type=\"hidden\"]', entryNode);\n input.value = 1;\n }\n\n return entry;\n}\n\nfunction getOutputParameterEntries(element, bpmnFactory, options, translate) {\n var idPrefix = options.idPrefix,\n insideConnector = options.insideConnector,\n inputOutput = getInputOutput(element, insideConnector),\n params = getOutputParameters(element, insideConnector),\n entries;\n\n if (!params.length) {\n var description = entryFieldDescription(translate, translate('No variables defined.'));\n\n return [{\n id: idPrefix + 'output-parameter' + '-placeholder',\n cssClasses: [ 'bpp-input-output-placeholder' ],\n html: description\n }];\n }\n\n var outputParameters = params.map(function(param, index) {\n function onRemove() {\n var commands = [];\n commands.push(cmdHelper.removeElementsFromList(element, inputOutput, 'outputParameters', null, [param]));\n\n // remove inputOutput if there are no input/output parameters anymore\n if (inputOutput.get('outputParameters').length === 1 && (inputOutput.get('inputParameters') || []).length === 0) {\n\n if (!insideConnector) {\n commands.push(extensionElementsHelper.removeEntry(getBusinessObject(element), element, inputOutput));\n }\n else {\n var connector = getConnector(element);\n commands.push(cmdHelper.updateBusinessObject(element, connector, { inputOutput: undefined }));\n }\n }\n\n return commands;\n }\n\n return InputOutputParameter(param, bpmnFactory,\n {\n idPrefix: idPrefix + 'output-parameter-' + index,\n onRemove: onRemove,\n onToggle: onToggle\n }, translate);\n });\n\n /**\n * Close remaining collapsible entries within group.\n *\n * @param {boolean} value\n * @param {HTMLElement} entryNode\n */\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n outputParameters.forEach(function(outputParameter) {\n if (outputParameter.entries[0].id === currentEntryId) {\n return;\n }\n\n outputParameter.setOpen(false, entryNode.parentElement);\n });\n }\n\n entries = outputParameters.map(function(input) {\n return input.entries;\n });\n\n return flatten(entries);\n}\n\nfunction append(array, items) {\n Array.prototype.push.apply(array, items);\n}\n\nfunction flatten(arrays) {\n return Array.prototype.concat.apply([], arrays);\n}\n\nfunction generateElementId(prefix) {\n prefix = prefix + '_';\n return utils.nextId(prefix);\n}\n\nfunction getInputOutput(element, insideConnector) {\n return inputOutputHelper.getInputOutput(element, insideConnector);\n}\n\nfunction getConnector(element) {\n return inputOutputHelper.getConnector(element);\n}\n\nfunction getOutputParameters(element, insideConnector) {\n return inputOutputHelper.getOutputParameters(element, insideConnector);\n}\n\nfunction createElement(type, parent, factory, properties) {\n return elementHelper.createElement(type, properties, parent, factory);\n}\n\nfunction createInputOutput(parent, bpmnFactory, properties) {\n return createElement('harlequin:InputOutput', parent, bpmnFactory, properties);\n}\n\nfunction createParameter(type, parent, bpmnFactory, properties) {\n return createElement(type, parent, bpmnFactory, properties);\n}\n","'use strict';\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\n\nvar entryFieldDescription = require('../../../../factory/EntryFieldDescription');\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar ErrorsEntries = require('./ErrorsEntries');\n\nvar domQuery = require('min-dom').query;\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n options = options || {};\n\n var result = {};\n\n var entries = result.entries = [];\n\n entries.push(\n getErrorsHeading(element, bpmnFactory, {\n type: 'harlequin:ErrorEventDefinition',\n prop: 'errorEventDefinition',\n prefix: 'Error'\n }));\n\n append(entries,\n getErrorsEntries(element, bpmnFactory, {}, translate)\n );\n\n return result;\n};\n\nfunction getErrorsHeading(element, bpmnFactory, options) {\n var prefix = options.prefix;\n\n var entry = {\n id: prefix + '-heading',\n cssClasses: [ 'bpp-error' ],\n html: '
' +\n '' +\n '
'\n };\n\n entry.createElement = function(_, entryNode) {\n var commands = createElement();\n\n if (commands) {\n scheduleCommands(commands, entryNode);\n return true;\n }\n };\n\n entry.set = function() {\n var commands = entry._commands;\n\n if (commands) {\n delete entry._commands;\n return commands;\n }\n };\n\n function createElement() {\n var commands = [];\n var bo = getBusinessObject(element);\n var extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n var newElem = elementHelper.createElement('harlequin:ErrorEventDefinition', {}, extensionElements, bpmnFactory);\n commands.push(cmdHelper.addElementsTolist(element, extensionElements, 'values', [ newElem ]));\n\n return commands;\n }\n\n /**\n * Schedule commands to be run with next `set` method call.\n *\n * @param {Array} commands\n * @param {HTMLElement} entryNode\n */\n function scheduleCommands(commands, entryNode) {\n entry._commands = commands;\n\n // @barmac: hack to make properties panel call `set`\n var input = domQuery('input[type=\"hidden\"]', entryNode);\n input.value = 1;\n }\n\n return entry;\n}\n\nfunction getErrors(bo) {\n return extensionElementsHelper.getExtensionElements(bo, 'harlequin:ErrorEventDefinition') || [];\n}\n\n\nfunction getErrorsEntries(element, bpmnFactory, options, translate) {\n var idPrefix = options.idPrefix || '',\n bo = getBusinessObject(element),\n errorEventDefinitions = getErrors(bo),\n extensionElements = bo.get('extensionElements'),\n entries;\n\n if (errorEventDefinitions && !errorEventDefinitions.length) {\n var description = entryFieldDescription(translate, translate('No errors defined.'));\n\n return [{\n id: idPrefix + 'error-placeholder',\n cssClasses: [ 'bpp-error-placeholder' ],\n html: description\n }];\n }\n\n var errorsEntries = errorEventDefinitions.map(function(definition, index) {\n\n function onRemove() {\n var commands = [];\n\n commands.push(cmdHelper.removeElementsFromList(element, extensionElements, 'values', 'extensionElements', [definition]));\n return commands;\n }\n\n return ErrorsEntries(definition, bpmnFactory, element,\n {\n idPrefix: idPrefix + 'error-' + index,\n onRemove: onRemove,\n onToggle: onToggle\n }, translate);\n\n /**\n * Close remaining collapsible entries within group.\n *\n * @param {boolean} value\n * @param {HTMLElement} entryNode\n */\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n errorsEntries.forEach(function(entry) {\n if (entry.entries[0].id === currentEntryId) {\n return;\n }\n\n entry.setOpen(false, entryNode.parentElement);\n });\n\n }\n });\n\n entries = errorsEntries.map(function(input) {\n return input.entries;\n });\n\n return flatten(entries);\n}\n\nfunction flatten(arrays) {\n return Array.prototype.concat.apply([], arrays);\n}\n\nfunction append(array, items) {\n Array.prototype.push.apply(array, items);\n}\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getImplementationType = options.getImplementationType,\n getBusinessObject = options.getBusinessObject;\n\n function isExternal(element) {\n return getImplementationType(element) === 'external';\n }\n\n var topicEntry = entryFactory.textField(translate, {\n id: 'externalTopic',\n label: translate('Topic'),\n modelProperty: 'externalTopic',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return { externalTopic: bo.get('harlequin:topic') };\n },\n\n set: function(element, values, node) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:topic': values.externalTopic\n });\n },\n\n validate: function(element, values, node) {\n return isExternal(element) && !values.externalTopic ? { externalTopic: translate('Must provide a value') } : {};\n },\n\n hidden: function(element, node) {\n return !isExternal(element);\n }\n\n });\n\n return [ topicEntry ];\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./dashboard.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n extensionElementsHelper = require('../../../../helper/ExtensionElementsHelper'),\n elementHelper = require('../../../../helper/ElementHelper');\n\nvar assign = require('lodash/assign');\nvar map = require('lodash/map');\n\nvar DEFAULT_DELEGATE_PROPS = [ 'class', 'expression', 'delegateExpression' ];\n\nvar DELEGATE_PROPS = {\n 'harlequin:class': undefined,\n 'harlequin:expression': undefined,\n 'harlequin:delegateExpression': undefined,\n 'harlequin:resultVariable': undefined\n};\n\nvar DMN_CAPABLE_PROPS = {\n 'harlequin:decisionRef': undefined,\n 'harlequin:decisionRefBinding': 'latest',\n 'harlequin:decisionRefVersion': undefined,\n 'harlequin:mapDecisionResult': 'resultList',\n 'harlequin:decisionRefTenantId': undefined\n};\n\n\nvar EXTERNAL_CAPABLE_PROPS = {\n 'harlequin:type': undefined,\n 'harlequin:topic': undefined\n};\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var DEFAULT_OPTIONS = [\n { value: 'class', name: translate('Java Class') },\n { value: 'expression', name: translate('Expression') },\n { value: 'delegateExpression', name: translate('Delegate Expression') }\n ];\n\n var DMN_OPTION = [\n { value: 'dmn', name: translate('DMN') }\n ];\n\n var EXTERNAL_OPTION = [\n { value: 'external', name: translate('External') }\n ];\n\n var CONNECTOR_OPTION = [\n { value: 'connector', name: translate('Connector') }\n ];\n\n var SCRIPT_OPTION = [\n { value: 'script', name: translate('Script') }\n ];\n\n var getType = options.getImplementationType,\n getBusinessObject = options.getBusinessObject;\n\n var hasDmnSupport = options.hasDmnSupport,\n hasExternalSupport = options.hasExternalSupport,\n hasServiceTaskLikeSupport = options.hasServiceTaskLikeSupport,\n hasScriptSupport = options.hasScriptSupport;\n\n var entries = [];\n\n var selectOptions = DEFAULT_OPTIONS.concat([]);\n\n if (hasDmnSupport) {\n selectOptions = selectOptions.concat(DMN_OPTION);\n }\n\n if (hasExternalSupport) {\n selectOptions = selectOptions.concat(EXTERNAL_OPTION);\n }\n\n if (hasServiceTaskLikeSupport) {\n selectOptions = selectOptions.concat(CONNECTOR_OPTION);\n }\n\n if (hasScriptSupport) {\n selectOptions = selectOptions.concat(SCRIPT_OPTION);\n }\n\n selectOptions.push({ value: '' });\n\n entries.push(entryFactory.selectBox(translate, {\n id : 'implementation',\n label: translate('Implementation'),\n selectOptions: selectOptions,\n modelProperty: 'implType',\n\n get: function(element, node) {\n return {\n implType: getType(element) || ''\n };\n },\n\n set: function(element, values, node) {\n var bo = getBusinessObject(element);\n var oldType = getType(element);\n var newType = values.implType;\n\n var props = assign({}, DELEGATE_PROPS);\n\n if (DEFAULT_DELEGATE_PROPS.indexOf(newType) !== -1) {\n\n var newValue = '';\n if (DEFAULT_DELEGATE_PROPS.indexOf(oldType) !== -1) {\n newValue = bo.get('harlequin:' + oldType);\n }\n props['harlequin:' + newType] = newValue;\n }\n\n if (hasDmnSupport) {\n props = assign(props, DMN_CAPABLE_PROPS);\n if (newType === 'dmn') {\n props['harlequin:decisionRef'] = '';\n }\n }\n\n if (hasExternalSupport) {\n props = assign(props, EXTERNAL_CAPABLE_PROPS);\n if (newType === 'external') {\n props['harlequin:type'] = 'external';\n props['harlequin:topic'] = '';\n }\n }\n\n if (hasScriptSupport) {\n props['harlequin:Script'] = undefined;\n\n if (newType === 'script') {\n props['harlequin:Script'] = elementHelper.createElement('harlequin:Script', {}, bo, bpmnFactory);\n }\n }\n\n var commands = [];\n commands.push(cmdHelper.updateBusinessObject(element, bo, props));\n\n if (oldType === 'external' && newType !== 'external') {\n var errorEventDefinitions = extensionElementsHelper.getExtensionElements(bo, 'harlequin:ErrorEventDefinition');\n commands.push(map(errorEventDefinitions, function(errorEventDefinition) {\n return extensionElementsHelper.removeEntry(bo, element, errorEventDefinition);\n }));\n }\n\n if (hasServiceTaskLikeSupport) {\n var connectors = extensionElementsHelper.getExtensionElements(bo, 'harlequin:Connector');\n commands.push(map(connectors, function(connector) {\n return extensionElementsHelper.removeEntry(bo, element, connector);\n }));\n\n if (newType === 'connector') {\n var extensionElements = bo.get('extensionElements');\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', { values: [] }, bo, bpmnFactory);\n commands.push(cmdHelper.updateBusinessObject(element, bo, { extensionElements: extensionElements }));\n }\n var connector = elementHelper.createElement('harlequin:Connector', {}, extensionElements, bpmnFactory);\n commands.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n extensionElements,\n 'values',\n 'extensionElements',\n [ connector ],\n []\n ));\n }\n }\n\n return commands;\n\n }\n }));\n\n return entries;\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ViewTable.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nvar DELEGATE_TYPES = [\n 'class',\n 'expression',\n 'delegateExpression'\n];\n\nvar PROPERTIES = {\n class: 'harlequin:class',\n expression: 'harlequin:expression',\n delegateExpression: 'harlequin:delegateExpression'\n};\n\nfunction isDelegate(type) {\n return DELEGATE_TYPES.indexOf(type) !== -1;\n}\n\nfunction getAttribute(type) {\n return PROPERTIES[type];\n}\n\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getImplementationType = options.getImplementationType,\n getBusinessObject = options.getBusinessObject;\n\n function getDelegationLabel(type) {\n switch (type) {\n case 'class':\n return translate('Java Class');\n case 'expression':\n return translate('Expression');\n case 'delegateExpression':\n return translate('Delegate Expression');\n default:\n return '';\n }\n }\n\n var delegateEntry = entryFactory.textField(translate, {\n id: 'delegate',\n label: translate('Value'),\n dataValueLabel: 'delegationLabel',\n modelProperty: 'delegate',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n var type = getImplementationType(element);\n var attr = getAttribute(type);\n var label = getDelegationLabel(type);\n return {\n delegate: bo.get(attr),\n delegationLabel: label\n };\n },\n\n set: function(element, values, node) {\n var bo = getBusinessObject(element);\n var type = getImplementationType(element);\n var attr = getAttribute(type);\n var prop = {};\n prop[attr] = values.delegate || '';\n return cmdHelper.updateBusinessObject(element, bo, prop);\n },\n\n validate: function(element, values, node) {\n return isDelegate(getImplementationType(element)) && !values.delegate ? { delegate: translate('Must provide a value') } : {};\n },\n\n hidden: function(element, node) {\n return !isDelegate(getImplementationType(element));\n }\n\n });\n\n return [ delegateEntry ];\n\n};\n","'use strict';\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar forEach = require('lodash/forEach');\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\n\nvar isList = function(list) {\n return !(!list || Object.prototype.toString.call(list) !== '[object Array]');\n};\n\nvar addEmptyParameter = function(list) {\n return list.concat([ { name: '', value: '' } ]);\n};\n\nvar createOption = function(option) {\n return '';\n};\n\n/**\n * @param {Object} options\n * @param {string} options.id\n * @param {string} [options.label]\n * @param {Array} options.selectOptions\n * @param {string} options.modelProperty\n * @param {boolean} options.emptyParameter\n * @param {function} options.disabled\n * @param {function} options.hidden\n * @param {Object} defaultParameters\n *\n * @return {Object}\n */\nvar selectbox = function(translate, options, defaultParameters) {\n var resource = defaultParameters,\n label = options.label || resource.id,\n selectOptions = options.selectOptions || [ { name: '', value: '' } ],\n modelProperty = options.modelProperty,\n emptyParameter = options.emptyParameter,\n canBeDisabled = !!options.disabled && typeof options.disabled === 'function',\n canBeHidden = !!options.hidden && typeof options.hidden === 'function',\n description = options.description;\n\n\n if (emptyParameter) {\n selectOptions = addEmptyParameter(selectOptions);\n }\n\n\n resource.html =\n domify('' +\n '');\n\n var select = domQuery('select', resource.html);\n\n if (isList(selectOptions)) {\n forEach(selectOptions, function(option) {\n select.appendChild(\n domify(\n ''\n )\n );\n });\n }\n\n // add description below select box entry field\n if (description && typeof options.showCustomInput !== 'function') {\n resource.html.appendChild(entryFieldDescription(translate, description, { show: canBeHidden && 'isHidden' }));\n }\n\n /**\n * Fill the select box options dynamically.\n *\n * Calls the defined function #selectOptions in the entry to get the\n * values for the options and set the value to the inputNode.\n *\n * @param {djs.model.Base} element\n * @param {HTMLElement} entryNode\n * @param {EntryDescriptor} inputNode\n * @param {Object} inputName\n * @param {Object} newValue\n */\n resource.setControlValue = function(element, entryNode, inputNode, inputName, newValue) {\n if (typeof selectOptions === 'function') {\n\n var options = selectOptions(element, inputNode);\n\n if (options) {\n\n // remove existing options\n while (inputNode.firstChild) {\n inputNode.removeChild(inputNode.firstChild);\n }\n\n // add options\n forEach(options, function(option) {\n var template = domify(createOption(option));\n\n inputNode.appendChild(template);\n });\n\n\n }\n }\n\n // set select value\n if (newValue !== undefined) {\n inputNode.value = newValue;\n }\n\n };\n\n if (canBeDisabled) {\n resource.isDisabled = function() {\n return options.disabled.apply(resource, arguments);\n };\n }\n\n if (canBeHidden) {\n resource.isHidden = function() {\n return !options.hidden.apply(resource, arguments);\n };\n }\n\n resource.cssClasses = ['bpp-dropdown'];\n\n return resource;\n};\n\nmodule.exports = selectbox;\n","import axios from 'axios';\nimport cryptojs from 'crypto-js';\nimport * as msal from '@azure/msal-browser';\nimport router from '@/router';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\nconst tenantId = process.env.VUE_APP_TENANT;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst apiHeaders = {\n 'Content-Type': 'application/json',\n 'Authorization': `Basic ${apiToken}`\n};\n\nlet username = '';\nlet password = '';\n\nfunction setToken(username, password) {\n const token = Buffer.from(`${username}:${password}`, 'utf8').toString('base64');\n store.commit('setToken', token);\n}\n\nconst randomKeyGen = (length = 8) => {\n // Declare all characters\n let chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n\n // Pick characers randomly\n let str = '';\n for (let i = 0; i < length; i++) {\n str += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n return str;\n\n};\n\nconst state = {\n loggedInUser: [],\n msalSsoEnabled: false,\n samllSsoEnabled: false,\n ldapEnabled: false,\n msalConfig: {},\n msalActiveAccount: null,\n msalUsername: '',\n samlUsername: '',\n samlResp: '',\n samlLoggedOut: false,\n ssoUserAdded: false,\n ldapAuthSuccess: false,\n ldapUserNotExist: ''\n};\n\nconst getters = {\n loggedInUser: (state) => state.loggedInUser,\n msalSsoEnabled: (state) => state.msalSsoEnabled,\n samllSsoEnabled: (state) => state.samllSsoEnabled,\n msalConfig: (state) => state.msalConfig,\n msalActiveAccount: (state) => state.msalActiveAccount,\n msalUsername: (state) => state.msalUsername,\n samlUsername: (state) => state.samlUsername,\n ssoUserAdded: (state) => state.ssoUserAdded,\n ldapAuthSuccess: (state) => state.ldapAuthSuccess,\n ldapUserNotExist: (state) => state.ldapUserNotExist\n};\n\nconst actions = {\n login({commit}, payload) {\n // Check tenant\n return axios.get(baseURL + '/tenant?userMember=' + payload.username, {headers: apiHeaders}).then( resp => {\n for (let i = 0; i < resp.data.length; i++) {\n if(resp.data[i].id == tenantId) {\n let data = {\n 'username': payload.username, \n 'password': payload.password\n };\n // Authenticate\n return axios.post(baseURL + '/identity/verify', data, {headers: apiHeaders}).then( result => {\n // If user is authenticated\n if(result.data.authenticated) {\n // Get user details\n return axios.get(baseURL + '/user?id=' + payload.username, {headers: apiHeaders}).then( user => {\n username = payload.username;\n password = payload.password;\n setToken(username, password);\n store.commit('setCurrentUser', payload.username);\n store.commit('setCurrentUserFullname', user.data[0].firstName + ' ' + user.data[0].lastName);\n store.commit('setCurrentUserEmail', user.data[0].email);\n store.commit('setTenant', tenantId);\n store.commit('setEngineUrl', baseURL);\n let randomKey = randomKeyGen(512);\n store.commit('setRandomKey', randomKey);\n let cipher = cryptojs.AES.encrypt(payload.password, randomKey).toString();\n store.commit('setXAuthToken', cipher);\n let extCipher = cryptojs.AES.encrypt(apiPassword, randomKey).toString();\n store.commit('setExtAuthToken', extCipher);\n\n // Get user groups\n this.dispatch('getUserGroups');\n \n // Get user role\n return axios.get(baseURL + '/group?type=Role&member=' + username, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then(role => {\n if(role.data.length > 0) {\n store.commit('setCurrentRole', role.data[0].id);\n\n // Check for admin role\n if(role.data[0].id == 'adminRole') {\n store.commit('setIsAdmin', true);\n }\n\n // Check for developer role\n if(role.data[0].id == 'developerRole') {\n store.commit('setIsDeveloper', true);\n }\n\n // Check for supervisor role\n if(role.data[0].id == 'supervisorRole') {\n store.commit('setIsSupervisor', true);\n }\n\n // Check for manager role\n if(role.data[0].id == 'managerRole') {\n store.commit('setIsManager', true);\n }\n\n }\n commit('LOGGED_IN_USER', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n } \n }\n });\n },\n samlLogin({commit}) {\n let data = {\n 'variables': {\n 'sso': { 'value': 'saml', 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n\n return axios.post(baseURL + '/process-definition/key/ssoController/start', data, {headers: apiHeaders}).then( resp => {\n let loginUrl = JSON.parse(resp.data.variables.samlLoginUrl.value);\n\n window.open(loginUrl);\n commit('SAML_RESP', resp);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n completeSsoLogin({state, commit}, payload) {\n // Check tenant\n return axios.get(baseURL + '/tenant?userMember=' + payload.username, {headers: apiHeaders}).then( resp => {\n for (let i = 0; i < resp.data.length; i++) {\n if(resp.data[i].id == tenantId) {\n // Get user details\n return axios.get(baseURL + '/user?id=' + payload.username, {headers: apiHeaders}).then( user => {\n store.commit('setToken', apiToken);\n store.commit('setCurrentUser', user.data[0].id);\n store.commit('setCurrentUserFullname', user.data[0].firstName + ' ' + user.data[0].lastName);\n store.commit('setCurrentUserEmail', user.data[0].email);\n store.commit('setTenant', tenantId);\n store.commit('setEngineUrl', baseURL);\n let randomKey = randomKeyGen(512);\n store.commit('setRandomKey', randomKey);\n let cipher = cryptojs.AES.encrypt(payload.password, randomKey).toString();\n store.commit('setXAuthToken', cipher);\n let extCipher = cryptojs.AES.encrypt(apiPassword, randomKey).toString();\n store.commit('setExtAuthToken', extCipher);\n\n // Sync the users LDAP password to Harlequin\n if(state.ldapEnabled) {\n let decipher = cryptojs.AES.decrypt(store.state.extAuthToken, store.state.randomKey);\n let credData = {\n 'password': payload.password,\n 'authenticatedUserPassword': decipher.toString(cryptojs.enc.Utf8)\n };\n axios.put(baseURL + '/user/' + payload.username + '/credentials', credData, {headers: apiHeaders}).then( res => {\n if(res.status == 204) {\n commit('UPDATED_USER_CREDS', payload.username); \n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n\n let loggedInData = {\n 'authenticatedUser': payload.username,\n 'authenticated': true\n }\n \n // Get user groups\n this.dispatch('getUserGroups');\n \n // Get user role\n return axios.get(baseURL + '/group?type=Role&member=' + payload.username, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then(role => {\n if(role.data.length > 0) {\n store.commit('setCurrentRole', role.data[0].id);\n\n // Check for admin role\n if(role.data[0].id == 'adminRole') {\n store.commit('setIsAdmin', true);\n }\n\n // Check for supervisor role\n if(role.data[0].id == 'supervisorRole') {\n store.commit('setIsSupervisor', true);\n }\n\n // Check for manager role\n if(role.data[0].id == 'managerRole') {\n store.commit('setIsManager', true);\n }\n\n }\n if(state.msalSsoEnabled) {\n commit('MSAL_USERNAME', payload.msalUsername);\n }\n if(state.samlSsoEnabled) {\n commit('SAML_USERNAME', payload.samlUsername);\n }\n commit('LOGGED_IN_USER', loggedInData);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }else {\n // Do nothing\n }\n }\n if(resp.data.length === 0 && !state.ssoUserAdded) {\n store.commit('setToken', apiToken);\n let name = payload.name.split(' ');\n let firstName = 'NULL';\n let lastName = 'NULL';\n \n if(name[0]) {\n firstName = name[0];\n }\n if(name[1]) {\n lastName = name[1];\n }\n\n // Generate password\n let newPass = '';\n let length = 2;\n let chars = 'abcdefghijklmnopqrstuvwxyz';\n\n // Generate ID\n for (let i = 0; i < length; i++) {\n newPass += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = '!@$%^&*';\n\n // Generate ID\n for (let i = 0; i < length; i++) {\n newPass += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';\n\n // Generate ID\n for (let i = 0; i < length; i++) {\n newPass += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 1;\n chars = '0123456789';\n\n // Generate ID\n for (let i = 0; i < length; i++) {\n newPass += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n length = 7;\n chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@$%^&*';\n\n // Generate ID\n for (let i = 0; i < length; i++) {\n newPass += chars.charAt(Math.floor(Math.random() * chars.length));\n }\n\n let userEmail = '';\n if(state.msalSsoEnabled) {\n userEmail = payload.msalUsername;\n }\n if(state.samlSsoEnabled) {\n userEmail = payload.samlUsername;\n }\n\n let userPayload = {\n 'profile': {\n 'id': payload.username,\n 'firstName': firstName,\n 'lastName': lastName,\n 'email': userEmail\n },\n 'credentials': {\n 'password': newPass\n }\n };\n this.dispatch('addUser', userPayload).then(() => {\n\n let rolePayload = {\n 'id': 'userRole',\n 'userId': payload.username\n };\n this.dispatch('addUserToRole', rolePayload).then( () => {\n commit('SSO_USER_ADDED', true);\n });\n });\n }\n });\n },\n samlAuthCheck({commit}) {\n return axios.get(window.location.origin + '/saml/check.jsp', {headers: {'Content-Type': 'application/json'}}).then( resp => {\n let isAuthenticated = resp.data.samlResponse[0].isAuthenticated;\n let samlLogout = resp.data.samlResponse[0].samlLogout;\n\n if(!isAuthenticated && samlLogout) {\n commit('SAML_LOGGED_OUT', true);\n // Clearing data\n commit('OP_LOG', []);\n commit('COMPLETED_INSTANCES', []);\n commit('ALL_TASKS', []);\n commit('UNASSIGNED_TASKS', []);\n commit('TEAM_TASKS', []);\n commit('MY_TASKS', []);\n commit('RUNNING_PROCESSES', []);\n commit('PROCESSES', []);\n commit('ALL_PROCESSES', []);\n commit('ALL_PROCESS_XML', []);\n commit('ALL_TABLES', []);\n commit('ALL_FORMS', []);\n commit('DOC_TEMPLATES', []);\n commit('EMAIL_TEMPLATES', []);\n commit('ALL_REPORTS', []);\n commit('ALL_FILES', []);\n commit('ALL_USERS', []);\n commit('ALL_USERS_SPECIAL', []);\n commit('ALL_PORTAL_USERS', []);\n commit('ALL_GROUPS', []);\n commit('HIST_DATES_CLEARED', false);\n\n // Update Ops log\n let msg = 'User ' + store.state.currentUser + ' logged out.';\n let dt = new Date();\n let dateTime = new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(dt);\n\n let logData = {\n 'category': 'Admin',\n 'userId': store.state.currentUser,\n 'caseId': 0,\n 'processName': null,\n 'taskName': null,\n 'operation': 'Logout',\n 'msg': msg,\n 'dateTime': dateTime,\n };\n this.dispatch('updateOpLog', logData);\n \n this.dispatch('unlockAll').then( async () => {\n await this.dispatch('logout')\n .then(() => {\n this.dispatch('redirectToLogin');\n });\n });\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async ldapLogin({commit}, payload) {\n\n let hqUsername = payload.username;\n\n if(hqUsername.includes(\"\\\\\")) {\n hqUsername = hqUsername.split('\\\\')[1];\n }\n hqUsername = hqUsername.replace(/[^A-Z0-9]/ig, \"\");\n \n await this.dispatch('userCheck', hqUsername).then( exists => {\n if(exists) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'login', 'type': 'String' },\n 'ldapUsername': { 'value': payload.username, 'type': 'String' },\n 'ldapPassword': { 'value': payload.password, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/ldapController/tenant-id/' + tenantId + '/start', data, {headers: apiHeaders}).then( resp => {\n let ldapAuthSuccess = resp.data.variables.ldapAuthSuccess.value;\n\n commit('LDAP_AUTH_SUCCESS', ldapAuthSuccess);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }else {\n commit('LDAP_USER_NOT_EXIST', \"This account has not been sync'ed to Harlequin. Attempting local login...\");\n }\n });\n },\n redirectToLogin() {\n router.push('/');\n },\n async logout({state, commit}) {\n let username = store.state.currentUser;\n\n if(state.msalSsoEnabled && username != 'hqadmin') {\n const msalObj = new msal.PublicClientApplication(state.msalConfig);\n\n const logoutReq = {\n account: msalObj.getAccountByUsername(state.msalUsername)\n }\n msalObj.logoutPopup(logoutReq);\n }\n\n if(state.samlSsoEnabled && !state.samlLoggedOut && username != 'hqadmin') {\n let samlUrl = window.location.origin + '/saml/logout.jsp';\n window.location.href = samlUrl;\n }\n\n // let data = {\n // 'loggedInUser': [],\n // 'msalSsoEnabled': false,\n // 'samlSsoEnabled': false\n // };\n this.dispatch('clearAll');\n\n commit('LOGGED_OUT_USER');\n\n return true;\n }\n};\n\nconst mutations = {\n LOGGED_IN_USER(state, payload) {\n state.loggedInUser = payload;\n store.commit('setIsLoggedIn', true);\n },\n MSAL_SSO_ENABLED(state, payload) {\n state.msalSsoEnabled = payload;\n store.commit('setMsalSsoEnabled', true);\n store.commit('setSamlSsoEnabled', false);\n },\n SAML_SSO_ENABLED(state, payload) {\n state.samlSsoEnabled = payload;\n store.commit('setSamlSsoEnabled', true);\n store.commit('setMsalSsoEnabled', false);\n },\n LDAP_ENABLED(state, payload) {\n state.ldapEnabled = payload;\n },\n MSAL_CONFIG(state, payload) {\n state.msalConfig = payload;\n },\n MSAL_ACTIVE_ACCOUNT(state, payload) {\n state.msalActiveAccount = payload;\n },\n MSAL_USERNAME(state, payload) {\n state.msalUsername = payload;\n },\n SAMLL_USERNAME(state, payload) {\n state.samlUsername = payload;\n },\n SSO_USER_ADDED(state, payload) {\n state.ssoUserAdded = payload;\n },\n SAML_RESP(state, payload) {\n state.samlResp = payload;\n },\n SAML_LOGGED_OUT(state, payload) {\n state.samlLoggedOut = payload;\n },\n LDAP_AUTH_SUCCESS(state, payload) {\n state.ldapAuthSuccess = payload;\n },\n LDAP_USER_NOT_EXIST(state, payload) {\n state.ldapUserNotExist = payload;\n },\n LOGGED_OUT_USER() {\n // state.loggedInUser = payload.loggedInUser;\n // state.msalSsoEnabled = payload.msalSsoEnabled;\n // state.samlSsoEnabled = payload.samlSsoEnabled;\n store.commit('setIsLoggedIn', false);\n store.commit('setMsalSsoEnabled', false);\n store.commit('setSamlSsoEnabled', false);\n store.commit('setLdapEnabled', false);\n // sessionStorage.setItem('vuex', '');\n // sessionStorage.removeItem('vuex');\n sessionStorage.clear();\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar domClasses = require('min-dom').classes,\n domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar assign = require('min-dash').assign,\n find = require('min-dash').find,\n forEach = require('min-dash').forEach,\n debounce = require('min-dash').debounce;\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\nvar CLASS_ACTIVE = 'active';\n\nvar FOCUS_LEAVE_DELAY = '150';\n\nvar TEXT_NODE_NAME = '#text';\n\nvar SUGGESTION_LIST_BOX_THRESHOLD = 15;\n\nvar noop = function() {};\n\n\nvar autoSuggestTextBox = function(translate, options, defaultParameters) {\n\n var resource = defaultParameters,\n label = options.label || resource.id,\n canBeShown = !!options.show && typeof options.show === 'function',\n description = options.description;\n\n resource.html =\n domify('' +\n '
' +\n '
' +\n '
' +\n '
');\n\n if (description) {\n domQuery('.bpp-field-wrapper', resource.html).appendChild(entryFieldDescription(translate, description));\n }\n\n if (canBeShown) {\n resource.isShown = function() {\n return options.show.apply(resource, arguments);\n };\n }\n\n /**\n * Ensure selected item got recognized before list got hidden\n */\n resource.handleFocusLeave = debounce(function(element, entryNode) {\n clearSuggestionList(entryNode);\n hideSuggestionList(entryNode);\n }, FOCUS_LEAVE_DELAY);\n\n /**\n * Fill the suggestion list relative to the current word under the cursor.\n *\n * @param {djs.model.Base} element\n * @param {HTMLElement} entryNode\n * @param {Event} event\n */\n resource.suggestItems = function(element, entryNode, event) {\n var editorNode = event.delegateTarget,\n range = getSelectionRange(),\n focusNode = range.focusNode,\n caretPosition = getCaretPosition(range.range),\n canSuggest = options.canSuggest || noop,\n getItems = options.getItems;\n\n function updateSuggestionList(items) {\n var listNode = domQuery('.bpp-autosuggest-list', entryNode);\n\n // (1) clear list before\n clearSuggestionList(entryNode);\n\n // (2) keep list invisible if no items\n if (!items.length) {\n return;\n }\n\n domClasses(listNode).add(CLASS_ACTIVE);\n\n // (3) create new items\n forEach(items, function(item) {\n createSuggestionItem(listNode, item);\n });\n\n // (4) place list relative to cursor\n var position = getSuggestionListPosition(listNode, document.body).position;\n setPosition(listNode, position.x, position.y);\n }\n\n function createSuggestionItem(parentNode, value) {\n var itemNode = domify('
');\n itemNode.innerText = escapeHTML(value);\n\n parentNode.appendChild(itemNode);\n\n itemNode.addEventListener('click', handleItemClick);\n }\n\n function handleItemClick(event) {\n var value = event.target.innerText,\n wordIndex = currentWord.index,\n start = wordIndex,\n end = wordIndex + currentWord[0].length;\n\n selectRange(focusNode, start, end);\n\n document.execCommand('insertText', false, value);\n\n clearSuggestionList(entryNode);\n hideSuggestionList(entryNode);\n }\n\n hideSuggestionList(entryNode);\n\n var currentWord = (getWordUnderCursor(focusNode, caretPosition) || []);\n\n if (currentWord && canSuggest(currentWord, editorNode, focusNode)) {\n var items = getItems(element, entryNode),\n results = [],\n value = currentWord[0];\n\n // sort matches by\n // (1) item starts with value (case insensitive)\n // (2) value is inside suggested item (case insensitive)\n forEach(items, function(item) {\n var itemLowerCase = item.toLowerCase(),\n valueLowerCase = value && value.toLowerCase();\n\n if (itemLowerCase.indexOf(valueLowerCase) === 0) {\n results.push(item);\n }\n });\n\n forEach(items, function(item) {\n var itemLowerCase = item.toLowerCase(item),\n valueLowerCase = value && value.toLowerCase();\n\n if (itemLowerCase.indexOf(valueLowerCase) >= 1) {\n results.push(item);\n }\n });\n\n updateSuggestionList(results);\n }\n };\n\n /**\n * Calculates the position coordinates of the suggestion list,\n * dependant on position of cursor\n *\n * @return {Object} coordinates\n */\n function getSuggestionListPosition(listNode, container) {\n var range = getSelectionRange().range,\n cursorBounds = range.getBoundingClientRect(),\n clientBounds = container.getBoundingClientRect(),\n listBounds = listNode.getBoundingClientRect();\n\n var coordinates = {\n 'top-left': {\n x: cursorBounds.right - listBounds.width,\n y: cursorBounds.top - listBounds.height\n },\n 'top-right': {\n x: cursorBounds.right,\n y: cursorBounds.top - listBounds.height\n },\n 'bottom-left': {\n x: cursorBounds.right - listBounds.width,\n y: cursorBounds.top + SUGGESTION_LIST_BOX_THRESHOLD\n },\n 'bottom-right': {\n x: cursorBounds.right,\n y: cursorBounds.top + SUGGESTION_LIST_BOX_THRESHOLD\n }\n };\n\n var orientation = '';\n\n if (cursorBounds.top + SUGGESTION_LIST_BOX_THRESHOLD + listBounds.height > (clientBounds.height + clientBounds.top)) {\n orientation = 'top-';\n } else {\n orientation = 'bottom-';\n }\n\n if (cursorBounds.right + listBounds.width > (clientBounds.width + clientBounds.left)) {\n orientation += 'left';\n } else {\n orientation += 'right';\n }\n\n return { orientation: orientation, position: coordinates[orientation] };\n }\n\n resource.getSuggestionListPosition = getSuggestionListPosition;\n\n\n resource.cssClasses = ['bpp-autosuggest-textbox'];\n\n return resource;\n};\n\nmodule.exports = autoSuggestTextBox;\n\n\n// helpers /////////////////////////////\n\nfunction getSelectionRange() {\n var selection = document.getSelection();\n\n return {\n range: selection.getRangeAt(0),\n focusNode: selection.focusNode\n };\n}\n\nfunction getCaretPosition(range) {\n return range.startOffset;\n}\n\nfunction selectRange(focusNode, start, end) {\n var range = document.createRange(),\n selection = window.getSelection();\n\n range.setStart(focusNode, start);\n range.setEnd(focusNode, end);\n\n selection.removeAllRanges();\n\n selection.addRange(range);\n}\n\nfunction hideSuggestionList(entryNode) {\n var listNode = domQuery('.bpp-autosuggest-list', entryNode);\n domClasses(listNode).remove(CLASS_ACTIVE);\n}\n\nfunction clearSuggestionList(entryNode) {\n var listNode = domQuery('.bpp-autosuggest-list', entryNode);\n while (listNode.firstChild) {\n listNode.removeChild(listNode.firstChild);\n }\n}\n\nfunction getWordUnderCursor(node, currentCursorPositon) {\n var value = node.nodeName === TEXT_NODE_NAME ? node.wholeText : node.innerText,\n allWords = findWords(value);\n\n return find(allWords, function(word) {\n var matchValue = word[0],\n wordStart = word.index,\n wordEnd = wordStart + matchValue.length - 1;\n\n return (\n wordStart <= (currentCursorPositon - 1) &&\n wordEnd >= (currentCursorPositon - 1)\n );\n });\n}\n\n/**\n * Retrieves all words inside a text (also inside clauses and after operators)\n *\n * @param {string} value\n *\n * @return {Array}\n */\nfunction findWords(value) {\n\n // eslint-disable-next-line no-useless-escape\n return matchAll(value, /[^\\s\\r\\(\\)\\,\\+\\-\\*\\/\\{\\}]+/g);\n}\n\nfunction matchAll(value, regex) {\n var regexp = RegExp(regex),\n match,\n matches = [];\n\n while ((match = regexp.exec(value)) !== null) {\n matches.push(match);\n }\n\n return matches;\n}\n\nfunction setPosition(el, x, y) {\n assign(el.style, { left: x + 'px', top: y + 'px' });\n}\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n isAny = require('../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n eventDefinitionHelper = require('../../../helper/EventDefinitionHelper');\n\nvar forEach = require('lodash/forEach');\n\nvar message = require('./implementation/MessageEventDefinition'),\n signal = require('./implementation/SignalEventDefinition'),\n error = require('./implementation/ErrorEventDefinition'),\n escalation = require('./implementation/EscalationEventDefinition'),\n timer = require('./implementation/TimerEventDefinition'),\n compensation = require('./implementation/CompensateEventDefinition'),\n condition = require('./implementation/ConditionalEventDefinition');\n\n\nmodule.exports = function(group, element, bpmnFactory, elementRegistry, translate) {\n var events = [\n 'bpmn:StartEvent',\n 'bpmn:EndEvent',\n 'bpmn:IntermediateThrowEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:IntermediateCatchEvent'\n ];\n\n // Message and Signal Event Definition\n forEach(events, function(event) {\n if (is(element, event)) {\n\n var messageEventDefinition = eventDefinitionHelper.getMessageEventDefinition(element),\n signalEventDefinition = eventDefinitionHelper.getSignalEventDefinition(element);\n\n if (messageEventDefinition) {\n message(group, element, bpmnFactory, messageEventDefinition, translate);\n }\n\n if (signalEventDefinition) {\n signal(group, element, bpmnFactory, signalEventDefinition, translate);\n }\n\n }\n });\n\n // Special Case: Receive Task\n if (is(element, 'bpmn:ReceiveTask')) {\n message(group, element, bpmnFactory, getBusinessObject(element), translate);\n }\n\n // Error Event Definition\n var errorEvents = [\n 'bpmn:StartEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:EndEvent'\n ];\n\n forEach(errorEvents, function(event) {\n if (is(element, event)) {\n\n var errorEventDefinition = eventDefinitionHelper.getErrorEventDefinition(element);\n\n if (errorEventDefinition) {\n\n error(group, element, bpmnFactory, errorEventDefinition, translate);\n }\n }\n });\n\n // Escalation Event Definition\n var escalationEvents = [\n 'bpmn:StartEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:IntermediateThrowEvent',\n 'bpmn:EndEvent'\n ];\n\n forEach(escalationEvents, function(event) {\n if (is(element, event)) {\n\n var showEscalationCodeVariable = is(element, 'bpmn:StartEvent') || is(element, 'bpmn:BoundaryEvent');\n\n // get business object\n var escalationEventDefinition = eventDefinitionHelper.getEscalationEventDefinition(element);\n\n if (escalationEventDefinition) {\n escalation(group, element, bpmnFactory, escalationEventDefinition, showEscalationCodeVariable,\n translate);\n }\n }\n\n });\n\n // Timer Event Definition\n var timerEvents = [\n 'bpmn:StartEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:IntermediateCatchEvent'\n ];\n\n forEach(timerEvents, function(event) {\n if (is(element, event)) {\n\n // get business object\n var timerEventDefinition = eventDefinitionHelper.getTimerEventDefinition(element);\n\n if (timerEventDefinition) {\n timer(group, element, bpmnFactory, timerEventDefinition, translate);\n }\n }\n });\n\n // Compensate Event Definition\n var compensationEvents = [\n 'bpmn:EndEvent',\n 'bpmn:IntermediateThrowEvent'\n ];\n\n forEach(compensationEvents, function(event) {\n if (is(element, event)) {\n\n // get business object\n var compensateEventDefinition = eventDefinitionHelper.getCompensateEventDefinition(element);\n\n if (compensateEventDefinition) {\n compensation(group, element, bpmnFactory, compensateEventDefinition, elementRegistry, translate);\n }\n }\n });\n\n\n // Conditional Event Definition\n var conditionalEvents = [\n 'bpmn:StartEvent',\n 'bpmn:BoundaryEvent',\n 'bpmn:IntermediateThrowEvent',\n 'bpmn:IntermediateCatchEvent'\n ];\n\n if (isAny(element, conditionalEvents)) {\n\n // get business object\n var conditionalEventDefinition = eventDefinitionHelper.getConditionalEventDefinition(element);\n\n if (conditionalEventDefinition) {\n condition(group, element, bpmnFactory, conditionalEventDefinition, elementRegistry, translate);\n }\n }\n\n};\n","'use strict';\n\nvar ChangeElementTemplateHandler = require('./ChangeElementTemplateHandler');\n\nfunction registerHandlers(commandStack, elementTemplates, eventBus) {\n commandStack.registerHandler(\n 'propertiesPanel.harlequin.changeTemplate',\n ChangeElementTemplateHandler\n );\n\n // apply default element templates on shape creation\n eventBus.on([ 'commandStack.shape.create.postExecuted' ], function(context) {\n applyDefaultTemplate(context.context.shape, elementTemplates, commandStack);\n });\n\n // apply default element templates on connection creation\n eventBus.on([ 'commandStack.connection.create.postExecuted' ], function(context) {\n applyDefaultTemplate(context.context.connection, elementTemplates, commandStack);\n });\n}\n\nregisterHandlers.$inject = [ 'commandStack', 'elementTemplates', 'eventBus' ];\n\n\nmodule.exports = {\n __init__: [ registerHandlers ]\n};\n\n\nfunction applyDefaultTemplate(element, elementTemplates, commandStack) {\n\n if (!elementTemplates.get(element) && elementTemplates.getDefault(element)) {\n\n var command = 'propertiesPanel.harlequin.changeTemplate';\n var commandContext = {\n element: element,\n newTemplate: elementTemplates.getDefault(element)\n };\n\n commandStack.execute(command, commandContext);\n }\n}\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar historyTimeToLive = require('./implementation/HistoryTimeToLive');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n var businessObject = getBusinessObject(element);\n\n if (is(element, 'harlequin:Process') ||\n is(element, 'bpmn:Participant') && businessObject.get('processRef')) {\n\n group.entries = group.entries.concat(historyTimeToLive(element, bpmnFactory, {\n getBusinessObject: function(element) {\n var bo = getBusinessObject(element);\n\n if (!is(bo, 'bpmn:Participant')) {\n return bo;\n }\n\n return bo.get('processRef');\n }\n }, translate));\n\n }\n};\n","'use strict';\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper');\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var historyTimeToLiveEntry = entryFactory.textField(translate, {\n id: 'historyTimeToLive',\n label: translate('History Time To Live'),\n modelProperty: 'historyTimeToLive',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n var historyTimeToLive = bo.get('harlequin:historyTimeToLive');\n\n return {\n historyTimeToLive: historyTimeToLive ? historyTimeToLive : ''\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, {\n 'harlequin:historyTimeToLive': values.historyTimeToLive || undefined\n });\n }\n\n });\n\n return [ historyTimeToLiveEntry ];\n};\n","'use strict';\n\nvar assign = require('lodash/assign');\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar asyncCapableHelper = require('../../../../helper/AsyncCapableHelper'),\n eventDefinitionHelper = require('../../../../helper/EventDefinitionHelper'),\n cmdHelper = require('../../../../helper/CmdHelper');\n\nfunction isAsyncBefore(bo) {\n return asyncCapableHelper.isAsyncBefore(bo);\n}\n\nfunction isAsyncAfter(bo) {\n return asyncCapableHelper.isAsyncAfter(bo);\n}\n\nfunction isExclusive(bo) {\n return asyncCapableHelper.isExclusive(bo);\n}\n\nfunction removeFailedJobRetryTimeCycle(bo, element) {\n return asyncCapableHelper.removeFailedJobRetryTimeCycle(bo, element);\n}\n\nfunction canRemoveFailedJobRetryTimeCycle(element) {\n return !eventDefinitionHelper.getTimerEventDefinition(element);\n}\n\nmodule.exports = function(element, bpmnFactory, options, translate) {\n\n var getBusinessObject = options.getBusinessObject;\n\n var idPrefix = options.idPrefix || '',\n labelPrefix = options.labelPrefix || '';\n\n\n var asyncBeforeEntry = entryFactory.checkbox(translate, {\n id: idPrefix + 'asyncBefore',\n label: labelPrefix + translate('Asynchronous Before'),\n modelProperty: 'asyncBefore',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return {\n asyncBefore: isAsyncBefore(bo)\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n var asyncBefore = !!values.asyncBefore;\n\n var props = {\n 'harlequin:asyncBefore': asyncBefore,\n 'harlequin:async': false\n };\n\n var commands = [];\n if (!isAsyncAfter(bo) && !asyncBefore) {\n props = assign({ 'harlequin:exclusive' : true }, props);\n if (canRemoveFailedJobRetryTimeCycle(element)) {\n commands.push(removeFailedJobRetryTimeCycle(bo, element));\n }\n }\n\n commands.push(cmdHelper.updateBusinessObject(element, bo, props));\n return commands;\n }\n });\n\n\n var asyncAfterEntry = entryFactory.checkbox(translate, {\n id: idPrefix + 'asyncAfter',\n label: labelPrefix + translate('Asynchronous After'),\n modelProperty: 'asyncAfter',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return {\n asyncAfter: isAsyncAfter(bo)\n };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n var asyncAfter = !!values.asyncAfter;\n\n var props = {\n 'harlequin:asyncAfter': asyncAfter\n };\n\n var commands = [];\n if (!isAsyncBefore(bo) && !asyncAfter) {\n props = assign({ 'harlequin:exclusive' : true }, props);\n if (canRemoveFailedJobRetryTimeCycle(element)) {\n commands.push(removeFailedJobRetryTimeCycle(bo, element));\n }\n }\n\n commands.push(cmdHelper.updateBusinessObject(element, bo, props));\n return commands;\n }\n });\n\n\n var exclusiveEntry = entryFactory.checkbox(translate, {\n id: idPrefix + 'exclusive',\n label: labelPrefix + translate('Exclusive'),\n modelProperty: 'exclusive',\n\n get: function(element, node) {\n var bo = getBusinessObject(element);\n return { exclusive: isExclusive(bo) };\n },\n\n set: function(element, values) {\n var bo = getBusinessObject(element);\n return cmdHelper.updateBusinessObject(element, bo, { 'harlequin:exclusive': !!values.exclusive });\n },\n\n hidden: function(element) {\n var bo = getBusinessObject(element);\n return bo && !isAsyncAfter(bo) && !isAsyncBefore(bo);\n }\n });\n\n return [ asyncBeforeEntry, asyncAfterEntry, exclusiveEntry ];\n};\n","'use strict';\n\nvar is = require('../../../../../../process-builder/lib/base/BaseServices').is,\n getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar isAny = require('../../../../../../process-builder/lib/components/modelElements/services/ModelingService').isAny;\n\nvar getVariablesForScope = require('../services/extractProcessVariables').getVariablesForScope;\n\nvar filter = require('min-dash').filter,\n map = require('min-dash').map,\n sortBy = require('min-dash').sortBy;\n\nvar elementHelper = require('../../../../helper/ElementHelper'),\n cmdHelper = require('../../../../helper/CmdHelper'),\n utils = require('../../../../Utils');\n\nvar entryFactory = require('../../../../factory/EntryFactory'),\n scriptImplementation = require('./Script');\n\nvar domQuery = require('min-dom').query;\n\nmodule.exports = function(parameter, bpmnFactory, options, translate) {\n\n var typeInfo = {\n 'harlequin:Map': {\n value: 'map',\n label: translate('Map')\n },\n 'harlequin:List': {\n value: 'list',\n label: translate('List')\n },\n 'harlequin:Script': {\n value: 'script',\n label: translate('Script')\n }\n };\n\n options = options || {};\n\n var idPrefix = options.idPrefix || '';\n\n var getParameter =\n (options.getParameter && typeof options.getParameter === 'function') ?\n function() {\n return options.getParameter();\n } :\n function() {\n return parameter;\n };\n\n var result = {},\n entries = [];\n\n result.entries = entries;\n\n // heading ////////////////////////////////////////////////////////\n var collapsible = entryFactory.collapsible({\n id: idPrefix + 'collapsible',\n title: parameter.name,\n description: getDescription(parameter),\n cssClasses: [ 'bpp-collapsible--with-mapping' ],\n open: false,\n onRemove: options.onRemove,\n onToggle: options.onToggle,\n get: function() {\n return {\n title: getParameter().name,\n description: getDescription(getParameter())\n };\n }\n });\n\n var isOpen = options.isOpen || collapsible.isOpen;\n\n result.setOpen = function(value, parentElement) {\n var entryNode = domQuery('[data-entry=\"' + collapsible.id + '\"]', parentElement);\n collapsible.setOpen(value, entryNode);\n };\n\n entries.push(collapsible);\n\n // parameter name ////////////////////////////////////////////////////////\n entries.push(entryFactory.validationAwareTextField(translate, {\n id: idPrefix + 'parameterName',\n label: is(parameter, 'harlequin:InputParameter') ?\n translate('Local Variable Name') : translate('Process Variable Name'),\n modelProperty: 'name',\n\n getProperty: function(element, node) {\n return parameter.name;\n },\n\n setProperty: function(element, values, node) {\n return cmdHelper.updateBusinessObject(element, parameter, values);\n },\n\n validate: function(element, values, node) {\n var validation = {};\n var nameValue = values.name;\n\n if (nameValue) {\n if (utils.containsSpace(nameValue)) {\n validation.name = translate('Name must not contain spaces');\n }\n } else {\n validation.name = translate('Parameter must have a name');\n }\n\n return validation;\n },\n\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n\n // parameter type //////////////////////////////////////////////////////\n\n var selectOptions = [\n { value: 'text', name: translate('String or Expression') },\n { value: 'script', name: translate('Script') },\n { value: 'list', name: translate('List') },\n { value: 'map', name: translate('Map') }\n ];\n\n entries.push(entryFactory.selectBox(translate, {\n id : idPrefix + 'parameterType',\n label: translate('Variable Assignment Type'),\n selectOptions: selectOptions,\n modelProperty: 'parameterType',\n\n get: function(element, node) {\n var parameterType = 'text';\n\n var definition = getParameter().get('definition');\n if (typeof definition !== 'undefined') {\n var type = definition.$type;\n parameterType = typeInfo[type].value;\n }\n\n return {\n parameterType: parameterType\n };\n },\n\n set: function(element, values, node) {\n var properties = {\n value: undefined,\n definition: undefined\n };\n\n var createParameterTypeElem = function(type) {\n return createElement(type, getParameter(), bpmnFactory);\n };\n\n var parameterType = values.parameterType;\n\n if (parameterType === 'script') {\n properties.definition = createParameterTypeElem('harlequin:Script');\n }\n else if (parameterType === 'list') {\n properties.definition = createParameterTypeElem('harlequin:List');\n }\n else if (parameterType === 'map') {\n properties.definition = createParameterTypeElem('harlequin:Map');\n }\n\n return cmdHelper.updateBusinessObject(element, getParameter(), properties);\n },\n\n hidden: function(element, node) {\n return !isOpen();\n }\n\n }));\n\n\n // parameter value (type = text) ///////////////////////////////////////////////////////\n\n entries.push(entryFactory.autoSuggest(translate, {\n id : idPrefix + 'parameterType-text',\n label : translate('Variable Assignment Value'),\n description: translate('Start typing \"${}\" to create an expression.'),\n modelProperty: 'value',\n get: function(element, node) {\n return {\n value: getParameter().value\n };\n },\n\n set: function(element, values, node) {\n values.value = values.value || undefined;\n return cmdHelper.updateBusinessObject(element, getParameter(), values);\n },\n\n show: function(element, node) {\n return isOpen() && !getParameter().definition;\n },\n\n getItems: function(element) {\n var scope = getScope(element),\n rootElement = getRootElement(element);\n\n // (1) get all available variables for the current scope\n var variables = getVariablesForScope(scope, rootElement);\n\n // (2) ignore all variables which are (only) written in the current element\n variables = filter(variables, function(variable) {\n var origin = variable.origin,\n withOutCurrent = filter(origin, function(o) {\n return o.id !== element.id;\n });\n\n return !!withOutCurrent.length;\n });\n\n // (3) sort by name\n var sorted = sortByName(variables);\n\n // (4) retrieve names as suggestion items\n return map(sorted, function(variable) {\n return variable.name;\n });\n },\n\n canSuggest: function(word, editorNode, focusNode) {\n var globalIndex = findWordInContentEditable(word, editorNode, focusNode);\n\n if (isInsideExpression(editorNode.innerText, globalIndex)) {\n return true;\n }\n\n if (isInsideUnclosedExpression(editorNode.innerText, globalIndex)) {\n return true;\n }\n\n return false;\n }\n\n }));\n\n\n // parameter value (type = script) ///////////////////////////////////////////////////////\n var script = scriptImplementation('scriptFormat', 'value', true, translate, { idPrefix: idPrefix });\n entries.push({\n id: idPrefix + 'parameterType-script',\n html: '
' +\n script.template +\n '
',\n get: function(element, node) {\n return isScript(getParameter().definition) ? script.get(element, getParameter().definition) : {};\n },\n\n set: function(element, values, node) {\n var update = script.set(element, values);\n return cmdHelper.updateBusinessObject(element, getParameter().definition, update);\n },\n\n validate: function(element, values, node) {\n return isScript(getParameter().definition) ? script.validate(element, getParameter().definition) : {};\n },\n\n script: script,\n show: function(element, node) {\n return isOpen() && getParameter().definition && isScript(getParameter().definition);\n }\n });\n\n\n // parameter value (type = list) ///////////////////////////////////////////////////////\n\n entries.push(entryFactory.table(translate, {\n id: idPrefix + 'parameterType-list',\n modelProperties: [ 'value' ],\n labels: [ translate('Value') ],\n addLabel: translate('Add Value'),\n\n getElements: function(element, node) {\n\n if (isList(getParameter().definition)) {\n return getParameter().definition.items;\n }\n\n return [];\n },\n\n updateElement: function(element, values, node, idx) {\n var item = getParameter().definition.items[idx];\n return cmdHelper.updateBusinessObject(element, item, values);\n },\n\n addElement: function(element, node) {\n var newValue = createElement('harlequin:Value', getParameter().definition, bpmnFactory, { value: undefined });\n return cmdHelper.addElementsTolist(element, getParameter().definition, 'items', [ newValue ]);\n },\n\n removeElement: function(element, node, idx) {\n return cmdHelper.removeElementsFromList(element, getParameter().definition, 'items', null, [ getParameter().definition.items[idx] ]);\n },\n\n editable: function(element, node, prop, idx) {\n var item = getParameter().definition.items[idx];\n return !isMap(item) && !isList(item) && !isScript(item);\n },\n\n setControlValue: function(element, node, input, prop, value, idx) {\n var item = getParameter().definition.items[idx];\n\n if (!isMap(item) && !isList(item) && !isScript(item)) {\n input.value = value;\n } else {\n input.value = typeInfo[item.$type].label;\n }\n },\n\n show: function(element, node) {\n return isOpen() && getParameter().definition && isList(getParameter().definition);\n }\n\n }));\n\n\n // parameter value (type = map) ///////////////////////////////////////////////////////\n\n entries.push(entryFactory.table(translate, {\n id: idPrefix + 'parameterType-map',\n modelProperties: [ 'key', 'value' ],\n labels: [ translate('Key'), translate('Value') ],\n addLabel: translate('Add Entry'),\n\n getElements: function(element, node) {\n\n if (getParameter() && isMap(getParameter().definition)) {\n return getParameter().definition.entries;\n }\n\n return [];\n },\n\n updateElement: function(element, values, node, idx) {\n var entry = getParameter().definition.entries[idx];\n\n if (isMap(entry.definition) || isList(entry.definition) || isScript(entry.definition)) {\n values = {\n key: values.key\n };\n }\n\n return cmdHelper.updateBusinessObject(element, entry, values);\n },\n\n addElement: function(element, node) {\n var newEntry = createElement('harlequin:Entry', getParameter().definition, bpmnFactory, { key: undefined, value: undefined });\n return cmdHelper.addElementsTolist(element, getParameter().definition, 'entries', [ newEntry ]);\n },\n\n removeElement: function(element, node, idx) {\n return cmdHelper.removeElementsFromList(element, getParameter().definition, 'entries', null, [ getParameter().definition.entries[idx] ]);\n },\n\n editable: function(element, node, prop, idx) {\n var entry = getParameter().definition.entries[idx];\n return prop === 'key' || (!isMap(entry.definition) && !isList(entry.definition) && !isScript(entry.definition));\n },\n\n setControlValue: function(element, node, input, prop, value, idx) {\n var entry = getParameter().definition.entries[idx];\n\n if (prop === 'key' || (!isMap(entry.definition) && !isList(entry.definition) && !isScript(entry.definition))) {\n input.value = value;\n } else {\n input.value = typeInfo[entry.definition.$type].label;\n }\n },\n\n show: function(element, node) {\n return isOpen() && getParameter().definition && isMap(getParameter().definition);\n }\n\n }));\n\n return result;\n};\n\n\n\n// helper /////////////////////\n\nfunction createElement(type, parent, factory, properties) {\n return elementHelper.createElement(type, properties, parent, factory);\n}\n\nfunction isScript(elem) {\n return is(elem, 'harlequin:Script');\n}\n\nfunction isList(elem) {\n return is(elem, 'harlequin:List');\n}\n\nfunction isMap(elem) {\n return is(elem, 'harlequin:Map');\n}\n\nfunction sortByName(variables) {\n return sortBy(variables, function(variable) {\n return variable.name;\n });\n}\n\nfunction getScope(element) {\n var businessObject = getBusinessObject(element);\n\n if (isAny(businessObject, [ 'bpmn:Process', 'bpmn:SubProcess' ])) {\n return businessObject.id;\n }\n\n // look for processes or sub process in parents\n var parent = businessObject;\n\n while (parent.$parent && !isAny(parent, [ 'bpmn:Process', 'bpmn:SubProcess' ])) {\n parent = parent.$parent;\n }\n\n return parent.id;\n}\n\nfunction getRootElement(element) {\n var businessObject = getBusinessObject(element),\n parent = businessObject;\n\n while (parent.$parent && !is(parent, 'bpmn:Process')) {\n parent = parent.$parent;\n }\n\n return parent;\n}\n\nfunction isInsideExpression(value, index) {\n var openIndex = value.indexOf('${'),\n closeIndex = value.indexOf('}');\n\n return (\n openIndex > -1 && openIndex <= index &&\n closeIndex > -1 && index < closeIndex\n );\n}\n\nfunction isInsideUnclosedExpression(value, index) {\n var closeIndex = value.lastIndexOf('}', index),\n openIndex = value.indexOf('${', closeIndex + 1);\n\n return (\n openIndex > -1 && openIndex <= index\n );\n}\n\nfunction findWordInContentEditable(word, editorNode, focusNode) {\n\n // retrieve value before focusNode (row)\n var children = editorNode.childNodes,\n textBefore = '';\n\n for (var i = 0; i <= children.length - 1; i++) {\n var child = children[i];\n\n if (child.contains(focusNode)) {\n break;\n }\n\n textBefore += (child.innerText || child.wholeText) + '\\n';\n }\n\n return textBefore.length + (word.index || 0);\n}\n\nfunction getDescription(parameter) {\n var definition = parameter.get('definition');\n\n if (!definition) {\n return parameter.value;\n }\n\n if (isScript(definition)) {\n return definition.value;\n } else if (isList(definition)) {\n return 'List';\n } else if (isMap(definition)) {\n return 'Map';\n }\n}\n","'use strict';\n\nvar listener = require('./implementation/Listener');\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var listenerEntry = listener(element, bpmnFactory, {}, translate);\n\n group.entries = group.entries.concat(listenerEntry.entries);\n\n return {\n getSelectedListener: listenerEntry.getSelectedListener\n };\n\n};\n","'use strict';\n\nvar errors = require('./implementation/Errors');\n\nmodule.exports = function(group, element, bpmnFactory, elementTemplates, translate) {\n\n var template = elementTemplates.get(element);\n\n if (template) {\n return;\n }\n\n var errorsEntry = errors(element, bpmnFactory, {}, translate);\n\n group.entries = group.entries.concat(errorsEntry.entries);\n};\n","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is;\n\n/**\n * This function catches the event\n * and only allows the copy of the modelerTemplate property\n * if the element's type or its parent's is in\n * the list of elements the template applies to.\n */\nfunction ReplaceBehavior(elementTemplates, eventBus) {\n eventBus.on('moddleCopy.canCopyProperty', function(context) {\n var parent = context.parent;\n var property = context.property;\n var propertyName = context.propertyName;\n\n if (propertyName !== 'modelerTemplate') {\n return;\n }\n\n var elementTemplate = elementTemplates.get(property);\n\n if (!elementTemplate) {\n return false;\n }\n\n var appliesTo = elementTemplate.appliesTo;\n\n var allowed = appliesTo.reduce(function(allowed, type) {\n return allowed || is(parent, type);\n }, false);\n\n if (!allowed) {\n return false;\n }\n });\n}\n\nReplaceBehavior.$inject = ['elementTemplates', 'eventBus'];\n\nmodule.exports = ReplaceBehavior;","'use strict';\n\nvar map = require('lodash/map');\n\nvar extensionElementsHelper = require('./ExtensionElementsHelper');\n\n/**\n * Returns true if the attribute 'harlequin:asyncBefore' is set\n * to true.\n *\n * @param {ModdleElement} bo\n *\n * @return {boolean} a boolean value\n */\nfunction isAsyncBefore(bo) {\n return !!(bo.get('harlequin:asyncBefore') || bo.get('harlequin:async'));\n}\n\nmodule.exports.isAsyncBefore = isAsyncBefore;\n\n/**\n * Returns true if the attribute 'harlequin:asyncAfter' is set\n * to true.\n *\n * @param {ModdleElement} bo\n *\n * @return {boolean} a boolean value\n */\nfunction isAsyncAfter(bo) {\n return !!bo.get('harlequin:asyncAfter');\n}\n\nmodule.exports.isAsyncAfter = isAsyncAfter;\n\n/**\n * Returns true if the attribute 'harlequin:exclusive' is set\n * to true.\n *\n * @param {ModdleElement} bo\n *\n * @return {boolean} a boolean value\n */\nfunction isExclusive(bo) {\n return !!bo.get('harlequin:exclusive');\n}\n\nmodule.exports.isExclusive = isExclusive;\n\n/**\n * Get first 'harlequin:FailedJobRetryTimeCycle' from the business object.\n *\n * @param {ModdleElement} bo\n *\n * @return {Array} a list of 'harlequin:FailedJobRetryTimeCycle'\n */\nfunction getFailedJobRetryTimeCycle(bo) {\n return extensionElementsHelper.getExtensionElements(bo, 'harlequin:FailedJobRetryTimeCycle')[0];\n}\n\nmodule.exports.getFailedJobRetryTimeCycle = getFailedJobRetryTimeCycle;\n\n/**\n * Removes all existing 'harlequin:FailedJobRetryTimeCycle' from the business object\n *\n * @param {ModdleElement} bo\n *\n * @return {Array} a list of 'harlequin:FailedJobRetryTimeCycle'\n */\nfunction removeFailedJobRetryTimeCycle(bo, element) {\n var retryTimeCycles = extensionElementsHelper.getExtensionElements(bo, 'harlequin:FailedJobRetryTimeCycle');\n return map(retryTimeCycles, function(cycle) {\n return extensionElementsHelper.removeEntry(bo, element, cycle);\n });\n}\n\nmodule.exports.removeFailedJobRetryTimeCycle = removeFailedJobRetryTimeCycle;","'use strict';\n\nvar is = require('../../../../../process-builder/lib/base/BaseServices').is,\n entryFactory = require('../../../factory/EntryFactory');\n\n\nmodule.exports = function(group, element, translate) {\n if (is(element, 'harlequin:Assignable')) {\n\n // Assignee\n group.entries.push(entryFactory.textField(translate, {\n id : 'assignee',\n label : translate('Assignee'),\n modelProperty : 'assignee'\n }));\n\n // Candidate Users\n group.entries.push(entryFactory.textField(translate, {\n id : 'candidateUsers',\n label : translate('Candidate Users'),\n modelProperty : 'candidateUsers'\n }));\n\n // Candidate Groups\n group.entries.push(entryFactory.textField(translate, {\n id : 'candidateGroups',\n label : translate('Candidate Groups'),\n modelProperty : 'candidateGroups'\n }));\n\n // Due Date\n group.entries.push(entryFactory.textField(translate, {\n id : 'dueDate',\n description : translate('The due date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)'),\n label : translate('Due Date'),\n modelProperty : 'dueDate'\n }));\n\n // FollowUp Date\n group.entries.push(entryFactory.textField(translate, {\n id : 'followUpDate',\n description : translate('The follow up date as an EL expression (e.g. ${someDate} or an ' +\n 'ISO date (e.g. 2015-06-26T09:54:00)'),\n label : translate('Follow Up Date'),\n modelProperty : 'followUpDate'\n }));\n\n // priority\n group.entries.push(entryFactory.textField(translate, {\n id : 'priority',\n label : translate('Priority'),\n modelProperty : 'priority'\n }));\n }\n};\n","import {\n some\n} from 'min-dash';\n\nimport { is } from '../../../base/BaseServices';\n\n\n/**\n * Return true if element has any of the given types.\n *\n * @param {djs.model.Base} element\n * @param {Array} types\n *\n * @return {boolean}\n */\nexport function isAny(element, types) {\n return some(types, t => is(element, t));\n}\n\n\n/**\n * Return the parent of the element with any of the given types.\n *\n * @param {djs.model.Base} element\n * @param {string|Array} anyType\n *\n * @return {djs.model.Base}\n */\nexport function getParent(element, anyType) {\n if (typeof anyType === 'string') {\n anyType = [anyType];\n }\n\n while ((element = element.parent)) {\n if (isAny(element, anyType)) {\n return element;\n }\n }\n\n return null;\n}\n","'use strict';\n\nvar createDropdown = require('./Utils').createDropdown,\n escapeHTML = require('./Utils').escapeHTML;\n\nvar domify = require('min-dom').domify,\n domQuery = require('min-dom').query,\n domQueryAll = require('min-dom').queryAll,\n domRemove = require('min-dom').remove,\n domClasses = require('min-dom').classes,\n domClosest = require('min-dom').closest,\n domAttr = require('min-dom').attr,\n domDelegate = require('min-dom').delegate,\n domMatches = require('min-dom').matches;\n\nvar forEach = require('lodash/forEach'),\n filter = require('lodash/filter'),\n get = require('lodash/get'),\n keys = require('lodash/keys'),\n isEmpty = require('lodash/isEmpty'),\n isArray = require('lodash/isArray'),\n isFunction = require('lodash/isFunction'),\n isObject = require('lodash/isObject'),\n xor = require('lodash/xor'),\n debounce = require('lodash/debounce'),\n flattenDeep = require('lodash/flattenDeep'),\n keyBy = require('lodash/keyBy'),\n map = require('lodash/map'),\n reduce = require('lodash/reduce');\n\nvar updateSelection = require('selection-update');\n\nvar scrollTabs = require('scroll-tabs').default;\n\nvar getBusinessObject = require('../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar HIDE_CLASS = 'bpp-hidden';\nvar DEBOUNCE_DELAY = 300;\n\nvar DEFAULT_PRIORITY = 1000;\n\nfunction isToggle(node) {\n return node.type === 'checkbox' || node.type === 'radio';\n}\n\nfunction isSelect(node) {\n return node.type === 'select-one';\n}\n\nfunction isContentEditable(node) {\n return domAttr(node, 'contenteditable');\n}\n\nfunction getPropertyPlaceholders(node) {\n var selector = 'input[name], textarea[name], [data-value], [contenteditable]';\n var placeholders = domQueryAll(selector, node);\n if ((!placeholders || !placeholders.length) && domMatches(node, selector)) {\n placeholders = [ node ];\n }\n return placeholders;\n}\n\n/**\n * Return all active form controls.\n * This excludes the invisible controls unless all is true\n *\n * @param {Element} node\n * @param {Boolean} [all=false]\n */\nfunction getFormControls(node, all) {\n var controls = domQueryAll('input[name], textarea[name], select[name], [contenteditable]', node);\n\n if (!controls || !controls.length) {\n controls = domMatches(node, 'option') ? [ node ] : controls;\n }\n\n if (!all) {\n controls = filter(controls, function(node) {\n return !domClosest(node, '.' + HIDE_CLASS);\n });\n }\n\n return controls;\n}\n\nfunction getFormControlValuesInScope(entryNode) {\n var values = {};\n\n var controlNodes = getFormControls(entryNode);\n\n forEach(controlNodes, function(controlNode) {\n var value = controlNode.value;\n\n var name = domAttr(controlNode, 'name') || domAttr(controlNode, 'data-name');\n\n // take toggle state into account for radio / checkboxes\n if (isToggle(controlNode)) {\n if (controlNode.checked) {\n if (!domAttr(controlNode, 'value')) {\n value = true;\n } else {\n value = controlNode.value;\n }\n } else {\n value = null;\n }\n } else\n if (isContentEditable(controlNode)) {\n value = controlNode.innerText;\n }\n\n if (value !== null) {\n\n // return the actual value\n // handle serialization in entry provider\n // (ie. if empty string should be serialized or not)\n values[name] = value;\n }\n });\n\n return values;\n\n}\n\n/**\n * Extract input values from entry node\n *\n * @param {DOMElement} entryNode\n * @returns {Object}\n */\nfunction getFormControlValues(entryNode) {\n\n var values;\n\n var listContainer = domQuery('[data-list-entry-container]', entryNode);\n if (listContainer) {\n values = [];\n var listNodes = listContainer.children || [];\n forEach(listNodes, function(listNode) {\n values.push(getFormControlValuesInScope(listNode));\n });\n } else {\n values = getFormControlValuesInScope(entryNode);\n }\n\n return values;\n}\n\n/**\n * Return true if the given form extracted value equals\n * to an old cached version.\n *\n * @param {Object} value\n * @param {Object} oldValue\n * @return {Boolean}\n */\nfunction valueEqual(value, oldValue) {\n\n if (value && !oldValue) {\n return false;\n }\n\n var allKeys = keys(value).concat(keys(oldValue));\n\n return allKeys.every(function(key) {\n return value[key] === oldValue[key];\n });\n}\n\n/**\n * Return true if the given form extracted value(s)\n * equal an old cached version.\n *\n * @param {Array|Object} values\n * @param {Array|Object} oldValues\n * @return {Boolean}\n */\nfunction valuesEqual(values, oldValues) {\n\n if (isArray(values)) {\n\n if (values.length !== oldValues.length) {\n return false;\n }\n\n return values.every(function(v, idx) {\n return valueEqual(v, oldValues[idx]);\n });\n }\n\n return valueEqual(values, oldValues);\n}\n\n/**\n * Return a mapping of { id: entry } for all entries in the given groups in the given tabs.\n *\n * @param {Object} tabs\n * @return {Object}\n */\nfunction extractEntries(tabs) {\n return keyBy(flattenDeep(map(flattenDeep(map(tabs, 'groups')), 'entries')), 'id');\n}\n\n/**\n * Return a mapping of { id: group } for all groups in the given tabs.\n *\n * @param {Object} tabs\n * @return {Object}\n */\nfunction extractGroups(tabs) {\n return keyBy(flattenDeep(map(tabs, 'groups')), 'id');\n}\n\n/**\n * A properties panel implementation.\n *\n * To use it provide a `propertiesProvider` component that knows\n * about which properties to display.\n *\n * Properties edit state / visibility can be intercepted\n * via a custom {@link PropertiesActivator}.\n *\n * @class\n * @constructor\n *\n * @param {Object} config\n * @param {didi.Injector} injector\n * @param {EventBus} eventBus\n * @param {Modeling} modeling\n * @param {Canvas} canvas\n * @param {CommandStack} commandStack\n */\nfunction PropertiesPanel(config, injector, eventBus, modeling, commandStack, canvas) {\n\n this._eventBus = eventBus;\n this._modeling = modeling;\n this._commandStack = commandStack;\n this._canvas = canvas;\n\n var propertiesProvider = injector.get('propertiesProvider', false);\n\n if (propertiesProvider) {\n this.registerProvider(propertiesProvider);\n }\n\n this._init(config);\n}\n\nPropertiesPanel.$inject = [\n 'config.propertiesPanel',\n 'injector',\n 'eventBus',\n 'modeling',\n 'commandStack',\n 'canvas'\n];\n\nmodule.exports = PropertiesPanel;\n\n/**\n * @param {number} [priority]\n * @param { { getTabs: any[] | (any) => (any[]) => any[]) } } provider\n */\nPropertiesPanel.prototype.registerProvider = function(priority, provider) {\n\n if (!provider) {\n provider = priority;\n priority = DEFAULT_PRIORITY;\n }\n\n this._eventBus.on('propertiesPanel.getProviders', priority, function(event) {\n event.providers.push(provider);\n });\n\n this._eventBus.fire('propertiesPanel.providersChanged');\n};\n\nPropertiesPanel.prototype._init = function(config) {\n\n var canvas = this._canvas,\n eventBus = this._eventBus;\n\n var self = this;\n\n /**\n * Select the root element once it is added to the canvas\n */\n eventBus.on('root.added', function(e) {\n var element = e.element;\n\n if (isImplicitRoot(element)) {\n return;\n }\n\n self.update(element);\n });\n\n eventBus.on('selection.changed', function(e) {\n var newElement = e.newSelection[0];\n\n var rootElement = canvas.getRootElement();\n\n if (isImplicitRoot(rootElement)) {\n return;\n }\n\n self.update(newElement);\n });\n\n // add / update tab-bar scrolling\n eventBus.on([\n 'propertiesPanel.changed',\n 'propertiesPanel.resized'\n ], function(event) {\n\n var tabBarNode = domQuery('.bpp-properties-tab-bar', self._container);\n\n if (!tabBarNode) {\n return;\n }\n\n var scroller = scrollTabs.get(tabBarNode);\n\n if (!scroller) {\n\n // we did not initialize yet, do that\n // now and make sure we select the active\n // tab on scroll update\n scroller = scrollTabs(tabBarNode, {\n selectors: {\n tabsContainer: '.bpp-properties-tabs-links',\n tab: '.bpp-properties-tabs-links li',\n ignore: '.bpp-hidden',\n active: '.bpp-active'\n }\n });\n\n\n scroller.on('scroll', function(newActiveNode, oldActiveNode, direction) {\n\n var linkNode = domQuery('[data-tab-target]', newActiveNode);\n\n var tabId = domAttr(linkNode, 'data-tab-target');\n\n self.activateTab(tabId);\n });\n }\n\n // react on tab changes and or tabContainer resize\n // and make sure the active tab is shown completely\n scroller.update();\n });\n\n eventBus.on('elements.changed', function(e) {\n\n var current = self._current;\n var element = current && current.element;\n\n if (element) {\n if (e.elements.indexOf(element) !== -1) {\n self.update(element);\n }\n }\n });\n\n eventBus.on([\n 'elementTemplates.changed',\n 'propertiesPanel.providersChanged'\n ], function() {\n var current = self._current;\n var element = current && current.element;\n\n if (element) {\n self.update(element);\n }\n });\n\n eventBus.on('diagram.destroy', function() {\n self.detach();\n });\n\n this._container = domify('
');\n\n this._bindListeners(this._container);\n\n if (config && config.parent) {\n this.attachTo(config.parent);\n }\n};\n\n\nPropertiesPanel.prototype.attachTo = function(parentNode) {\n\n if (!parentNode) {\n throw new Error('parentNode required');\n }\n\n // ensure we detach from the\n // previous, old parent\n this.detach();\n\n // unwrap jQuery if provided\n if (parentNode.get && parentNode.constructor.prototype.jquery) {\n parentNode = parentNode.get(0);\n }\n\n if (typeof parentNode === 'string') {\n parentNode = domQuery(parentNode);\n }\n\n var container = this._container;\n\n parentNode.appendChild(container);\n\n this._emit('attach');\n};\n\nPropertiesPanel.prototype.detach = function() {\n\n var container = this._container,\n parentNode = container.parentNode;\n\n if (!parentNode) {\n return;\n }\n\n this._emit('detach');\n\n parentNode.removeChild(container);\n};\n\n\n/**\n * Activate tab. Fall back to first visible tab.\n *\n * @param {Object|string} tabId\n */\nPropertiesPanel.prototype.activateTab = function(tabId) {\n if (isObject(tabId)) {\n tabId = tabId.id;\n }\n\n var tabs = domQueryAll('.bpp-properties-tab', this._current.panel),\n tabLinks = domQueryAll('.bpp-properties-tab-link', this._current.panel);\n\n // (1) Deactivate all tabs\n forEach(tabs, function(tab) {\n domClasses(tab).remove('bpp-active');\n });\n\n forEach(tabLinks, function(tabLink) {\n domClasses(tabLink).remove('bpp-active');\n });\n\n // (2) Activate tab, fall back to first visible tab\n var visibleTabs = filter(tabs, function(tab) {\n return !domClasses(tab).has(HIDE_CLASS);\n });\n\n var activeTab = reduce(visibleTabs, function(activeTab, tab) {\n if (domAttr(tab, 'data-tab') === tabId) {\n return tab;\n }\n\n return activeTab;\n }, visibleTabs[ 0 ]);\n\n if (activeTab) {\n domClasses(activeTab).add('bpp-active');\n }\n\n var visibleTabLinks = filter(tabLinks, function(tabLink) {\n return !domClasses(tabLink).has(HIDE_CLASS);\n });\n\n var activeTabLink = reduce(visibleTabLinks, function(activeTabLink, tabLink) {\n if (domAttr(domQuery('a[data-tab-target]', tabLink), 'data-tab-target') === tabId) {\n return tabLink;\n }\n\n return activeTabLink;\n }, visibleTabLinks[ 0 ]);\n\n if (activeTabLink) {\n domClasses(activeTabLink).add('bpp-active');\n }\n};\n\nPropertiesPanel.prototype._getProviders = function() {\n\n var event = this._eventBus.createEvent({\n type: 'propertiesPanel.getProviders',\n providers: []\n });\n\n this._eventBus.fire(event);\n\n return event.providers;\n};\n\nPropertiesPanel.prototype._getTabs = function(element) {\n var providers = this._getProviders();\n\n // loop through all providers and their entries.\n // group entries by id so that overriding an entry is possible\n return reduce(providers, function(tabs, provider) {\n var tabsOrUpdater = provider.getTabs(element);\n\n if (isFunction(tabsOrUpdater)) {\n return tabsOrUpdater(tabs);\n } else {\n return tabsOrUpdater;\n }\n }, []);\n};\n\n/**\n * Update properties panel to show properties of element. Create new properties panel if no previous\n * properties panel, element has changed or element has not changed but entries have.\n *\n * @param {ModdleElement|undefined} element\n */\nPropertiesPanel.prototype.update = function(element) {\n\n // (1) Fall back to root element\n if (!element) {\n element = this._canvas.getRootElement();\n }\n\n // (2) Get tabs\n var tabs = this._getTabs(element);\n\n var activeTabId,\n activeTabNode;\n\n if (this._current) {\n activeTabNode = domQuery('.bpp-properties-tab.bpp-active', this._current.panel);\n\n if (activeTabNode) {\n activeTabId = domAttr(activeTabNode, 'data-tab');\n }\n }\n\n // (3) Create new properties panel if necessary\n if (!this._current\n || this._current.element !== element\n || this._entriesChanged(this._current.entries, extractEntries(tabs))) {\n\n if (this._current) {\n domRemove(this._current.panel);\n }\n\n this._current = this._create(element, tabs);\n }\n\n // (4) Update visibility of tabs, groups and entries\n this._updateActivation(this._current);\n\n // (5) Update active tab\n if (activeTabId) {\n this.activateTab(activeTabId);\n } else {\n this.activateTab(this._current.tabs[ 0 ]);\n }\n\n this._emit('changed');\n};\n\n\n/**\n * Check whether entries have changes.\n *\n * @param {Array} prevEntries\n * @param {Array} entries\n *\n * @returns {Boolean}\n */\nPropertiesPanel.prototype._entriesChanged = function(prevEntries, entries) {\n var prevEntryIds = keys(prevEntries),\n entryIds = keys(entries);\n\n return !isEmpty(xor(prevEntryIds, entryIds));\n};\n\nPropertiesPanel.prototype._emit = function(event) {\n this._eventBus.fire('propertiesPanel.' + event, { panel: this, current: this._current });\n};\n\nPropertiesPanel.prototype._bindListeners = function(container) {\n\n var self = this;\n\n // handles a change for a given event\n var handleChange = function handleChange(event) {\n\n // see if we handle a change inside a [data-entry] element.\n // if not, drop out\n var inputNode = event.delegateTarget,\n entryNode = domClosest(inputNode, '[data-entry]'),\n entryId, entry;\n\n // change from outside a [data-entry] element, simply ignore\n if (!entryNode) {\n return;\n }\n\n entryId = domAttr(entryNode, 'data-entry');\n entry = self.getEntry(entryId);\n\n var values = getFormControlValues(entryNode);\n\n if (event.type === 'change') {\n\n // - if the \"data-on-change\" attribute is present and a value is changed,\n // then the associated action is performed.\n // - if the associated action returns \"true\" then an update to the business\n // object is done\n // - if it does not return \"true\", then only the DOM content is updated\n var onChangeAction = domAttr(inputNode, 'data-on-change');\n\n if (onChangeAction) {\n var isEntryDirty = self.executeAction(entry, entryNode, onChangeAction, event);\n\n if (!isEntryDirty) {\n return self.update(self._current.element);\n }\n }\n }\n self.applyChanges(entry, values, entryNode);\n self.updateState(entry, entryNode);\n };\n\n // debounce update only elements that are target of key events,\n // i.e. INPUT and TEXTAREA. SELECTs will trigger an immediate update anyway.\n domDelegate.bind(container, 'input, textarea, [contenteditable]', 'input', debounce(handleChange, DEBOUNCE_DELAY));\n domDelegate.bind(container, 'input, textarea, select, [contenteditable]', 'change', handleChange);\n\n // paste as plain text only\n domDelegate.bind(container, '[contenteditable]', 'paste', handlePaste);\n\n function handlePaste(event) {\n var text = (event.clipboardData || window.clipboardData).getData('text');\n document.execCommand('insertText', false, text);\n\n event.preventDefault();\n }\n\n // handle key events\n domDelegate.bind(container, 'select', 'keydown', function(e) {\n\n // DEL\n if (e.keyCode === 46) {\n e.stopPropagation();\n e.preventDefault();\n }\n });\n\n function handleSuggestItems(event) {\n\n // triggers on all inputs\n var inputNode = event.delegateTarget;\n\n var entryNode = domClosest(inputNode, '[data-entry]');\n\n // only work on data entries\n if (!entryNode) {\n return;\n }\n\n var action = domAttr(inputNode, 'data-auto-suggest'),\n entryId = domAttr(entryNode, 'data-entry');\n\n var entry = self.getEntry(entryId);\n\n self.executeAction(entry, entryNode, action, event);\n }\n\n domDelegate.bind(container, '[data-auto-suggest]', 'input', handleSuggestItems, true);\n\n domDelegate.bind(container, '[data-action]', 'click', function onClick(event) {\n\n // triggers on all inputs\n var inputNode = event.delegateTarget,\n entryNode = domClosest(inputNode, '[data-entry]');\n\n var actionId = domAttr(inputNode, 'data-action'),\n entryId = domAttr(entryNode, 'data-entry');\n\n var entry = self.getEntry(entryId);\n\n var isEntryDirty = self.executeAction(entry, entryNode, actionId, event);\n\n if (!isEntryDirty) {\n return self.update(self._current.element);\n }\n\n var values = getFormControlValues(entryNode);\n\n self.applyChanges(entry, values, entryNode);\n self.updateState(entry, entryNode);\n });\n\n function handleInput(event, element) {\n\n // triggers on all inputs\n var inputNode = event.delegateTarget;\n\n var entryNode = domClosest(inputNode, '[data-entry]');\n\n // only work on data entries\n if (!entryNode) {\n return;\n }\n\n var eventHandlerId = domAttr(inputNode, 'data-blur'),\n entryId = domAttr(entryNode, 'data-entry');\n\n var entry = self.getEntry(entryId);\n\n var isEntryDirty = self.executeAction(entry, entryNode, eventHandlerId, event);\n\n if (isEntryDirty) {\n var values = getFormControlValues(entryNode);\n\n self.applyChanges(entry, values, entryNode);\n }\n\n self.updateState(entry, entryNode);\n }\n\n domDelegate.bind(container, '[data-blur]', 'blur', handleInput, true);\n\n // make tab links interactive\n domDelegate.bind(container, '.bpp-properties-tabs-links [data-tab-target]', 'click', function(event) {\n event.preventDefault();\n\n var delegateTarget = event.delegateTarget;\n\n var tabId = domAttr(delegateTarget, 'data-tab-target');\n\n // activate tab on link click\n self.activateTab(tabId);\n });\n\n};\n\nPropertiesPanel.prototype.updateState = function(entry, entryNode) {\n this.updateShow(entry, entryNode);\n this.updateDisable(entry, entryNode);\n};\n\n/**\n * Update the visibility of the entry node in the DOM\n */\nPropertiesPanel.prototype.updateShow = function(entry, node) {\n\n var current = this._current;\n\n if (!current) {\n return;\n }\n\n var showNodes = domQueryAll('[data-show]', node) || [];\n\n forEach(showNodes, function(showNode) {\n\n var expr = domAttr(showNode, 'data-show');\n var fn = get(entry, expr);\n if (fn) {\n var scope = domClosest(showNode, '[data-scope]') || node;\n var shouldShow = fn(current.element, node, showNode, scope) || false;\n if (shouldShow) {\n domClasses(showNode).remove(HIDE_CLASS);\n } else {\n domClasses(showNode).add(HIDE_CLASS);\n }\n }\n });\n};\n\n/**\n * Evaluates a given function. If it returns true, then the\n * node is marked as \"disabled\".\n */\nPropertiesPanel.prototype.updateDisable = function(entry, node) {\n var current = this._current;\n\n if (!current) {\n return;\n }\n\n var nodes = domQueryAll('[data-disable]', node) || [];\n\n forEach(nodes, function(currentNode) {\n var expr = domAttr(currentNode, 'data-disable');\n var fn = get(entry, expr);\n if (fn) {\n var scope = domClosest(currentNode, '[data-scope]') || node;\n var shouldDisable = fn(current.element, node, currentNode, scope) || false;\n domAttr(currentNode, 'disabled', shouldDisable ? '' : null);\n }\n });\n};\n\nPropertiesPanel.prototype.executeAction = function(entry, entryNode, actionId, event) {\n var current = this._current;\n\n if (!current) {\n return;\n }\n\n var fn = get(entry, actionId);\n if (fn) {\n var scopeNode = domClosest(event.target, '[data-scope]') || entryNode;\n return fn.apply(entry, [ current.element, entryNode, event, scopeNode ]);\n }\n};\n\n/**\n * Apply changes to the business object by executing a command\n */\nPropertiesPanel.prototype.applyChanges = function(entry, values, containerElement) {\n\n var element = this._current.element;\n\n // ensure we only update the model if we got dirty changes\n if (valuesEqual(values, entry.oldValues)) {\n return;\n }\n\n var command = entry.set(element, values, containerElement);\n\n var commandToExecute;\n\n if (isArray(command)) {\n if (command.length) {\n commandToExecute = {\n cmd: 'properties-panel.multi-command-executor',\n context: flattenDeep(command)\n };\n }\n } else {\n commandToExecute = command;\n }\n\n if (commandToExecute) {\n this._commandStack.execute(commandToExecute.cmd, commandToExecute.context || { element : element });\n } else {\n this.update(element);\n }\n};\n\n\n/**\n * apply validation errors in the DOM and show or remove an error message near the entry node.\n */\nPropertiesPanel.prototype.applyValidationErrors = function(validationErrors, entryNode) {\n\n var valid = true;\n\n var controlNodes = getFormControls(entryNode, true);\n\n forEach(controlNodes, function(controlNode) {\n\n var name = domAttr(controlNode, 'name') || domAttr(controlNode, 'data-name');\n\n var error = validationErrors && validationErrors[name];\n\n var errorMessageNode = domQuery('.bpp-error-message', controlNode.parentNode);\n\n if (error) {\n valid = false;\n\n if (!errorMessageNode) {\n errorMessageNode = domify('
');\n\n domClasses(errorMessageNode).add('bpp-error-message');\n\n // insert errorMessageNode after controlNode\n controlNode.parentNode.insertBefore(errorMessageNode, controlNode.nextSibling);\n }\n\n errorMessageNode.textContent = error;\n\n domClasses(controlNode).add('invalid');\n } else {\n domClasses(controlNode).remove('invalid');\n\n if (errorMessageNode) {\n controlNode.parentNode.removeChild(errorMessageNode);\n }\n }\n });\n\n return valid;\n};\n\n\n/**\n * Check if the entry contains valid input\n */\nPropertiesPanel.prototype.validate = function(entry, values, entryNode) {\n var self = this;\n\n var current = this._current;\n\n var valid = true;\n\n entryNode = entryNode || domQuery('[data-entry=\"' + entry.id + '\"]', current.panel);\n\n if (values instanceof Array) {\n var listContainer = domQuery('[data-list-entry-container]', entryNode),\n listEntryNodes = listContainer.children || [];\n\n // create new elements\n for (var i = 0; i < values.length; i++) {\n var listValue = values[i];\n\n if (entry.validateListItem) {\n\n var validationErrors = entry.validateListItem(current.element, listValue, entryNode, i),\n listEntryNode = listEntryNodes[i];\n\n valid = self.applyValidationErrors(validationErrors, listEntryNode) && valid;\n }\n }\n } else {\n if (entry.validate) {\n this.validationErrors = entry.validate(current.element, values, entryNode);\n\n valid = self.applyValidationErrors(this.validationErrors, entryNode) && valid;\n }\n }\n\n return valid;\n};\n\nPropertiesPanel.prototype.getEntry = function(id) {\n return this._current && this._current.entries[id];\n};\n\nPropertiesPanel.prototype._create = function(element, tabs) {\n\n if (!element) {\n return null;\n }\n\n var containerNode = this._container;\n\n var panelNode = this._createPanel(element, tabs);\n\n containerNode.appendChild(panelNode);\n\n var entries = extractEntries(tabs);\n var groups = extractGroups(tabs);\n\n return {\n tabs: tabs,\n groups: groups,\n entries: entries,\n element: element,\n panel: panelNode\n };\n};\n\n/**\n * Update variable parts of the entry node on element changes.\n *\n * @param {djs.model.Base} element\n * @param {EntryDescriptor} entry\n * @param {Object} values\n * @param {HTMLElement} entryNode\n * @param {Number} idx\n */\nPropertiesPanel.prototype._bindTemplate = function(element, entry, values, entryNode, idx) {\n\n var eventBus = this._eventBus;\n\n function isPropertyEditable(entry, propertyName) {\n return eventBus.fire('propertiesPanel.isPropertyEditable', {\n entry: entry,\n propertyName: propertyName,\n element: element\n });\n }\n\n var inputNodes = getPropertyPlaceholders(entryNode);\n\n forEach(inputNodes, function(node) {\n\n var name,\n newValue,\n editable;\n\n // we deal with an input element\n if ('value' in node || isContentEditable(node) === 'true') {\n name = domAttr(node, 'name') || domAttr(node, 'data-name');\n newValue = values[name];\n\n editable = isPropertyEditable(entry, name);\n if (editable && entry.editable) {\n editable = entry.editable(element, entryNode, node, name, newValue, idx);\n }\n\n domAttr(node, 'readonly', editable ? null : '');\n domAttr(node, 'disabled', editable ? null : '');\n\n // take full control over setting the value\n // and possibly updating the input in entry#setControlValue\n if (entry.setControlValue) {\n entry.setControlValue(element, entryNode, node, name, newValue, idx);\n } else if (isToggle(node)) {\n setToggleValue(node, newValue);\n } else if (isSelect(node)) {\n setSelectValue(node, newValue);\n } else {\n setInputValue(node, newValue);\n }\n }\n\n // we deal with some non-editable html element\n else {\n name = domAttr(node, 'data-value');\n newValue = values[name];\n if (entry.setControlValue) {\n entry.setControlValue(element, entryNode, node, name, newValue, idx);\n } else {\n setTextValue(node, newValue);\n }\n }\n });\n};\n\nPropertiesPanel.prototype._updateActivation = function(current) {\n var self = this;\n\n var eventBus = this._eventBus;\n\n var element = current.element;\n\n function isEntryVisible(entry, group, tab) {\n return eventBus.fire('propertiesPanel.isEntryVisible', {\n element: element,\n entry: entry,\n group: group,\n tab: tab\n });\n }\n\n function isGroupVisible(group, element, groupNode) {\n if (isFunction(group.enabled)) {\n return group.enabled(element, groupNode);\n } else {\n return true;\n }\n }\n\n function isTabVisible(tab, element) {\n if (isFunction(tab.enabled)) {\n return tab.enabled(element);\n } else {\n return true;\n }\n }\n\n function toggleVisible(node, visible) {\n domClasses(node).toggle(HIDE_CLASS, !visible);\n }\n\n function updateLabel(element, selector, text) {\n var labelNode = domQuery(selector, element);\n\n if (!labelNode) {\n return;\n }\n\n labelNode.textContent = text;\n }\n\n var panelNode = current.panel;\n\n forEach(current.tabs, function(tab) {\n\n var tabNode = domQuery('[data-tab=' + tab.id + ']', panelNode);\n var tabLinkNode = domQuery('[data-tab-target=' + tab.id + ']', panelNode).parentNode;\n\n var tabVisible = false;\n\n forEach(tab.groups, function(group) {\n\n var groupVisible = false;\n\n var groupNode = domQuery('[data-group=' + group.id + ']', tabNode);\n\n forEach(group.entries, function(entry) {\n\n var entryNode = domQuery('[data-entry=\"' + entry.id + '\"]', groupNode);\n\n var entryVisible = isEntryVisible(entry, group, tab);\n\n groupVisible = groupVisible || entryVisible;\n\n toggleVisible(entryNode, entryVisible);\n\n var values = 'get' in entry ? entry.get(element, entryNode) : {};\n\n if (values instanceof Array) {\n var listEntryContainer = domQuery('[data-list-entry-container]', entryNode);\n var existingElements = listEntryContainer.children || [];\n\n for (var i = 0; i < values.length; i++) {\n var listValue = values[i];\n var listItemNode = existingElements[i];\n if (!listItemNode) {\n listItemNode = domify(entry.createListEntryTemplate(listValue, i, listEntryContainer));\n listEntryContainer.appendChild(listItemNode);\n }\n domAttr(listItemNode, 'data-index', i);\n\n self._bindTemplate(element, entry, listValue, listItemNode, i);\n }\n\n var entriesToRemove = existingElements.length - values.length;\n\n for (var j = 0; j < entriesToRemove; j++) {\n\n // remove orphaned element\n listEntryContainer.removeChild(listEntryContainer.lastChild);\n }\n\n } else {\n self._bindTemplate(element, entry, values, entryNode);\n }\n\n // update conditionally visible elements\n self.updateState(entry, entryNode);\n self.validate(entry, values, entryNode);\n\n // remember initial state for later dirty checking\n entry.oldValues = getFormControlValues(entryNode);\n });\n\n if (typeof group.label === 'function') {\n updateLabel(groupNode, '.group-label', group.label(element, groupNode));\n }\n\n groupVisible = groupVisible && isGroupVisible(group, element, groupNode);\n\n tabVisible = tabVisible || groupVisible;\n\n toggleVisible(groupNode, groupVisible);\n });\n\n tabVisible = tabVisible && isTabVisible(tab, element);\n\n toggleVisible(tabNode, tabVisible);\n toggleVisible(tabLinkNode, tabVisible);\n });\n\n // inject elements id into header\n updateLabel(panelNode, '[data-label-id]', getBusinessObject(element).id || '');\n};\n\nPropertiesPanel.prototype._createPanel = function(element, tabs) {\n var self = this;\n\n var panelNode = domify('
'),\n headerNode = domify('
' +\n '
' +\n '
'),\n tabBarNode = domify('
'),\n tabLinksNode = domify('
    '),\n tabContainerNode = domify('
    ');\n\n panelNode.appendChild(headerNode);\n\n forEach(tabs, function(tab, tabIndex) {\n\n if (!tab.id) {\n throw new Error('tab must have an id');\n }\n\n var tabNode = domify('
    '),\n tabLinkNode = domify('
  • ' +\n '' + escapeHTML(tab.label) + '' +\n '
  • ');\n\n var groups = tab.groups;\n\n forEach(groups, function(group) {\n\n if (!group.id) {\n throw new Error('group must have an id');\n }\n\n var groupNode = domify('
    ' +\n '' +\n '
    ' +\n '' + escapeHTML(group.label) + '' +\n '
    ' +\n '
    ');\n\n if (group.dropdown) {\n domQuery('.group-header', groupNode).appendChild(createDropdown(group.dropdown));\n }\n\n groupNode.querySelector('.group-toggle').addEventListener('click', function(evt) {\n domClasses(groupNode).toggle('group-closed');\n evt.preventDefault();\n evt.stopPropagation();\n });\n groupNode.addEventListener('click', function(evt) {\n if (!evt.defaultPrevented && domClasses(groupNode).has('group-closed')) {\n domClasses(groupNode).remove('group-closed');\n }\n });\n\n forEach(group.entries, function(entry) {\n\n if (!entry.id) {\n throw new Error('entry must have an id');\n }\n\n var html = entry.html;\n\n if (typeof html === 'string') {\n html = domify(html);\n }\n\n // unwrap jquery\n if (html.get && html.constructor.prototype.jquery) {\n html = html.get(0);\n }\n\n var entryNode = domify('
    ');\n\n forEach(entry.cssClasses || [], function(cssClass) {\n domClasses(entryNode).add(cssClass);\n });\n\n entryNode.appendChild(html);\n\n groupNode.appendChild(entryNode);\n\n // update conditionally visible elements\n self.updateState(entry, entryNode);\n });\n\n tabNode.appendChild(groupNode);\n });\n\n tabLinksNode.appendChild(tabLinkNode);\n tabContainerNode.appendChild(tabNode);\n });\n\n tabBarNode.appendChild(tabLinksNode);\n\n panelNode.appendChild(tabBarNode);\n panelNode.appendChild(tabContainerNode);\n\n return panelNode;\n};\n\n\n\nfunction setInputValue(node, value) {\n\n var contentEditable = isContentEditable(node);\n\n var oldValue = contentEditable ? node.innerText : node.value;\n\n var selection;\n\n // prevents input fields from having the value 'undefined'\n if (value === undefined) {\n value = '';\n }\n\n if (oldValue === value) {\n return;\n }\n\n // update selection on undo/redo\n if (document.activeElement === node) {\n selection = updateSelection(getSelection(node), oldValue, value);\n }\n\n if (contentEditable) {\n node.innerText = value;\n } else {\n node.value = value;\n }\n\n if (selection) {\n setSelection(node, selection);\n }\n}\n\nfunction setSelectValue(node, value) {\n if (value !== undefined) {\n node.value = value;\n }\n}\n\nfunction setToggleValue(node, value) {\n var nodeValue = node.value;\n\n node.checked = (value === nodeValue) || (!domAttr(node, 'value') && value);\n}\n\nfunction setTextValue(node, value) {\n node.textContent = value;\n}\n\nfunction getSelection(node) {\n\n return isContentEditable(node) ? getContentEditableSelection(node) : {\n start: node.selectionStart,\n end: node.selectionEnd\n };\n}\n\nfunction getContentEditableSelection(node) {\n\n var selection = window.getSelection();\n\n var focusNode = selection.focusNode,\n focusOffset = selection.focusOffset,\n anchorOffset = selection.anchorOffset;\n\n if (!focusNode) {\n throw new Error('not selected');\n }\n\n // verify we have selection on the current element\n if (!node.contains(focusNode)) {\n throw new Error('not selected');\n }\n\n return {\n start: Math.min(focusOffset, anchorOffset),\n end: Math.max(focusOffset, anchorOffset)\n };\n}\n\nfunction setSelection(node, selection) {\n\n if (isContentEditable(node)) {\n setContentEditableSelection(node, selection);\n } else {\n node.selectionStart = selection.start;\n node.selectionEnd = selection.end;\n }\n}\n\nfunction setContentEditableSelection(node, selection) {\n\n var focusNode,\n domRange,\n domSelection;\n\n focusNode = node.firstChild || node,\n domRange = document.createRange();\n domRange.setStart(focusNode, selection.start);\n domRange.setEnd(focusNode, selection.end);\n\n domSelection = window.getSelection();\n domSelection.removeAllRanges();\n domSelection.addRange(domRange);\n}\n\nfunction isImplicitRoot(element) {\n return element.id === '__implicitroot';\n}","'use strict';\n\nvar eventDefinitionReference = require('./EventDefinitionReference'),\n elementReferenceProperty = require('./ElementReferenceProperty');\n\n\nmodule.exports = function(group, element, bpmnFactory, errorEventDefinition, translate) {\n\n\n group.entries = group.entries.concat(eventDefinitionReference(element, errorEventDefinition, bpmnFactory, {\n label: translate('Global Error referenced'),\n elementName: 'error',\n elementType: 'bpmn:Error',\n referenceProperty: 'errorRef',\n newElementIdPrefix: 'Error_'\n }));\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, errorEventDefinition, bpmnFactory, translate, {\n id: 'error-element-name',\n label: translate('Name'),\n referenceProperty: 'errorRef',\n modelProperty: 'name',\n shouldValidate: true\n })\n );\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, errorEventDefinition, bpmnFactory, translate, {\n id: 'error-element-code',\n label: translate('Code'),\n referenceProperty: 'errorRef',\n modelProperty: 'errorCode'\n })\n );\n\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./teamtasks.vue?vue&type=style&index=0&lang=css&\"","'use strict';\n\nvar domQuery = require('min-dom').query,\n escapeHTML = require('../../../../Utils').escapeHTML,\n utils = require('../../../../Utils');\n\n\nfunction getScriptType(node, idPrefix) {\n\n // if we have an idPrefix, work with specific selector\n var selector;\n\n if (idPrefix && idPrefix != '') {\n selector = 'select[id=\"' + idPrefix + 'har-script-type\"]';\n } else {\n selector = 'select[name=\"scriptType\"]';\n }\n\n return utils.selectedType(selector, node.parentElement);\n}\n\n\nmodule.exports = function(scriptLanguagePropName, scriptValuePropName, isFormatRequired, translate, options) {\n var idPrefix = options && options.idPrefix || '';\n\n return {\n template:\n '
    ' +\n '' +\n '
    ' +\n '' +\n '' +\n '
    ' +\n '
    ' +\n\n '
    ' +\n '' +\n '
    ' +\n '' +\n '
    ' +\n '
    ' +\n\n '
    ' +\n '' +\n '
    ' +\n '' +\n '' +\n '
    ' +\n '
    ' +\n\n '
    ' +\n '' +\n '
    ' +\n '' +\n '
    '+\n '
    ',\n\n get: function(element, bo) {\n var values = {};\n\n // read values from xml:\n var boScriptResource = bo.get('harlequin:resource'),\n boScript = bo.get(scriptValuePropName),\n boScriptFormat = bo.get(scriptLanguagePropName);\n\n if (typeof boScriptResource !== 'undefined') {\n values.scriptResourceValue = boScriptResource;\n values.scriptType = 'scriptResource';\n } else {\n values.scriptValue = boScript;\n values.scriptType = 'script';\n }\n\n values.scriptFormat = boScriptFormat;\n\n return values;\n },\n\n set: function(element, values, containerElement) {\n var scriptFormat = values.scriptFormat,\n scriptType = values.scriptType,\n scriptResourceValue = values.scriptResourceValue,\n scriptValue = values.scriptValue;\n\n // init update\n var update = {\n 'harlequin:resource': undefined\n };\n update[scriptValuePropName] = undefined;\n update[scriptLanguagePropName] = undefined;\n\n if (isFormatRequired) {\n\n // always set language\n update[scriptLanguagePropName] = scriptFormat || '';\n } else\n\n // set language only when scriptFormat has a value\n if (scriptFormat !== '') {\n update[scriptLanguagePropName] = scriptFormat;\n }\n\n // set either inline script or resource\n if ('scriptResource' === scriptType) {\n update['harlequin:resource'] = scriptResourceValue || '';\n } else {\n update[scriptValuePropName] = scriptValue || '';\n }\n\n return update;\n },\n\n validate: function(element, values) {\n var validationResult = {};\n\n if (values.scriptType === 'script' && !values.scriptValue) {\n validationResult.scriptValue = translate('Must provide a value');\n }\n\n if (values.scriptType === 'scriptResource' && !values.scriptResourceValue) {\n validationResult.scriptResourceValue = translate('Must provide a value');\n }\n\n if (isFormatRequired && (!values.scriptFormat || values.scriptFormat.length === 0)) {\n validationResult.scriptFormat = translate('Must provide a value');\n }\n\n return validationResult;\n },\n\n clearScriptFormat: function(element, inputNode, btnNode, scopeNode) {\n domQuery('input[name=scriptFormat]', scopeNode).value='';\n\n return true;\n },\n\n canClearScriptFormat: function(element, inputNode, btnNode, scopeNode) {\n var input = domQuery('input[name=scriptFormat]', scopeNode);\n\n return input.value !== '';\n },\n\n clearScriptResource: function(element, inputNode, btnNode, scopeNode) {\n domQuery('input[name=scriptResourceValue]', scopeNode).value='';\n\n return true;\n },\n\n canClearScriptResource: function(element, inputNode, btnNode, scopeNode) {\n var input = domQuery('input[name=scriptResourceValue]', scopeNode);\n\n return input.value !== '';\n },\n\n clearScript: function(element, inputNode, btnNode, scopeNode) {\n domQuery('textarea[name=scriptValue]', scopeNode).value='';\n\n return true;\n },\n\n canClearScript: function(element, inputNode, btnNode, scopeNode) {\n var input = domQuery('textarea[name=scriptValue]', scopeNode);\n\n return input.value !== '';\n },\n\n isScriptResource: function(element, inputNode, btnNode, scopeNode) {\n var scriptType = getScriptType(scopeNode, idPrefix);\n return scriptType === 'scriptResource';\n },\n\n isScript: function(element, inputNode, btnNode, scopeNode) {\n var scriptType = getScriptType(scopeNode, idPrefix);\n return scriptType === 'script';\n }\n\n };\n\n};\n","'use strict';\n\nvar eventDefinitionReference = require('./EventDefinitionReference'),\n elementReferenceProperty = require('./ElementReferenceProperty');\n\n\nmodule.exports = function(group, element, bpmnFactory, messageEventDefinition, translate) {\n\n group.entries = group.entries.concat(eventDefinitionReference(element, messageEventDefinition, bpmnFactory, {\n label: translate('Global Message referenced'),\n elementName: 'message',\n elementType: 'bpmn:Message',\n referenceProperty: 'messageRef',\n newElementIdPrefix: 'Message_'\n }));\n\n\n group.entries = group.entries.concat(\n elementReferenceProperty(element, messageEventDefinition, bpmnFactory, translate, {\n id: 'message-element-name',\n label: translate('Global Message Name'),\n referenceProperty: 'messageRef',\n modelProperty: 'name',\n shouldValidate: true\n })\n );\n\n};\n","'use strict';\n\nvar forEach = require('lodash/forEach');\n\n/**\n * A handler that combines and executes multiple commands.\n *\n * All updates are bundled on the command stack and executed in one step.\n * This also makes it possible to revert the changes in one step.\n *\n * Example use case: remove the harlequin:formKey attribute and in addition\n * add all form fields needed for the harlequin:formData property.\n *\n * @class\n * @constructor\n */\nfunction MultiCommandHandler(commandStack) {\n this._commandStack = commandStack;\n}\n\nMultiCommandHandler.$inject = [ 'commandStack' ];\n\nmodule.exports = MultiCommandHandler;\n\nMultiCommandHandler.prototype.preExecute = function(context) {\n\n var commandStack = this._commandStack;\n\n forEach(context, function(command) {\n commandStack.execute(command.cmd, command.context);\n });\n};","'use strict';\n\nvar forEach = require('min-dash').forEach,\n filter = require('min-dash').filter,\n flatten = require('min-dash').flatten,\n findIndex = require('min-dash').findIndex;\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar findExtensions = require('../Helper').findExtensions,\n findHarlequinErrorEventDefinition = require('../Helper').findHarlequinErrorEventDefinition;\n\nvar ErrorEntries = require('../../parts/implementation/ErrorsEntries');\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar domQuery = require('min-dom').query;\n\nvar HARLEQUIN_ERROR_EVENT_DEFINITION_TYPE = 'harlequin:errorEventDefinition';\n\nvar EMPTY_ERROR = {\n get: function() {},\n set: function() {},\n errorRef: {}\n};\n\n/**\n * Injects element template errors into the given group.\n *\n * @param {Object} group\n * @param {djs.model.Base} element\n * @param {ElementTemplates} elementTemplates\n * @param {BpmnFactory} bpmnFactory\n * @param {Function} translate\n */\nmodule.exports = function(group, element, elementTemplates, bpmnFactory, translate) {\n var template = elementTemplates.get(element);\n\n if (!template) {\n return [];\n }\n\n var errorEntries = [];\n\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n // collapse all other items\n errorEntries.forEach(function(entries) {\n var collapsible = entries[0];\n\n if (collapsible.id === currentEntryId) {\n return;\n }\n\n var entryNode = domQuery('[data-entry=\"' + collapsible.id + '\"]');\n collapsible.setOpen(false, entryNode);\n });\n }\n\n\n function renderError(id, templateProperty) {\n var binding = templateProperty.binding,\n bindingErrorRef = binding.errorRef,\n errorEntries = [],\n collapsibleEntry;\n\n // find error event definition first\n var bo = getBusinessObject(element),\n errorEventDefinitions = findExtensions(bo, [ 'harlequin:ErrorEventDefinition' ]);\n\n if (!errorEventDefinitions) {\n return errorEntries;\n }\n\n var getError = function() {\n var definition = findHarlequinErrorEventDefinition(element, bindingErrorRef);\n\n if (!definition) {\n return EMPTY_ERROR;\n }\n\n return definition;\n };\n\n var error = getError();\n\n var isOpen = function() {\n return collapsibleEntry.isOpen();\n };\n\n var options = {\n idPrefix: id + '-',\n onToggle: onToggle,\n getError: getError,\n isOpen: function() {\n return isOpen();\n }\n };\n\n // (1) use errors implementation\n var errorImplementation = ErrorEntries(error, bpmnFactory, element, options, translate);\n errorEntries = errorImplementation.entries;\n\n var errorReferenceIdx = findEntry(errorEntries, id + '-error-reference');\n\n collapsibleEntry = errorEntries[findEntry(errorEntries, id + '-collapsible')];\n\n // (2) replace validated expression entry by a simple, disabled entry\n var expressionIdx = findEntry(errorEntries, id + '-error-expression');\n removeEntry(errorEntries, expressionIdx);\n\n var expressionEntry = entryFactory.textField(translate, {\n id: id + '-error-expression',\n label: translate('Throw Expression'),\n modelProperty: 'expression',\n\n get: function() {\n return { expression: getError().expression };\n },\n\n buttonShow: {\n method: function() {\n return false;\n }\n },\n\n hidden: function() {\n return !isOpen();\n },\n disabled: function() {\n return true;\n }\n });\n\n errorEntries.splice(expressionIdx, 0, expressionEntry);\n\n // (3) remove error selection\n removeEntry(errorEntries, errorReferenceIdx);\n\n return errorEntries;\n }\n\n // filter specific errors from template\n var errors = filter(template.properties, function(p) {\n return !p.type && p.binding.type === HARLEQUIN_ERROR_EVENT_DEFINITION_TYPE;\n });\n\n forEach(errors, function(property, idx) {\n var id = 'template-errors-' + template.id + '-' + idx;\n errorEntries.push(renderError(id, property));\n });\n\n group.entries = group.entries.concat(flatten(errorEntries));\n};\n\n\n// helper //////////////////////////\n\nfunction findEntry(entries, id) {\n return findIndex(entries, function(entry) {\n return entry.id === id;\n });\n}\n\nfunction removeEntry(entries, idx) {\n entries.splice(idx, 1);\n}","'use strict';\n\nvar assign = require('min-dash').assign,\n flatten = require('min-dash').flatten,\n filter = require('min-dash').filter,\n findIndex = require('min-dash').findIndex,\n forEach = require('min-dash').forEach;\n\nvar domClasses = require('min-dom').classes,\n domEvent = require('min-dom').event,\n domify = require('min-dom').domify,\n domQuery = require('min-dom').query;\n\nvar getBusinessObject = require('../../../../../../process-builder/lib/base/BaseServices').getBusinessObject;\n\nvar findExtension = require('../Helper').findExtension,\n findInputParameter = require('../Helper').findInputParameter;\n\nvar createInputParameter = require('../CreateHelper').createInputParameter;\n\nvar escapeHTML = require('../../../../Utils').escapeHTML;\n\nvar entryFactory = require('../../../../factory/EntryFactory');\n\nvar cmdHelper = require('../../../../helper/CmdHelper'),\n elementHelper = require('../../../../helper/ElementHelper');\n\nvar InputOutputParameter = require('../../parts/implementation/InputOutputParameter');\n\nvar HARLEQUIN_INPUT_PARAMETER_TYPE = 'harlequin:inputParameter';\n\nvar MAX_DESCRIPTION_LENGTH = 200;\n\nvar EMPTY_PARAMETER = {\n get: function() {},\n set: function() {}\n};\n\n\n/**\n * Injects element template input parameters into the given group.\n *\n * @param {Object} group\n * @param {djs.model.Base} element\n * @param {ElementTemplates} elementTemplates\n * @param {BpmnFactory} bpmnFactory\n * @param {Function} translate\n */\nmodule.exports = function(group, element, elementTemplates, bpmnFactory, translate) {\n\n var template = elementTemplates.get(element);\n\n if (!template) {\n return [];\n }\n\n var inputEntries = [];\n\n\n function onToggle(value, entryNode) {\n if (!value) {\n return;\n }\n\n var currentEntryId = entryNode.dataset.entry;\n\n // collapse all other items\n inputEntries.forEach(function(entries) {\n var collapsible = entries[0];\n\n if (collapsible.id === currentEntryId) {\n return;\n }\n\n var entryNode = domQuery('[data-entry=\"' + collapsible.id + '\"]');\n collapsible.setOpen(false, entryNode);\n });\n }\n\n function renderInputParameter(id, templateProperty) {\n\n var parameterEntries = [],\n collapsibleEntry;\n\n var bo = getBusinessObject(element),\n inputOutput = findExtension(bo, 'harlequin:InputOutput');\n\n if (!inputOutput) {\n return parameterEntries;\n }\n\n var getParameter = function() {\n return findInputParameter(inputOutput, templateProperty.binding) || EMPTY_PARAMETER;\n };\n\n var parameter = getParameter();\n\n var isOpen = function() {\n return collapsibleEntry.isOpen();\n };\n\n var assignmentIsOn = function() {\n var inputOutput = findExtension(getBusinessObject(element), 'harlequin:InputOutput'),\n parameter = findInputParameter(inputOutput, templateProperty.binding);\n\n return !!parameter;\n };\n\n var options = {\n idPrefix: id + '-',\n onToggle: onToggle,\n getParameter: getParameter,\n isOpen: function() {\n return isOpen() && assignmentIsOn();\n }\n };\n\n\n // (1) use input parameter implementation\n var inputImplementation = InputOutputParameter(parameter, bpmnFactory, options, translate);\n parameterEntries = inputImplementation.entries;\n\n var nameIdx = findEntry(parameterEntries, id + '-parameterName');\n\n collapsibleEntry = parameterEntries[findEntry(parameterEntries, id + '-collapsible')];\n\n // (2) update title getter\n var defaultGet = collapsibleEntry.get;\n collapsibleEntry.get = function() {\n return assign(defaultGet(), {\n title: templateProperty.label ?\n translate(templateProperty.label) :\n templateProperty.binding.name\n });\n };\n\n // (3) remove name property entry\n removeEntry(parameterEntries, nameIdx);\n\n // (4) add description entry\n if (templateProperty.description) {\n parameterEntries.splice(1, 0, createDescriptionEntry(\n templateProperty.description,\n id,\n collapsibleEntry.isOpen,\n translate\n ));\n }\n\n // (5) add parameter toggle\n parameterEntries.splice(templateProperty.description ? 2 : 1, 0, entryFactory.toggleSwitch(translate, {\n id: id + '-assignment-toggle',\n label: translate('Local Variable Assignment'),\n modelProperty: 'isActive',\n labelOn: translate('On'),\n labelOff: translate('Off'),\n descriptionOff: translate('The parameter won\\'t be created as local variable.'),\n isOn: assignmentIsOn,\n get: function(element, node) {\n return { isActive: assignmentIsOn() };\n },\n set: function(element, values, node) {\n var isActive = values.isActive || false;\n\n if (isActive) {\n return createNewInputParameter(element, templateProperty.binding, bpmnFactory);\n } else {\n return removeInputParameter(element, templateProperty.binding);\n }\n\n },\n hidden: function(element, node) {\n return !isOpen();\n }\n }));\n\n return parameterEntries;\n }\n\n\n // filter specific input parameters from template\n var inputParameters = filter(template.properties, function(p) {\n return !p.type && p.binding.type === HARLEQUIN_INPUT_PARAMETER_TYPE;\n });\n\n forEach(inputParameters, function(property, idx) {\n var id = 'template-inputs-' + template.id + '-' + idx;\n inputEntries.push(renderInputParameter(id, property));\n });\n\n group.entries = group.entries.concat(flatten(inputEntries));\n};\n\n\n// helper ///////////////////////\n\nfunction findEntry(entries, id) {\n return findIndex(entries, function(entry) {\n return entry.id === id;\n });\n}\n\nfunction removeEntry(entries, idx) {\n entries.splice(idx, 1);\n}\n\nfunction createDescriptionEntry(description, id, show, translate) {\n description = escapeHTML(description);\n\n var html = domify('

    ');\n\n var descriptionText = domify('' + description + '');\n\n html.appendChild(descriptionText);\n\n function toggleExpanded(expanded) {\n if (expanded) {\n domClasses(html).add('description--expanded');\n\n descriptionText.textContent = description + ' ';\n\n expand.textContent = translate('Less');\n } else {\n domClasses(html).remove('description--expanded');\n\n descriptionText.textContent = descriptionShortened + ' ... ';\n\n expand.textContent = translate('More');\n }\n }\n\n var descriptionShortened,\n expand,\n expanded = false;\n\n if (description.length > MAX_DESCRIPTION_LENGTH) {\n descriptionShortened = description.slice(0, MAX_DESCRIPTION_LENGTH);\n\n expand = domify(\n '' +\n translate('More') +\n ''\n );\n\n domEvent.bind(expand, 'click', function() {\n expanded = !expanded;\n\n toggleExpanded(expanded);\n });\n\n html.appendChild(expand);\n\n toggleExpanded(expanded);\n }\n\n return {\n id: id + '-description',\n html: html,\n show: show\n };\n}\n\nfunction removeInputParameter(element, binding) {\n var bo = getBusinessObject(element),\n updates = [],\n extensionElements = bo.get('extensionElements');\n\n if (!extensionElements) {\n return updates;\n }\n\n var inputOutput = findExtension(extensionElements, 'harlequin:InputOutput');\n\n if (!inputOutput) {\n return updates;\n }\n\n var inputParameter = findInputParameter(inputOutput, binding);\n\n if (!inputParameter) {\n return updates;\n }\n\n updates.push(cmdHelper.removeElementsFromList(element, inputOutput, 'inputParameters', null, [inputParameter]));\n\n return updates;\n}\n\nfunction createNewInputParameter(element, binding, bpmnFactory) {\n var bo = getBusinessObject(element),\n updates = [],\n extensionElements = bo.get('extensionElements');\n\n // (1) ensure extension elements\n if (!extensionElements) {\n extensionElements = elementHelper.createElement('bpmn:ExtensionElements', null, element, bpmnFactory);\n\n updates.push(cmdHelper.updateBusinessObject(\n element, bo, { extensionElements: extensionElements }\n ));\n }\n\n var inputOutput = findExtension(extensionElements, 'harlequin:InputOutput');\n\n // (2) ensure inputOutput element\n if (!inputOutput) {\n inputOutput = elementHelper.createElement('harlequin:InputOutput', null, bo, bpmnFactory);\n\n updates.push(cmdHelper.addElementsTolist(\n element, extensionElements, 'values', inputOutput\n ));\n }\n\n // (3) create input parameter\n var inputParameter = createInputParameter(binding, null, bpmnFactory);\n\n updates.push(cmdHelper.addAndRemoveElementsFromList(\n element,\n inputOutput,\n 'inputParameters',\n null,\n [ inputParameter ],\n [ ]\n ));\n\n return updates;\n}\n\n\n","'use strict';\n\nvar escapeHTML = require('../Utils').escapeHTML;\n\nvar cmdHelper = require('../helper/CmdHelper');\n\nvar domQuery = require('min-dom').query,\n domAttr = require('min-dom').attr,\n domClosest = require('min-dom').closest;\n\nvar filter = require('lodash/filter'),\n forEach = require('lodash/forEach'),\n keys = require('lodash/keys');\n\nvar domify = require('min-dom').domify;\n\nvar entryFieldDescription = require('./EntryFieldDescription');\n\nvar updateSelection = require('selection-update');\n\nvar TABLE_ROW_DIV_SNIPPET = '
    ';\nvar DELETE_ROW_BUTTON_SNIPPET = '';\n\nfunction createInputRowTemplate(properties, canRemove) {\n var template = TABLE_ROW_DIV_SNIPPET;\n template += createInputTemplate(properties, canRemove);\n template += canRemove ? DELETE_ROW_BUTTON_SNIPPET : '';\n template += '
    ';\n\n return template;\n}\n\nfunction createInputTemplate(properties, canRemove) {\n var columns = properties.length;\n var template = '';\n forEach(properties, function(prop, idx) {\n template += '';\n });\n return template;\n}\n\nfunction createLabelRowTemplate(labels) {\n var template = TABLE_ROW_DIV_SNIPPET;\n template += createLabelTemplate(labels);\n template += '';\n\n return template;\n}\n\nfunction createLabelTemplate(labels) {\n var columns = labels.length;\n var template = '';\n forEach(labels, function(label) {\n template += '';\n });\n return template;\n}\n\nfunction pick(elements, properties) {\n return (elements || []).map(function(elem) {\n var newElement = {};\n forEach(properties, function(prop) {\n newElement[prop] = elem[prop] || '';\n });\n return newElement;\n });\n}\n\nfunction diff(element, node, values, oldValues, editable) {\n return filter(values, function(value, idx) {\n return !valueEqual(element, node, value, oldValues[idx], editable, idx);\n });\n}\n\nfunction valueEqual(element, node, value, oldValue, editable, idx) {\n if (value && !oldValue) {\n return false;\n }\n var allKeys = keys(value).concat(keys(oldValue));\n\n return allKeys.every(function(key) {\n var n = value[key] || undefined;\n var o = oldValue[key] || undefined;\n return !editable(element, node, key, idx) || n === o;\n });\n}\n\nfunction getEntryNode(node) {\n return domClosest(node, '[data-entry]', true);\n}\n\nfunction getContainer(node) {\n return domQuery('div[data-list-entry-container]', node);\n}\n\nfunction getSelection(node) {\n return {\n start: node.selectionStart,\n end: node.selectionEnd\n };\n}\n\nfunction setSelection(node, selection) {\n node.selectionStart = selection.start;\n node.selectionEnd = selection.end;\n}\n\n/**\n * @param {Object} options\n * @param {string} options.id\n * @param {string} options.description\n * @param {Array} options.modelProperties\n * @param {Array} options.labels\n * @param {Function} options.getElements - this callback function must return a list of business object items\n * @param {Function} options.removeElement\n * @param {Function} options.addElement\n * @param {Function} options.updateElement\n * @param {Function} options.editable\n * @param {Function} options.setControlValue\n * @param {Function} options.show\n *\n * @return {Object}\n */\nmodule.exports = function(translate, options) {\n\n var id = options.id,\n modelProperties = options.modelProperties,\n labels = options.labels,\n description = options.description;\n\n var labelRow = createLabelRowTemplate(labels);\n\n var getElements = options.getElements;\n\n var removeElement = options.removeElement,\n canRemove = typeof removeElement === 'function';\n\n var addElement = options.addElement,\n canAdd = typeof addElement === 'function',\n addLabel = options.addLabel || 'Add Value';\n\n var updateElement = options.updateElement,\n canUpdate = typeof updateElement === 'function';\n\n var editable = options.editable || function() { return true; },\n setControlValue = options.setControlValue;\n\n var show = options.show,\n canBeShown = typeof show === 'function';\n\n var elements = function(element, node) {\n return pick(getElements(element, node), modelProperties);\n };\n\n var html = domify((canAdd ?\n '
    ' +\n '' +\n '' +\n '
    ' : '') +\n '
    ' +\n '
    ' +\n labelRow +\n '
    ' +\n '
    ' +\n '
    ' +\n '
    ');\n\n if (description) {\n html.appendChild(entryFieldDescription(translate, description, { show: 'showTable' }));\n }\n\n var factory = {\n id: id,\n html: html,\n\n get: function(element, node) {\n var boElements = elements(element, node, this.__invalidValues);\n\n var invalidValues = this.__invalidValues;\n\n delete this.__invalidValues;\n\n forEach(invalidValues, function(value, idx) {\n var element = boElements[idx];\n\n forEach(modelProperties, function(prop) {\n element[prop] = value[prop];\n });\n });\n\n return boElements;\n },\n\n set: function(element, values, node) {\n var action = this.__action || {};\n delete this.__action;\n\n if (action.id === 'delete-element') {\n return removeElement(element, node, action.idx);\n }\n else if (action.id === 'add-element') {\n return addElement(element, node);\n }\n else if (canUpdate) {\n var commands = [],\n valuesToValidate = values;\n\n if (typeof options.validate !== 'function') {\n valuesToValidate = diff(element, node, values, elements(element, node), editable);\n }\n\n var self = this;\n\n forEach(valuesToValidate, function(value) {\n var validationError,\n idx = values.indexOf(value);\n\n if (typeof options.validate === 'function') {\n validationError = options.validate(element, value, node, idx);\n }\n\n if (!validationError) {\n var cmd = updateElement(element, value, node, idx);\n\n if (cmd) {\n commands.push(cmd);\n }\n } else {\n\n // cache invalid value in an object by index as key\n self.__invalidValues = self.__invalidValues || {};\n self.__invalidValues[idx] = value;\n\n // execute a command, which does not do anything\n commands.push(cmdHelper.updateProperties(element, {}));\n }\n });\n\n return commands;\n }\n },\n createListEntryTemplate: function(value, index, selectBox) {\n return createInputRowTemplate(modelProperties, canRemove);\n },\n\n addElement: function(element, node, event, scopeNode) {\n var template = domify(createInputRowTemplate(modelProperties, canRemove));\n\n var container = getContainer(node);\n container.appendChild(template);\n\n this.__action = {\n id: 'add-element'\n };\n\n return true;\n },\n\n deleteElement: function(element, node, event, scopeNode) {\n var container = getContainer(node);\n var rowToDelete = event.delegateTarget.parentNode;\n var idx = parseInt(domAttr(rowToDelete, 'data-index'), 10);\n\n container.removeChild(rowToDelete);\n\n this.__action = {\n id: 'delete-element',\n idx: idx\n };\n\n return true;\n },\n\n editable: function(element, rowNode, input, prop, value, idx) {\n var entryNode = domClosest(rowNode, '[data-entry]');\n return editable(element, entryNode, prop, idx);\n },\n\n show: function(element, entryNode, node, scopeNode) {\n entryNode = getEntryNode(entryNode);\n return show(element, entryNode, node, scopeNode);\n },\n\n showTable: function(element, entryNode, node, scopeNode) {\n entryNode = getEntryNode(entryNode);\n var elems = elements(element, entryNode);\n return elems && elems.length && (!canBeShown || show(element, entryNode, node, scopeNode));\n },\n\n validateListItem: function(element, value, node, idx) {\n if (typeof options.validate === 'function') {\n return options.validate(element, value, node, idx);\n }\n }\n\n };\n\n // Update/set the selection on the correct position.\n // It's the same code like for an input value in the PropertiesPanel.js.\n if (setControlValue) {\n factory.setControlValue = function(element, rowNode, input, prop, value, idx) {\n var entryNode = getEntryNode(rowNode);\n\n var isReadOnly = domAttr(input, 'readonly');\n var oldValue = input.value;\n\n var selection;\n\n // prevents input fields from having the value 'undefined'\n if (value === undefined) {\n value = '';\n }\n\n // when the attribute 'readonly' exists, ignore the comparison\n // with 'oldValue' and 'value'\n if (!!isReadOnly && oldValue === value) {\n return;\n }\n\n // update selection on undo/redo\n if (document.activeElement === input) {\n selection = updateSelection(getSelection(input), oldValue, value);\n }\n\n setControlValue(element, entryNode, input, prop, value, idx);\n\n if (selection) {\n setSelection(input, selection);\n }\n\n };\n }\n\n return factory;\n\n};\n","import Vue from 'vue';\nimport axios from 'axios';\nimport store from '@/store'\n\nconst baseURL = process.env.VUE_APP_ENGINE_URL;\nlet taskLocked = false;\n\nconst apiUsername = process.env.VUE_APP_ENGINE_API_USER;\nconst apiPassword = process.env.VUE_APP_ENGINE_API_PASS;\nconst apiToken = Buffer.from(`${apiUsername}:${apiPassword}`, 'utf8').toString('base64');\n\nconst state = {\n myTasks: [],\n myTasksCount: null,\n myTasksFollowUp: null,\n myTasksFollowUpIds: [],\n myTasksOverdue: null,\n myTasksOverdueIds: [],\n allTasks: [],\n allTasksCount: null,\n allTasksFollowUp: null,\n allTasksFollowUpIds: [],\n allTasksOverdue: null,\n allTasksOverdueIds: [],\n unassignedTasks: [],\n unassignedTasksCount: null,\n unassignedTasksFollowUp: null,\n unassignedTasksFollowUpIds: [],\n unassignedTasksOverdue: null,\n unassignedTasksOverdueIds: [],\n claimtask: '',\n taskId: '',\n taskName: '',\n formKey: '',\n processKey: '',\n processVersion: null,\n externalProcessVersion: null,\n processName: '',\n deployedForm: {},\n extScript: '',\n savedGridLayout: '',\n sqlQueries: [],\n processVars: [],\n uploadedForm: [],\n taskData: [],\n completedTask: [],\n savedTask: [],\n candidateGroups: [],\n candidateUsers: [],\n reassignedStatus: '',\n historicTasks: [],\n teamTasks: [],\n teamTasksCount: null,\n teamTasksFollowUp: null,\n teamTasksFollowUpIds: [],\n teamTasksOverdue: null,\n teamTasksOverdueIds: [],\n previewLoaded: false,\n allForms: [],\n processForms: [],\n formAction: '',\n formTitle: '',\n formId: null,\n deletedForm: null,\n copiedForm: null,\n subformList: [],\n subformExtScript: '',\n subformSchema: {},\n subformTitle: '',\n subformLayout: '',\n subformQueries: [],\n markedForms: '',\n unmarkedForms: '',\n caseId: '',\n bulkReassign: '',\n gridRowAdded: false,\n exportedForm: [],\n importFormSaved: false,\n editingForm: false,\n formDeployed: false,\n formLocked: false,\n formLockedUser: '',\n lockedForms: [],\n apiReturnData: [],\n apiAuthCode: '',\n veridasResp: [],\n taskComplete: null,\n promoteFormData: [],\n promoteFormRes: []\n};\n\nconst getters = {\n myTasks: (state) => state.myTasks,\n myTasksCount: (state) => state.myTasksCount,\n myTasksFollowUp: (state) => state.myTasksFollowUp,\n myTasksFollowUpIds: (state) => state.myTasksFollowUpIds,\n myTasksOverdue: (state) => state.myTasksOverdue,\n myTasksOverdueIds: (state) => state.myTasksOverdueIds,\n allTasks: (state) => state.allTasks,\n allTasksCount: (state) => state.allTasksCount,\n allTasksFollowUp: (state) => state.allTasksFollowUp,\n allTasksFollowUpIds: (state) => state.allTasksFollowUpIds,\n allTasksOverdue: (state) => state.allTasksOverdue,\n allTasksOverdueIds: (state) => state.allTasksOverdueIds,\n unassignedTasks: (state) => state.unassignedTasks,\n unassignedTasksCount: (state) => state.unassignedTasksCount,\n unassignedTasksFollowUp: (state) => state.unassignedTasksFollowUp,\n unassignedTasksFollowUpIds: (state) => state.unassignedTasksFollowUpIds,\n unassignedTasksOverdue: (state) => state.unassignedTasksOverdue,\n unassignedTasksOverdueIds: (state) => state.unassignedTasksOverdueIds,\n taskId: (state) => state.taskId,\n taskName: (state) => state.taskName,\n formKey: (state) => state.formKey,\n processKey: (state) => state.processKey,\n processVersion: (state) => state.processVersion,\n externalProcessVersion: (state) => state.externalProcessVersion,\n processName: (state) => state.processName,\n deployedForm: (state) => state.deployedForm,\n extScript: (state) => state.extScript,\n savedGridLayout: (state) => state.savedGridLayout,\n sqlQueries: (state) => state.sqlQueries,\n taskData: (state) => state.taskData,\n candidateGroups: (state) => state.candidateGroups,\n candidateUsers: (state) => state.candidateUsers,\n historicTasks: (state) => state.historicTasks,\n teamTasks: (state) => state.teamTasks,\n teamTasksCount: (state) => state.teamTasksCount,\n teamTasksFollowUp: (state) => state.teamTasksFollowUp,\n teamTasksFollowUpIds: (state) => state.teamTasksFollowUpIds,\n teamTasksOverdue: (state) => state.teamTasksOverdue,\n teamTasksOverdueIds: (state) => state.teamTasksOverdueIds,\n allForms: (state) => state.allForms,\n processForms: (state) => state.processForms,\n formAction: (state) => state.formAction,\n formTitle: (state) => state.formTitle,\n formId: (state) => state.formId,\n subformList: (state) => state.subformList,\n subformExtScript: (state) => state.subformExtScript,\n subformSchema: (state) => state.subformSchema,\n subformTitle: (state) => state.subformTitle,\n subformLayout: (state) => state.subformLayout,\n subformQueries: (state) => state.subformQueries,\n processVars: (state) => state.processVars,\n caseId: (state) => state.caseId,\n exportedForm: (state) => state.exportedForm,\n formDeployed: (state) => state.formDeployed,\n formLocked: (state) => state.formLocked,\n formLockedUser: (state) => state.formLockedUser,\n lockedForms: (state) => state.lockedForms,\n apiReturnData: (state) => state.apiReturnData,\n apiAuthCode: (state) => state.apiAuthCode,\n veridasResp: (state) => state.veridasResp,\n taskComplete: (state) => state.taskComplete,\n promoteFormData: (state) => state.promoteFormData,\n promoteFormRes: (state) => state.promoteFormRes\n};\n\nconst actions = {\n countMyTasks({commit}) {\n return axios.get(baseURL + '/task/count?assignee=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('MY_TASKS_COUNT', result.data.count);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getMyTasks({rootState, commit}) {\n commit('MY_TASKS', []);\n let ref = this;\n\n return axios.get(baseURL + '/task?assignee=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async result => {\n let followUpReq = 0;\n let followUpIds = [];\n let overdue = 0;\n let overdueIds = [];\n let procDefIds = '';\n let procInstIds = '';\n\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n // Add process definition ID to list\n if(procDefIds.indexOf(result.data[i].processDefinitionId) == -1) {\n procDefIds += result.data[i].processDefinitionId + ',';\n }\n // Add process instance ID to list\n procInstIds += result.data[i].processInstanceId + ',';\n // Check for follow up and due tasks\n let now = new Date();\n if(result.data[i].followUp != null && result.data[i].followUp != '') {\n let followUp = new Date(result.data[i].followUp);\n if(now > followUp) {\n followUpReq++;\n followUpIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let fdate = new Date(result.data[i].followUp);\n Vue.set(result.data[i], 'followUp', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(fdate));\n }\n if(result.data[i].due != null && result.data[i].due != '') {\n let due = new Date(result.data[i].due);\n if(now > due) {\n overdue++;\n overdueIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let odate = new Date(result.data[i].due);\n Vue.set(result.data[i], 'due', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(odate));\n }\n\n // Format date\n let date = new Date(result.data[i].created);\n Vue.set(result.data[i], 'created', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(date));\n }\n }\n\n // Get parent process (if this is a sub process)\n let subProcInstIds = await this.dispatch('searchForParent', result);\n procInstIds += subProcInstIds;\n\n procDefIds.replace(/,\\s*$/, '');\n procInstIds.replace(/,\\s*$/, '');\n \n await axios.get(baseURL + '/process-definition?processDefinitionIdIn=' + procDefIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( defData => {\n let procDefData = defData.data;\n\n result.data.forEach(function(item) {\n ref.dispatch('getCandidateGroups', item.id).then( () => {\n let canClaim = false;\n let candidateGroups = ref.getters['candidateGroups'];\n let candidateUsers = ref.getters['candidateUsers'];\n let userGroups = store.state.userGroups;\n \n if(candidateGroups.length > 0 && userGroups.length > 0) {\n for(let i = 0; i < candidateGroups.length; i++) {\n if(userGroups.indexOf(candidateGroups[i]) !== -1) {\n canClaim = true;\n }\n }\n }\n \n if(candidateUsers.length > 0) {\n if(candidateUsers.indexOf(store.state.currentUser) !== -1) {\n canClaim = true;\n }\n }\n \n Vue.set(item, 'canClaim', canClaim);\n });\n\n procDefData.forEach(function(defItem) {\n if(defItem.id == item.processDefinitionId) {\n Vue.set(item, 'processName', defItem.name);\n }\n });\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n \n await axios.get(baseURL + '/process-instance/?processInstanceIds=' + procInstIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async instData => {\n let procInstData = instData.data;\n\n // Get all labels\n await this.dispatch('getAllCaseLabels', procInstIds).then( () => {\n let caseLabels = JSON.parse(rootState.process.allCaseLabels);\n let caseData = [];\n\n procInstData.forEach(function(item, index) {\n // Match instance IDs\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].processInstanceId == item.id) {\n // Check for a case ID, if null get one\n if(item.businessKey == null) {\n let isSubProcess = false;\n let caseLabel = '';\n\n ref.dispatch('getSubParentData', result.data[i].processInstanceId).then( async subParent => {\n if(result.data[i].processInstanceId != subParent.id) {\n isSubProcess = true;\n }\n \n if(isSubProcess) {\n await ref.dispatch('getCaseLabelById', parseInt(subParent.businessKey)).then( () => {\n caseLabel = rootState.process.getCaseLabel;\n });\n }else {\n caseLabel = rootState.process.setCaseLabel;\n }\n\n let payload = {\n 'instanceId': result.data[i].processInstanceId,\n 'processId': result.data[i].processDefinitionId,\n 'caseLabel': caseLabel\n };\n ref.dispatch('setCaseId', payload).then( () => {\n ref.dispatch('getCaseId', result.data[i].processInstanceId).then( () => {\n Vue.set(result.data[i], 'caseId', rootState.process.getCaseId);\n Vue.set(result.data[i], 'caseLabel', rootState.process.getCaseLabel);\n\n caseData.push({ \n instanceId: result.data[i].processInstanceId,\n processId: result.data[i].processDefinitionId,\n caseId: result.data[i].caseId,\n taskId: result.data[i].id,\n assignee: result.data[i].assignee\n });\n });\n });\n });\n }else {\n // Get the label\n Vue.set(result.data[i], 'caseId', item.businessKey);\n caseLabels.forEach(function(labelItem) {\n if(labelItem.ID === parseInt(item.businessKey)) {\n Vue.set(result.data[i], 'caseLabel', labelItem.CASE_LABEL);\n return true;\n }\n });\n\n caseData.push({ \n instanceId: result.data[i].processInstanceId,\n processId: result.data[i].processDefinitionId,\n caseId: result.data[i].caseId,\n taskId: result.data[i].id,\n assignee: result.data[i].assignee\n });\n }\n }\n }\n });\n \n let data = {\n 'variables': {\n 'pType': { 'value': 'case', 'type': 'String' },\n 'action': { 'value': 'getStatusAll', 'type': 'String' },\n 'caseData': { 'value': JSON.stringify(caseData), 'type': 'String' },\n },\n 'withVariablesInReturn': true\n }\n \n return axios.post(baseURL + '/process-definition/key/processController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( status => {\n let caseStatuses = JSON.parse(status.data.variables.caseStatuses.value);\n let opened = false;\n \n caseStatuses.forEach(function(caseItem, index) {\n\n if(result.data[index].caseId == caseItem.CASE_ID) {\n if(caseItem.OPENED == null) {\n opened = true;\n }else {\n opened = caseItem.OPENED;\n }\n }\n Vue.set(result.data[index], 'opened', opened);\n });\n });\n });\n \n commit('MY_TASKS', result.data);\n commit('MY_TASKS_FOLLOW_UP', followUpReq);\n commit('MY_TASKS_FOLLOW_UP_IDS', followUpIds);\n commit('MY_TASKS_OVERDUE', overdue);\n commit('MY_TASKS_OVERDUE_IDS', overdueIds);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getAllTasks({rootState, commit}) {\n commit('ALL_TASKS', []);\n let ref = this;\n\n return axios.get(baseURL + '/task', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async result => {\n let followUpReq = 0;\n let followUpIds = [];\n let overdue = 0;\n let overdueIds = [];\n let procDefIds = '';\n let procInstIds = '';\n\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n // Add process definition ID to list\n if(procDefIds.indexOf(result.data[i].processDefinitionId) == -1) {\n procDefIds += result.data[i].processDefinitionId + ',';\n }\n // Add process instance ID to list\n procInstIds += result.data[i].processInstanceId + ',';\n // Check for follow up and due tasks\n let now = new Date();\n if(result.data[i].followUp != null && result.data[i].followUp != '') {\n let followUp = new Date(result.data[i].followUp);\n if(now > followUp) {\n followUpReq++;\n followUpIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let fdate = new Date(result.data[i].followUp);\n Vue.set(result.data[i], 'followUp', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(fdate));\n }\n if(result.data[i].due != null && result.data[i].due != '') {\n let due = new Date(result.data[i].due);\n if(now > due) {\n overdue++;\n overdueIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let odate = new Date(result.data[i].due);\n Vue.set(result.data[i], 'due', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(odate));\n }\n\n // Format date\n let date = new Date(result.data[i].created);\n Vue.set(result.data[i], 'created', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(date));\n }\n }\n\n // Get parent process (if this is a sub process)\n let subProcInstIds = await this.dispatch('searchForParent', result);\n procInstIds += subProcInstIds;\n\n procDefIds.replace(/,\\s*$/, '');\n procInstIds.replace(/,\\s*$/, '');\n \n await axios.get(baseURL + '/process-definition?processDefinitionIdIn=' + procDefIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( defData => {\n let procDefData = defData.data;\n\n result.data.forEach(function(item) {\n ref.dispatch('getCandidateGroups', item.id).then( () => {\n let canClaim = false;\n let candidateGroups = ref.getters['candidateGroups'];\n let candidateUsers = ref.getters['candidateUsers'];\n let userGroups = store.state.userGroups;\n \n if(candidateGroups.length > 0 && userGroups.length > 0) {\n for(let i = 0; i < candidateGroups.length; i++) {\n if(userGroups.indexOf(candidateGroups[i]) !== -1) {\n canClaim = true;\n }\n }\n }\n \n if(candidateUsers.length > 0) {\n if(candidateUsers.indexOf(store.state.currentUser) !== -1) {\n canClaim = true;\n }\n }\n \n Vue.set(item, 'canClaim', canClaim);\n });\n\n procDefData.forEach(function(defItem) {\n if(defItem.id == item.processDefinitionId) {\n Vue.set(item, 'processName', defItem.name);\n }\n });\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n \n await axios.get(baseURL + '/process-instance/?processInstanceIds=' + procInstIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async instData => {\n let procInstData = instData.data;\n\n // Get all labels\n await this.dispatch('getAllCaseLabels', procInstIds).then( () => {\n let caseLabels = JSON.parse(rootState.process.allCaseLabels);\n\n procInstData.forEach(function(item, index) {\n // Match instance IDs\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].processInstanceId == item.id) {\n // Check for a case ID, if null get one\n if(item.businessKey == null) {\n let isSubProcess = false;\n let caseLabel = '';\n\n ref.dispatch('getSubParentData', result.data[i].processInstanceId).then( async subParent => {\n if(result.data[i].processInstanceId != subParent.id) {\n isSubProcess = true;\n }\n \n if(isSubProcess) {\n await ref.dispatch('getCaseLabelById', parseInt(subParent.businessKey)).then( () => {\n caseLabel = rootState.process.getCaseLabel;\n });\n }else {\n caseLabel = rootState.process.setCaseLabel;\n }\n\n let payload = {\n 'instanceId': result.data[i].processInstanceId,\n 'processId': result.data[i].processDefinitionId,\n 'caseLabel': caseLabel\n };\n ref.dispatch('setCaseId', payload).then( () => {\n ref.dispatch('getCaseId', result.data[i].processInstanceId).then( () => {\n Vue.set(result.data[i], 'caseId', rootState.process.getCaseId);\n Vue.set(result.data[i], 'caseLabel', rootState.process.getCaseLabel);\n });\n });\n });\n }else {\n // Get the label\n Vue.set(result.data[i], 'caseId', item.businessKey);\n caseLabels.forEach(function(labelItem) {\n if(labelItem.ID === parseInt(item.businessKey)) {\n Vue.set(result.data[i], 'caseLabel', labelItem.CASE_LABEL);\n return true;\n }\n });\n }\n }\n }\n });\n });\n\n commit('ALL_TASKS_COUNT', result.data.length);\n commit('ALL_TASKS', result.data);\n commit('ALL_TASKS_FOLLOW_UP', followUpReq);\n commit('ALL_TASKS_FOLLOW_UP_IDS', followUpIds);\n commit('ALL_TASKS_OVERDUE', overdue);\n commit('ALL_TASKS_OVERDUE_IDS', overdueIds);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n countUnassignedTasks({commit}) {\n return axios.get(baseURL + '/task/count?unassigned=true&candidateUser=' + store.state.currentUser, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('UNASSIGNED_TASKS_COUNT', result.data.count);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getUnassignedTasks({rootState, commit}, payload) {\n commit('UNASSIGNED_TASKS', []);\n let ref = this;\n\n return axios.post(baseURL + '/task', payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async result => {\n let followUpReq = 0;\n let followUpIds = [];\n let overdue = 0;\n let overdueIds = [];\n let procDefIds = '';\n let procInstIds = '';\n\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n // Add process definition ID to list\n if(procDefIds.indexOf(result.data[i].processDefinitionId) == -1) {\n procDefIds += result.data[i].processDefinitionId + ',';\n }\n // Add process instance ID to list\n procInstIds += result.data[i].processInstanceId + ',';\n // Check for follow up and due tasks\n let now = new Date();\n if(result.data[i].followUp != null && result.data[i].followUp != '') {\n let followUp = new Date(result.data[i].followUp);\n if(now > followUp) {\n followUpReq++;\n followUpIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let fdate = new Date(result.data[i].followUp);\n Vue.set(result.data[i], 'followUp', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(fdate));\n }\n if(result.data[i].due != null && result.data[i].due != '') {\n let due = new Date(result.data[i].due);\n if(now > due) {\n overdue++;\n overdueIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let odate = new Date(result.data[i].due);\n Vue.set(result.data[i], 'due', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(odate));\n }\n\n // Format date\n let date = new Date(result.data[i].created);\n Vue.set(result.data[i], 'created', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(date));\n }\n }\n\n // Get parent process (if this is a sub process)\n let subProcInstIds = await this.dispatch('searchForParent', result);\n procInstIds += subProcInstIds;\n\n procDefIds.replace(/,\\s*$/, '');\n procInstIds.replace(/,\\s*$/, '');\n \n await axios.get(baseURL + '/process-definition?processDefinitionIdIn=' + procDefIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( defData => {\n let procDefData = defData.data;\n\n result.data.forEach(function(item) {\n procDefData.forEach(function(defItem) {\n if(defItem.id == item.processDefinitionId) {\n Vue.set(item, 'processName', defItem.name);\n }\n });\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n \n await axios.get(baseURL + '/process-instance/?processInstanceIds=' + procInstIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async instData => {\n let procInstData = instData.data;\n\n // Get all labels\n await this.dispatch('getAllCaseLabels', procInstIds).then( () => {\n let caseLabels = JSON.parse(rootState.process.allCaseLabels);\n \n procInstData.forEach(function(item, index) {\n // Match instance IDs\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].processInstanceId == item.id) {\n // Check for a case ID, if null get one\n if(item.businessKey == null) {\n let isSubProcess = false;\n let caseLabel = '';\n\n ref.dispatch('getSubParentData', result.data[i].processInstanceId).then( async subParent => {\n if(result.data[i].processInstanceId != subParent.id) {\n isSubProcess = true;\n }\n \n if(isSubProcess) {\n await ref.dispatch('getCaseLabelById', parseInt(subParent.businessKey)).then( () => {\n caseLabel = rootState.process.getCaseLabel;\n });\n }else {\n caseLabel = rootState.process.setCaseLabel;\n }\n\n let payload = {\n 'instanceId': result.data[i].processInstanceId,\n 'processId': result.data[i].processDefinitionId,\n 'caseLabel': caseLabel\n };\n ref.dispatch('setCaseId', payload).then( () => {\n ref.dispatch('getCaseId', result.data[i].processInstanceId).then( () => {\n Vue.set(result.data[i], 'caseId', rootState.process.getCaseId);\n Vue.set(result.data[i], 'caseLabel', rootState.process.getCaseLabel);\n });\n });\n });\n }else {\n // Get the label\n Vue.set(result.data[i], 'caseId', item.businessKey);\n caseLabels.forEach(function(labelItem) {\n if(labelItem.ID === parseInt(item.businessKey)) {\n Vue.set(result.data[i], 'caseLabel', labelItem.CASE_LABEL);\n return true;\n }\n });\n }\n }\n }\n });\n });\n \n commit('UNASSIGNED_TASKS', result.data);\n commit('UNASSIGNED_TASKS_FOLLOW_UP', followUpReq);\n commit('UNASSIGNED_TASKS_FOLLOW_UP_IDS', followUpIds);\n commit('UNASSIGNED_TASKS_OVERDUE', overdue);\n commit('UNASSIGNED_TASKS_OVERDUE_IDS', overdueIds);\n });\n \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n async searchForParent({commit}, result) {\n let procInstIds = '';\n\n for (const item of result.data) {\n try {\n const topLevelParentId = await this.dispatch('getSubParent', item.processInstanceId);\n procInstIds += topLevelParentId + ',';\n } catch (error) {\n console.error('Error processing item:', error);\n }\n }\n\n return procInstIds;\n },\n async getSubParent({commit}, processInstanceId) {\n let currentId = processInstanceId;\n \n while (true) {\n try {\n const response = await axios.get(baseURL + '/process-instance', {\n params: { subProcessInstance: currentId },\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': 'Basic ' + store.state.token\n }\n });\n\n if (response.data.length === 0) {\n // We've reached the top level process\n return currentId;\n }\n\n // Move up to the next level\n currentId = response.data[0].id;\n } catch (error) {\n console.error('Error fetching process instance:', error);\n throw new Error(`API ${error}`);\n }\n } \n },\n async getSubParentData({commit}, processInstanceId) {\n let currentId = processInstanceId;\n let parentObj = {};\n \n while (true) {\n try {\n const response = await axios.get(baseURL + '/process-instance', {\n params: { subProcessInstance: currentId },\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': 'Basic ' + store.state.token\n }\n });\n\n if (response.data.length === 0) {\n // We've reached the top level process\n return parentObj;\n }\n\n // Move up to the next level\n currentId = response.data[0].id;\n parentObj = response.data[0];\n } catch (error) {\n console.error('Error fetching process instance:', error);\n throw new Error(`API ${error}`);\n }\n } \n },\n getTask({commit}, payload) {\n return axios.get(baseURL + '/task?processInstanceId=' + payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n if(result.data[0]) { \n let data = {\n 'taskId': result.data[0].id,\n 'formKey': result.data[0].formKey\n };\n commit('UPDATE_TASK_DATA', data);\n commit('UPDATE_TASK_NAME', result.data[0].name);\n }else {\n let data = {\n 'taskId': '',\n 'formKey': ''\n };\n commit('UPDATE_TASK_DATA', data);\n commit('UPDATE_TASK_NAME', '');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getExternalTask({rootState, commit}, payload) {\n return axios.get(baseURL + '/task?processInstanceId=' + payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n let data = {\n 'taskId': result.data[0].id,\n 'formKey': result.data[0].formKey\n };\n\n this.dispatch('getCaseId', payload).then( () => {\n commit('UPDATE_CASE_ID', rootState.process.getCaseId);\n });\n \n commit('UPDATE_TASK_DATA', data);\n commit('UPDATE_TASK_NAME', result.data[0].name);\n\n axios.get(baseURL + '/process-definition?processDefinitionId=' + result.data[0].processDefinitionId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( resp => {\n commit('UPDATE_PROCESS_NAME', resp.data[0].name);\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n checkTask({commit}, payload) {\n return axios.get(baseURL + '/task?processInstanceId=' + payload.instanceId, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let taskComplete = false;\n if(result.data.length == 0 || result.data[0].id != payload.taskId) {\n taskComplete = true;\n }\n commit('TASK_COMPLETE', taskComplete);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n claimTask({commit}, payload) {\n let data = {\n \"userId\": payload.userId\n }\n\n return axios.post(baseURL + '/task/' + payload.taskId + '/claim', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('CLAIM_TASK', result.data);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'This task has already been claimed by someone.';\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n getForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'single', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formKey': { 'value': payload.formKey, 'type': 'String' },\n 'formAction': { 'value': payload.formAction, 'type': 'String' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n let theForm = JSON.parse(JSON.parse(result.data.variables.retrievedForm.value));\n let theLayout = JSON.parse(JSON.parse(result.data.variables.gridLayout.value));\n let theQueries = JSON.parse(JSON.parse(result.data.variables.sqlQueries.value));\n let extScript = JSON.parse(JSON.parse(result.data.variables.extScript.value));\n \n commit('DEPLOYED_FORM', theForm);\n commit('FORM_TITLE', result.data.variables.formTitle.value);\n commit('EXT_SCRIPT', extScript[0].theScript);\n commit('GRID_LAYOUT', theLayout);\n commit('SQL_QUERIES', theQueries);\n }).catch(error => {\n if(error.message.includes('unexpected end of data at line 1 column 1 of the JSON data')) {\n let msg = 'Hmm...it looks like no form has been assigned to this task.';\n commit('ERROR_MESSAGE', msg);\n }\n throw new Error(`API ${error}`);\n });\n },\n getExternalForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'single', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formKey': { 'value': payload.formKey, 'type': 'String' },\n 'formAction': { 'value': payload.formAction, 'type': 'String' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n\n let theForm = JSON.parse(JSON.parse(result.data.variables.retrievedForm.value));\n let theLayout = JSON.parse(JSON.parse(result.data.variables.gridLayout.value));\n let theQueries = JSON.parse(JSON.parse(result.data.variables.sqlQueries.value));\n let extScript = JSON.parse(JSON.parse(result.data.variables.extScript.value));\n \n commit('DEPLOYED_FORM', theForm);\n commit('FORM_TITLE', result.data.variables.formTitle.value);\n commit('EXT_SCRIPT', extScript[0].theScript);\n commit('GRID_LAYOUT', theLayout);\n commit('SQL_QUERIES', theQueries);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getSubform({commit}, formKey) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'subform', 'type': 'String' },\n 'formKey': { 'value': formKey, 'type': 'String' },\n 'processVersion': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n let theForm = JSON.parse(JSON.parse(result.data.variables.retrievedForm.value));\n let theLayout = JSON.parse(JSON.parse(result.data.variables.gridLayout.value));\n let theQueries = JSON.parse(JSON.parse(result.data.variables.sqlQueries.value));\n \n commit('SUBFORM_SCHEMA', theForm);\n commit('SUBFORM_TITLE', result.data.variables.formTitle.value);\n commit('SUBFORM_EXT_SCRIPT', result.data.variables.extScript.value);\n commit('SUBFORM_LAYOUT', theLayout);\n commit('SUBFORM_QUERIES', theQueries);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Error: Subform not found.';\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n getAllForms({commit}) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'all', 'type': 'String' },\n 'processVersion': { 'value': 0, 'type': 'Integer' },\n 'formId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n let allForms = JSON.parse(result.data.variables.allForms.value);\n \n commit('ALL_FORMS', allForms);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getProcessForms({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'processForms', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': 0, 'type': 'Integer' },\n 'formId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n let processForms = JSON.parse(result.data.variables.processForms.value);\n \n commit('PROCESS_FORMS', processForms);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getSubFormList({commit}) {\n let data = {\n 'variables': {\n 'action': { 'value': 'retrieve', 'type': 'String' },\n 'type': { 'value': 'subforms', 'type': 'String' },\n 'processVersion': { 'value': 0, 'type': 'Integer' },\n 'formId': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n \n let subformList = JSON.parse(result.data.variables.subforms.value);\n \n commit('SUBFORM_LIST', subformList);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getProcessVars({commit}, processKey) {\n let data = {\n 'variables': {\n 'action': { 'value': 'getVars', 'type': 'String' },\n 'processKey': { 'value': processKey, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let processVars = [];\n\n if(JSON.parse(result.data.variables.processVars.value)) {\n processVars = JSON.parse(JSON.parse(result.data.variables.processVars.value));\n }\n\n commit('PROCESS_VARS', processVars);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n uploadForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'upload', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formKey': { 'value': payload.formKey, 'type': 'String' },\n 'schema': { 'value': payload.schema, 'type': 'Json' },\n 'formTitle': { 'value': payload.formTitle, 'type': 'String' },\n 'gridLayout': { 'value': payload.gridLayout, 'type': 'Json' },\n 'extScript': { 'value': payload.extScript, 'type': 'Json' },\n 'formAction': { 'value': payload.formAction, 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' },\n 'isMulti': { 'value': payload.isMulti, 'type': 'Integer' },\n 'isDeployed': { 'value': payload.isDeployed, 'type': 'Integer' },\n 'isLocked': { 'value': payload.isLocked, 'type': 'Integer' },\n 'lockedBy': { 'value': payload.lockedBy, 'type': 'String' },\n 'sqlQueries': { 'value': payload.sqlQueries, 'type': 'Json' },\n 'processVars': { 'value': payload.processVars, 'type': 'Json' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(typeof result.data.variables.lastId !== 'undefined') {\n commit('UPDATE_FORM_ID', result.data.variables.lastId.value);\n }\n commit('UPLOADED_FORM', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n markFormsDeployed({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'upload', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formAction': { 'value': 'deployed', 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' },\n 'isMulti': { 'value': 0, 'type': 'Integer' },\n 'isDeployed': { 'value': 1, 'type': 'Integer' },\n 'isLocked': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('MARKED_FORMS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n markFormsUndeployed({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'upload', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formAction': { 'value': 'undeployed', 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' },\n 'isMulti': { 'value': 0, 'type': 'Integer' },\n 'isDeployed': { 'value': 0, 'type': 'Integer' },\n 'isLocked': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('UNMARKED_FORMS', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n copyForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'upload', 'type': 'String' },\n 'formAction': { 'value': 'copy', 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' },\n 'newFormKey': { 'value': payload.newFormKey, 'type': 'String' },\n 'processVersion': { 'value': 0, 'type': 'Integer' },\n 'isMulti': { 'value': 0, 'type': 'Integer' },\n 'isDeployed': { 'value': 0, 'type': 'Integer' },\n 'isLocked': { 'value': 0, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('COPIED_FORM', payload.formId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n deleteForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'delete', 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n commit('DELETED_FORM', payload.formId);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getTaskData({commit}, instanceId) {\n return axios.get(baseURL + '/process-instance/' + instanceId + '/variables', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('TASK_DATA', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getExternalTaskData({commit}, instanceId) {\n return axios.get(baseURL + '/process-instance/' + instanceId + '/variables', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => { \n commit('TASK_DATA', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n completeTask({commit}, data) {\n return axios.post(baseURL + '/task/' + data.taskId + '/complete', data.payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('COMPLETED_TASK', result.data);\n }).catch(error => {\n let msg = error.response.data.type + ': ' + error.response.data.message;\n commit('ERROR_MESSAGE', msg);\n throw new Error(`API ${error}`);\n });\n },\n completeExternalTask({commit}, data) {\n return axios.post(baseURL + '/task/' + data.taskId + '/complete', data.payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n commit('COMPLETED_TASK', result.data);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n saveTask({commit}, data) {\n if(!taskLocked) {\n taskLocked = true;\n return axios.post(baseURL + '/process-instance/' + data.instanceId + '/variables', data.payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n commit('SAVED_TASK', result.data);\n taskLocked = false;\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n },\n saveExternalTask({commit}, data) {\n if(!taskLocked) {\n taskLocked = true;\n return axios.post(baseURL + '/process-instance/' + data.instanceId + '/variables', data.payload, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + apiToken}}).then( result => {\n commit('SAVED_TASK', result.data);\n taskLocked = false;\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n }\n },\n getCandidateGroups({commit}, taskId) {\n return axios.get(baseURL + '/task/' + taskId + '/identity-links', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let candidateGroups = [];\n let candidateUsers = [];\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].type == 'candidate' && result.data[i].groupId != null) {\n candidateGroups.push(result.data[i].groupId);\n }\n if(result.data[i].type == 'candidate' && result.data[i].userId != null) {\n candidateUsers.push(result.data[i].userId);\n }\n }\n commit('CANDIDATE_GROUPS', candidateGroups);\n commit('CANDIDATE_USERS', candidateUsers);\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n reassignTask({commit}, payload) {\n let data = {\n 'userId': payload.userId\n }\n return axios.post(baseURL + '/task/' + payload.taskId + '/assignee', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( res => {\n if(res.status == 204) {\n commit('REASSIGNED_STATUS', 'success');\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n bulkReassignTasks({commit}, payload) {\n let data = {\n 'userId': payload.userId\n }\n\n const PromiseArr = [];\n const items = payload.items;\n for(let i = 0; i < items.length; i++) {\n PromiseArr.push(\n axios.post(baseURL + '/task/' + items[i].id + '/assignee', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.status)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n let success = true;\n res.forEach(function(item) {\n if(item != 204) {\n success = false;\n }\n });\n \n commit('BULK_REASSIGN', success);\n });\n },\n getHistoricTasks({rootState, commit}, payload) {\n let ref = this;\n\n return axios.get(baseURL + '/history/task?processInstanceId=' + payload.id + '&sortBy=startTime&sortOrder=asc', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n \n const PromiseArr = [];\n if(result.data.length > 0) {\n PromiseArr.push(\n axios.get(baseURL + '/history/detail?processInstanceId=' + payload.id + '&sortBy=time&sortOrder=asc', {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => \n resolve(resp.data)))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n \n res.forEach(function(item, index) {\n ref.dispatch('getCaseId', result.data[index].processInstanceId).then( () => {\n Vue.set(result.data[index], 'caseId', rootState.process.getCaseId);\n Vue.set(result.data[index], 'caseLabel', rootState.process.getCaseLabel);\n });\n \n for(let i = 0; i < result.data.length; i++) {\n let varData = [];\n \n for(let j = 0; j < item.length; j++) {\n \n if(item[j].variableName != 'allUsersGroups' && item[j].variableName != 'portalUser' && item[j].variableName != 'portalPassword') {\n let taskStart = new Date(result.data[i].startTime);\n let taskEnd = new Date(result.data[i].endTime);\n let varTime = new Date(item[j].time);\n \n // If varTime between task startTime and endTime\n if(varTime >= taskStart && varTime <= taskEnd) {\n // Format the variable timestamp\n let vdate = new Date(item[j].time);\n item[j].time = new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(vdate);\n\n varData.push(item[j]);\n }\n }\n }\n \n Vue.set(result.data[i], 'varData', varData);\n \n // Format dates\n let sdate = new Date(result.data[i].startTime);\n Vue.set(result.data[i], 'startTime', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(sdate));\n let edate = new Date(result.data[i].endTime);\n Vue.set(result.data[i], 'endTime', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(edate));\n }\n\n });\n\n commit('HISTORIC_TASKS', result.data);\n });\n \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n getTeamTasks({rootState, commit}, payload) {\n commit('TEAM_TASKS', []);\n let ref = this;\n let ep = '';\n\n if(payload.groups == '') {\n ep = '/task?assigned=true';\n }else {\n ep = '/task?assigned=true&includeAssignedTasks=true&candidateGroups=' + payload.groups;\n }\n\n return axios.get(baseURL + ep + '&assigneeIn=' + payload.members, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async result => {\n let followUpReq = 0;\n let followUpIds = [];\n let overdue = 0;\n let overdueIds = [];\n let procDefIds = '';\n let procInstIds = '';\n\n if(result.data.length > 0) {\n for(let i = 0; i < result.data.length; i++) {\n // Add process definition ID to list\n if(procDefIds.indexOf(result.data[i].processDefinitionId) == -1) {\n procDefIds += result.data[i].processDefinitionId + ',';\n }\n // Add process instance ID to list\n procInstIds += result.data[i].processInstanceId + ',';\n // Check for follow up and due tasks\n let now = new Date();\n if(result.data[i].followUp != null && result.data[i].followUp != '') {\n let followUp = new Date(result.data[i].followUp);\n if(now > followUp) {\n followUpReq++;\n followUpIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let fdate = new Date(result.data[i].followUp);\n Vue.set(result.data[i], 'followUp', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(fdate));\n }\n if(result.data[i].due != null && result.data[i].due != '') {\n let due = new Date(result.data[i].due);\n if(now > due) {\n overdue++;\n overdueIds.push(result.data[i].processInstanceId);\n }\n\n // Format date\n let odate = new Date(result.data[i].due);\n Vue.set(result.data[i], 'due', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(odate));\n }\n\n // Format date\n let date = new Date(result.data[i].created);\n Vue.set(result.data[i], 'created', new Intl.DateTimeFormat('en-GB', \n {\n day: 'numeric',\n month: 'numeric', \n year: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false\n }).format(date));\n }\n }\n\n // Get parent process (if this is a sub process)\n let subProcInstIds = await this.dispatch('searchForParent', result);\n procInstIds += subProcInstIds;\n\n procDefIds.replace(/,\\s*$/, '');\n procInstIds.replace(/,\\s*$/, '');\n \n await axios.get(baseURL + '/process-definition?processDefinitionIdIn=' + procDefIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( defData => {\n let procDefData = defData.data;\n\n result.data.forEach(function(item) {\n procDefData.forEach(function(defItem) {\n if(defItem.id == item.processDefinitionId) {\n Vue.set(item, 'processName', defItem.name);\n }\n });\n });\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n \n await axios.get(baseURL + '/process-instance/?processInstanceIds=' + procInstIds, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( async instData => {\n let procInstData = instData.data;\n\n // Get all labels\n await this.dispatch('getAllCaseLabels', procInstIds).then( () => {\n let caseLabels = JSON.parse(rootState.process.allCaseLabels);\n\n procInstData.forEach(function(item, index) {\n // Match instance IDs\n for(let i = 0; i < result.data.length; i++) {\n if(result.data[i].processInstanceId == item.id) {\n // Check for a case ID, if null get one\n if(item.businessKey == null) {\n let isSubProcess = false;\n let caseLabel = '';\n\n ref.dispatch('getSubParentData', result.data[i].processInstanceId).then( async subParent => {\n if(result.data[i].processInstanceId != subParent.id) {\n isSubProcess = true;\n }\n \n if(isSubProcess) {\n await ref.dispatch('getCaseLabelById', parseInt(subParent.businessKey)).then( () => {\n caseLabel = rootState.process.getCaseLabel;\n });\n }else {\n caseLabel = rootState.process.setCaseLabel;\n }\n\n let payload = {\n 'instanceId': result.data[i].processInstanceId,\n 'processId': result.data[i].processDefinitionId,\n 'caseLabel': caseLabel\n };\n ref.dispatch('setCaseId', payload).then( () => {\n ref.dispatch('getCaseId', result.data[i].processInstanceId).then( () => {\n Vue.set(result.data[i], 'caseId', rootState.process.getCaseId);\n Vue.set(result.data[i], 'caseLabel', rootState.process.getCaseLabel);\n });\n });\n });\n }else {\n // Get the label\n Vue.set(result.data[i], 'caseId', item.businessKey);\n caseLabels.forEach(function(labelItem) {\n if(labelItem.ID === parseInt(item.businessKey)) {\n Vue.set(result.data[i], 'caseLabel', labelItem.CASE_LABEL);\n return true;\n }\n });\n }\n }\n }\n });\n });\n\n commit('TEAM_TASKS_COUNT', result.data.length);\n commit('TEAM_TASKS', result.data);\n commit('TEAM_TASKS_FOLLOW_UP', followUpReq);\n commit('TEAM_TASKS_FOLLOW_UP_IDS', followUpIds);\n commit('TEAM_TASKS_OVERDUE', overdue);\n commit('TEAM_TASKS_OVERDUE_IDS', overdueIds);\n });\n \n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n exportForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'export', 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n };\n \n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let exportData = [];\n\n let fileName = payload.formTitle + '.frm';\n let fileData = result.data.variables.exportedForm.value;\n let mimeType = 'text/plain';\n\n let blob = new Blob([fileData], {type: mimeType});\n let url = window.URL.createObjectURL(blob);\n \n exportData.push({ fileName: fileName, fileData: url });\n \n commit('EXPORTED_FORM_DATA', exportData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n importForm({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'import', 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' },\n 'formKey': { 'value': payload.formKey, 'type': 'String' },\n 'schema': { 'value': payload.schema, 'type': 'Json' },\n 'formTitle': { 'value': payload.formTitle, 'type': 'String' },\n 'gridLayout': { 'value': payload.gridLayout, 'type': 'Json' },\n 'extScript': { 'value': payload.extScript, 'type': 'Json' },\n 'formAction': { 'value': payload.formAction, 'type': 'String' },\n 'isMulti': { 'value': payload.isMulti, 'type': 'Integer' },\n 'isDeployed': { 'value': payload.isDeployed, 'type': 'Integer' },\n 'isLocked': { 'value': payload.isLocked, 'type': 'Integer' },\n 'sqlQueries': { 'value': payload.sqlQueries, 'type': 'Json' }\n }\n };\n \n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( () => { \n // Force a 1 second wait for local storage\n setTimeout(function(){\n commit('IMPORT_FORM_SAVED', true);\n }, 1000);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'Possible error in SQL statement. ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n lockCheck({commit}, payload) {\n let data = {};\n if(payload.checkType == 'single') {\n data = {\n 'variables': {\n 'action': { 'value': 'lockCheck', 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n if(payload.checkType == 'all') {\n data = {\n 'variables': {\n 'action': { 'value': 'lockCheck', 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' },\n 'processKey': { 'value': payload.processKey, 'type': 'String' },\n 'processVersion': { 'value': payload.processVersion, 'type': 'Integer' }\n },\n 'withVariablesInReturn': true\n };\n }\n if(payload.checkType == 'unlock') {\n data = {\n 'variables': {\n 'action': { 'value': 'lockCheck', 'type': 'String' },\n 'formId': { 'value': payload.formId, 'type': 'Integer' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n if(payload.checkType == 'logoutUnlock') {\n data = {\n 'variables': {\n 'action': { 'value': 'lockCheck', 'type': 'String' },\n 'formId': { 'value': 0, 'type': 'Integer' },\n 'lockedByUser': { 'value': store.state.currentUser, 'type': 'String' },\n 'checkType': { 'value': payload.checkType, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n }\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n if(payload.checkType == 'single') {\n let retData = {\n 'formDeployed': result.data.variables.formDeployed.value,\n 'formLocked': result.data.variables.formLocked.value,\n 'formLockedUser': result.data.variables.formLockedUser.value\n };\n commit('LOCK_CHECK', retData);\n }\n if(payload.checkType == 'all') {\n let lockedForms = JSON.parse(result.data.variables.lockedForms.value);\n commit('LOCK_CHECK_ALL', lockedForms);\n }\n }).catch(error => {\n throw new Error(`API ${error}`);\n });\n },\n promoteFormsCheck({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'promote', 'type': 'String' },\n 'promoteFormData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'get', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let formData = JSON.parse(result.data.variables.formData.value);\n commit('PROMOTE_FORM_DATA', formData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n promoteForms({commit}, payload) {\n let data = {\n 'variables': {\n 'action': { 'value': 'promote', 'type': 'String' },\n 'promoteFormData': { 'value': payload.promotes, 'type': 'Json' },\n 'checkType': { 'value': 'getLocal', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(baseURL + '/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => {\n let formData = result.data.variables.formData.value;\n \n let data = {\n 'variables': {\n 'action': { 'value': 'promote', 'type': 'String' },\n 'promoteFormData': { 'value': formData, 'type': 'Json' },\n 'checkType': { 'value': 'update', 'type': 'String' },\n },\n 'withVariablesInReturn': true\n };\n return axios.post(payload.engine + '/engine-rest/process-definition/key/formController/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n let retData = [];\n\n if(result.status == 200) {\n retData = JSON.parse(result.data.variables.retData.value);\n }\n\n commit('PROMOTE_FORM_RES', retData);\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n },\n async fireApi({state, commit}, payload) {\n state.apiReturnData = [];\n let mutationData = [];\n const PromiseArr = [];\n\n for(let i = 0; i < payload.length; i++) {\n\n let data = {\n 'variables': {\n 'requestType': { 'value': 'api', 'type': 'String' },\n 'id': { 'value': payload[i].id, 'type': 'Integer' },\n 'callType': { 'value': payload[i].type, 'type': 'String' },\n 'apiParams': { 'value': payload[i].apiParams, 'type': 'String' },\n 'apiHeaders': { 'value': payload[i].apiHeaders, 'type': 'String' },\n 'urlQuery': { 'value': encodeURI(payload[i].urlQuery), 'type': 'String' },\n 'postData': { 'value': payload[i].postData, 'type': 'String' },\n 'includeClientId': { 'value': payload[i].includeClientId, 'type': 'Boolean' },\n 'includeClientSecret': { 'value': payload[i].includeClientSecret, 'type': 'Boolean' },\n 'includeGrantType': { 'value': payload[i].includeGrantType, 'type': 'Boolean' }\n },\n 'withVariablesInReturn': true\n };\n\n PromiseArr.push(\n axios.post(baseURL + '/process-definition/key/apiController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( resp => new Promise(resolve => {\n if(typeof resp.data.variables.apiResponse !== 'undefined') {\n resolve(resp.data.variables.apiResponse.value)\n }else {\n resolve(JSON.stringify('{\"apiResponse\": \"API error\"}'))\n }\n }))\n );\n }\n\n Promise.all(PromiseArr).then(res => {\n res.forEach(function(item, index) {\n try {\n mutationData[index] = JSON.parse(JSON.parse(item));\n } catch (error) {\n mutationData[index] = JSON.parse(item);\n }\n });\n commit('API_DATA', mutationData);\n });\n },\n async veridasAuth({commit}, payload) {\n let data = {\n 'variables': {\n 'requestType': { 'value': 'veridas', 'type': 'String' },\n 'documentType': { 'value': payload.documentType, 'type': 'String' },\n 'mobileUrl': { 'value': payload.mobileUrl, 'type': 'String' },\n 'mobileParams': { 'value': payload.mobileParams, 'type': 'String' }\n },\n 'withVariablesInReturn': true\n };\n await axios.post(baseURL + '/process-definition/key/apiController/tenant-id/harlequin/start', data, {headers: {'Content-Type': 'application/json', 'Authorization': 'Basic ' + store.state.token}}).then( result => { \n commit('VERIDAS_RESP', JSON.parse(JSON.parse(result.data.variables.veridasResponse.value)));\n }).catch(error => {\n if(error != 'TypeError: data is null') {\n let msg = 'API error: ' + error;\n commit('ERROR_MESSAGE', msg);\n }\n });\n }\n};\n\nconst mutations = {\n MY_TASKS(state, payload) {\n state.myTasks = payload;\n },\n MY_TASKS_COUNT(state, payload) {\n state.myTasksCount = payload;\n },\n MY_TASKS_FOLLOW_UP(state, payload) {\n state.myTasksFollowUp = payload;\n },\n MY_TASKS_FOLLOW_UP_IDS(state, payload) {\n state.myTasksFollowUpIds = payload;\n },\n MY_TASKS_OVERDUE(state, payload) {\n state.myTasksOverdue = payload;\n },\n MY_TASKS_OVERDUE_IDS(state, payload) {\n state.myTasksOverdueIds = payload;\n },\n ALL_TASKS(state, payload) {\n state.allTasks = payload;\n },\n ALL_TASKS_COUNT(state, payload) {\n state.allTasksCount = payload;\n },\n ALL_TASKS_FOLLOW_UP(state, payload) {\n state.allTasksFollowUp = payload;\n },\n ALL_TASKS_FOLLOW_UP_IDS(state, payload) {\n state.allTasksFollowUpIds = payload;\n },\n ALL_TASKS_OVERDUE(state, payload) {\n state.allTasksOverdue = payload;\n },\n ALL_TASKS_OVERDUE_IDS(state, payload) {\n state.allTasksOverdueIds = payload;\n },\n UNASSIGNED_TASKS(state, payload) {\n state.unassignedTasks = payload;\n },\n UNASSIGNED_TASKS_COUNT(state, payload) {\n state.unassignedTasksCount = payload;\n },\n UNASSIGNED_TASKS_FOLLOW_UP(state, payload) {\n state.unassignedTasksFollowUp = payload;\n },\n UNASSIGNED_TASKS_FOLLOW_UP_IDS(state, payload) {\n state.unassignedTasksFollowUpIds = payload;\n },\n UNASSIGNED_TASKS_OVERDUE(state, payload) {\n state.unassignedTasksOverdue = payload;\n },\n UNASSIGNED_TASKS_OVERDUE_IDS(state, payload) {\n state.unassignedTasksOverdueIds = payload;\n },\n CLAIM_TASK(state, payload) {\n state.claimtask = payload;\n },\n UPDATE_TASK_DATA(state, payload) {\n state.taskId = payload.taskId;\n state.formKey = payload.formKey;\n },\n UPDATE_TASK_ID(state, payload) {\n state.taskId = payload;\n },\n UPDATE_TASK_NAME(state, payload) {\n state.taskName = payload;\n },\n UPDATE_FORM_KEY(state, payload) {\n state.formKey = payload;\n },\n UPDATE_PROCESS_KEY(state, payload) {\n state.processKey = payload;\n },\n UPDATE_PROCESS_VERSION(state, payload) {\n state.processVersion = payload;\n },\n UPDATE_EXTERNAL_PROCESS_VERSION(state, payload) {\n state.externalProcessVersion = payload;\n },\n UPDATE_PROCESS_NAME(state, payload) {\n state.processName = payload;\n },\n UPDATE_FORM_ACTION(state, payload) {\n state.formAction = payload;\n },\n UPDATE_FORM_ID(state, payload) {\n state.formId = payload;\n },\n DEPLOYED_FORM(state, payload) {\n state.deployedForm = payload;\n },\n FORM_TITLE(state, payload) {\n state.formTitle = payload;\n },\n EXT_SCRIPT(state, payload) {\n state.extScript = payload;\n },\n GRID_LAYOUT(state, payload) {\n state.savedGridLayout = payload;\n },\n SQL_QUERIES(state, payload) {\n state.sqlQueries = payload;\n },\n PROCESS_VARS(state, payload) {\n state.processVars = payload;\n },\n UPLOADED_FORM(state, payload) {\n state.uploadedForm = payload;\n },\n COPIED_FORM(state, payload) {\n state.copiedForm = payload;\n },\n DELETED_FORM(state, payload) {\n state.deletedForm = payload;\n },\n TASK_DATA(state, payload) {\n state.taskData = payload;\n },\n COMPLETED_TASK(state, payload) {\n state.completedTask = payload;\n },\n SAVED_TASK(state, payload) {\n state.savedTask = payload;\n },\n CANDIDATE_GROUPS(state, payload) {\n state.candidateGroups = payload;\n },\n CANDIDATE_USERS(state, payload) {\n state.candidateUsers = payload;\n },\n REASSIGNED_STATUS(state, payload) {\n state.reassignedStatus = payload;\n },\n HISTORIC_TASKS(state, payload) {\n state.historicTasks = payload;\n },\n TEAM_TASKS(state, payload) {\n state.teamTasks = payload;\n },\n TEAM_TASKS_COUNT(state, payload) {\n state.teamTasksCount = payload;\n },\n TEAM_TASKS_FOLLOW_UP(state, payload) {\n state.teamTasksFollowUp = payload;\n },\n TEAM_TASKS_FOLLOW_UP_IDS(state, payload) {\n state.teamTasksFollowUpIds = payload;\n },\n TEAM_TASKS_OVERDUE(state, payload) {\n state.teamTasksOverdue = payload;\n },\n TEAM_TASKS_OVERDUE_IDS(state, payload) {\n state.teamTasksOverdueIds = payload;\n },\n PREVIEW_LOADED(state, payload) {\n state.previewLoaded = payload;\n },\n ALL_FORMS(state, payload) {\n state.allForms = payload;\n },\n PROCESS_FORMS(state, payload) {\n state.processForms = payload;\n },\n SUBFORM_LIST(state, payload) {\n state.subformList = payload;\n },\n SUBFORM_SCHEMA(state, payload) {\n state.subformSchema = payload;\n },\n SUBFORM_TITLE(state, payload) {\n state.subformTitle = payload;\n },\n SUBFORM_LAYOUT(state, payload) {\n state.subformLayout = payload;\n },\n SUBFORM_QUERIES(state, payload) {\n state.subformQueries = payload;\n },\n SUBFORM_EXT_SCRIPT(state, payload) {\n state.subformExtScript = payload;\n },\n MARKED_FORMS(state, payload) {\n state.markedForms = payload;\n },\n UNMARKED_FORMS(state, payload) {\n state.unmarkedForms = payload;\n },\n UPDATE_CASE_ID(state, payload) {\n state.caseId = payload;\n },\n BULK_REASSIGN(state, payload) {\n state.bulkReassign = payload;\n },\n GRID_ROW_ADDED(state, payload) {\n state.gridRowAdded = payload;\n },\n EXPORTED_FORM_DATA(state, payload) {\n state.exportedForm = payload;\n },\n IMPORT_FORM_SAVED(state, payload) {\n state.importFormSaved = payload;\n },\n EDITING_FORM(state, payload) {\n state.editingForm = payload;\n },\n LOCK_CHECK(state, payload) {\n state.formDeployed = payload.formDeployed;\n state.formLocked = payload.formLocked;\n state.formLockedUser = payload.formLockedUser;\n },\n LOCK_CHECK_ALL(state, payload) {\n state.lockedForms = payload;\n },\n API_DATA(state, payload) {\n state.apiReturnData = payload;\n },\n API_AUTH_CODE(state, payload) {\n state.apiAuthCode = payload;\n },\n VERIDAS_RESP(state, payload) {\n state.veridasResp = payload;\n },\n TASK_COMPLETE(state, payload) {\n state.taskComplete = payload;\n },\n PROMOTE_FORM_DATA(state, payload) {\n state.promoteFormData = payload;\n },\n PROMOTE_FORM_RES(state, payload) {\n state.promoteFormRes = payload;\n }\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}","'use strict';\n\nvar entryFactory = require('../../../factory/EntryFactory'),\n cmdHelper = require('../../../helper/CmdHelper');\n\nvar ModelUtil = require('../../../../../process-builder/lib/base/BaseServices'),\n is = ModelUtil.is,\n getBusinessObject = ModelUtil.getBusinessObject;\n\nvar DOCUMENTATION_TEXT_FORMAT = 'text/plain';\n\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n var findDocumentation = function(docs) {\n return docs.find(function(d) {\n return (d.textFormat || DOCUMENTATION_TEXT_FORMAT) === DOCUMENTATION_TEXT_FORMAT;\n });\n };\n\n var getValue = function(businessObject) {\n return function(element) {\n var documentation = findDocumentation(\n businessObject && businessObject.get('documentation')\n );\n\n var text = documentation && documentation.text || '';\n\n return { documentation: text };\n };\n };\n\n var setValue = function(businessObject) {\n return function(element, values) {\n var text = values.documentation;\n\n var documentation = findDocumentation(\n businessObject && businessObject.get('documentation')\n );\n\n // update or removing existing documentation\n if (documentation) {\n\n if (text) {\n return cmdHelper.updateBusinessObject(element, documentation, { text: values.documentation });\n } else {\n return cmdHelper.removeElementsFromList(element, businessObject, 'documentation', null, [ documentation ]);\n }\n }\n\n if (text) {\n\n // create new documentation entry\n return cmdHelper.addElementsTolist(element, businessObject, 'documentation', [\n bpmnFactory.create('bpmn:Documentation', {\n text: values.documentation\n })\n ]);\n }\n\n // no text and nothing removed -> we are good\n };\n };\n\n // Element Documentation\n var elementDocuEntry = entryFactory.textBox(translate, {\n id: 'documentation',\n label: translate('Element Documentation'),\n modelProperty: 'documentation'\n });\n\n elementDocuEntry.set = setValue(getBusinessObject(element));\n\n elementDocuEntry.get = getValue(getBusinessObject(element));\n\n group.entries.push(elementDocuEntry);\n\n\n var processRef;\n\n // Process Documentation when having a Collaboration Diagram\n if (is(element, 'bpmn:Participant')) {\n\n processRef = getBusinessObject(element).processRef;\n\n // do not show for collapsed Pools/Participants\n if (processRef) {\n var processDocuEntry = entryFactory.textBox(translate, {\n id: 'process-documentation',\n label: translate('Process Documentation'),\n modelProperty: 'documentation'\n });\n\n processDocuEntry.set = setValue(processRef);\n\n processDocuEntry.get = getValue(processRef);\n\n group.entries.push(processDocuEntry);\n }\n }\n\n};\n","module.exports = {\n __depends__: [\n require('./handlers'),\n require('diagram-js/lib/i18n/translate').default\n ],\n __init__: [ 'propertiesPanel' ],\n propertiesPanel: [ 'type', require('./PropertiesPanel') ]\n};\n","'use strict';\n\nvar inputParameters = require('./implementation/InputParameters');\n\nmodule.exports = function(group, element, bpmnFactory, elementTemplates, translate) {\n\n var template = elementTemplates.get(element);\n\n if (template) {\n return;\n }\n\n var inputParametersEntry = inputParameters(element, bpmnFactory, {}, translate);\n\n group.entries = group.entries.concat(inputParametersEntry.entries);\n};\n","'use strict';\n\nvar getBusinessObject = require('../../../../../process-builder/lib/base/BaseServices').getBusinessObject,\n is = require('../../../../../process-builder/lib/base/BaseServices').is;\n\nvar entryFactory = require('../../../factory/EntryFactory');\n\nvar callable = require('./implementation/Callable');\n\nvar cmdHelper = require('../../../helper/CmdHelper');\n\nvar flattenDeep = require('lodash/flattenDeep');\nvar assign = require('lodash/assign');\n\nfunction getCallableType(element) {\n var bo = getBusinessObject(element);\n\n var boCalledElement = bo.get('calledElement'),\n boCaseRef = bo.get('harlequin:caseRef');\n\n var callActivityType = '';\n if (typeof boCalledElement !== 'undefined') {\n callActivityType = 'bpmn';\n } else\n\n if (typeof boCaseRef !== 'undefined') {\n callActivityType = 'cmmn';\n }\n\n return callActivityType;\n}\n\nvar DEFAULT_PROPS = {\n calledElement: undefined,\n 'harlequin:calledElementBinding': 'latest',\n 'harlequin:calledElementVersion': undefined,\n 'harlequin:calledElementTenantId': undefined,\n 'harlequin:variableMappingClass' : undefined,\n 'harlequin:variableMappingDelegateExpression' : undefined,\n 'harlequin:caseRef': undefined,\n 'harlequin:caseBinding': 'latest',\n 'harlequin:caseVersion': undefined,\n 'harlequin:caseTenantId': undefined\n};\n\nmodule.exports = function(group, element, bpmnFactory, translate) {\n\n if (!is(element, 'harlequin:CallActivity')) {\n return;\n }\n\n group.entries.push(entryFactory.selectBox(translate, {\n id : 'callActivity',\n label: translate('CallActivity Type'),\n selectOptions: [\n { name: 'BPMN', value: 'bpmn' },\n { name: 'CMMN', value: 'cmmn' }\n ],\n emptyParameter: true,\n modelProperty: 'callActivityType',\n\n get: function(element, node) {\n return {\n callActivityType: getCallableType(element)\n };\n },\n\n set: function(element, values, node) {\n var type = values.callActivityType;\n\n var props = assign({}, DEFAULT_PROPS);\n\n if (type === 'bpmn') {\n props.calledElement = '';\n }\n else if (type === 'cmmn') {\n props['harlequin:caseRef'] = '';\n }\n\n return cmdHelper.updateProperties(element, props);\n }\n\n }));\n\n group.entries.push(callable(element, bpmnFactory, {\n getCallableType: getCallableType\n }, translate));\n\n group.entries = flattenDeep(group.entries);\n};\n"],"sourceRoot":""}