\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaterialModule } from '../../material.module';\nimport { HeaderComponent } from './header/header/header.component';\nimport { HeaderButtonsComponent } from './header/header-buttons/header-buttons.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { IconSetConfigModule } from '../../tools/icon-set-config/presentation/icon-set-config.module';\nimport { AutosaveModule } from '../../tools/autosave/presentation/autosave.module';\n\n@NgModule({\n declarations: [HeaderComponent, HeaderButtonsComponent, SettingsComponent],\n exports: [HeaderComponent, HeaderButtonsComponent, SettingsComponent],\n imports: [\n CommonModule,\n FormsModule,\n MaterialModule,\n IconSetConfigModule,\n AutosaveModule,\n ],\n})\nexport class WorkbenchModule {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SettingsService {\n private showSettings = new BehaviorSubject(false);\n showSettings$ = this.showSettings.asObservable();\n\n close(): void {\n this.showSettings.next(false);\n }\n\n open(): void {\n this.showSettings.next(true);\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --configuration production` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n version: '3.0.0-dev',\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n"],"names":["SVG_LINK","TEXTSPAN_DESCRIPTION_HEIGHT","TEXTSPAN_TITLE_HEIGHT","X_OFFSET_UTIL","dynamicHeightOffset","createTitleAndDescriptionSVGElement","initDynamicHeightOffset","title","description","min_x","min_y","width","replace","titleElement","createTitle","descriptionElement","createDescription","insertText","text","tempCanvas","document","createElement","ctx","getContext","font","createTextSpans","descriptionParts","split","i","length","yOffset","heightOffset","fontSize","textSpans","words","removeLeadingEmptyStrings","textTag","textSpan","createElementNS","textNode","createTextNode","setAttribute","appendChild","j","firstChild","data","len","measureText","slice","outerHTML","stringArray","firstNonEmptyIndex","findIndex","string","assign","isNumber","omit","domify","assignStyle","query","domQuery","remove","domRemove","innerSVG","Diagram","inherits","BaseViewer","options","DEFAULT_OPTIONS","_container","_createContainer","addProjectLogo","_init","prototype","saveSVG","_saveSVG","_asyncToGenerator","_emit","svg","err","canvas","get","contentNode","getActiveLayer","defsNode","_svg","contents","defs","bbox","getBBox","height","x","y","e","error","apply","arguments","getModules","_modules","clear","getDefinitions","call","destroy","on","events","priority","callback","that","off","attachTo","parentNode","Error","detach","constructor","jquery","resized","container","removeChild","baseModules","modules","additionalModules","staticModules","egon","diagramModules","concat","diagramOptions","type","event","fire","ensureUnit","position","addWarningsToError","warningsAry","warnings","val","open","openPoweredBy","BPMNIO_IMG","LOGO_STYLES","LINK_STYLES","domEvent","img","linkMarkup","linkElement","bottom","right","zIndex","bind","preventDefault","Replace","modeling","_modeling","replaceElement","oldElement","newElementData","newElement","setCenterOfElement","outgoingActivities","outgoing","incomingActivities","incoming","forEach","element","businessObject","source","id","target","Math","ceil","name","replaceShape","ElementTypes","replaceOptions","ReplaceMenuProvider","_dsReplace","$inject","getEntries","entries","includes","ACTOR","actorReplaceOptions","WORKOBJECT","workObjectReplaceOptions","_createEntries","menuEntries","self","definition","entry","_createMenuEntry","push","action","replaceAction","label","className","actionName","iconDictionaryService","initializeReplaceOptions","iconDictionary","actors","getIconsAssignedAs","replaceOption","keysArray","actorType","typeName","toLowerCase","getIconForMenu","workObjects","workObjectType","isArray","generateAutomaticNumber","hexToRGBA","isHexWithAlpha","rgbaToHex","hasPrimaryModifier","dirtyFlagService","initializeContextPadProvider","dirtyFlag","DomainStoryContextPadProvider","connect","translate","elementFactory","create","contextPad","popupMenu","replaceMenuProvider","commandStack","eventBus","rules","registerProvider","_selectedElement","startConnect","context","shape","isOpen","click","addEventListener","executeCommandStack","getContextPadEntries","pickedColor","dispatchEvent","CustomEvent","detail","color","actions","autoActivate","start","addDelete","addColorChange","addConnectWithActivity","addTextAnnotation","addActors","appendAction","addWorkObjects","addChangeWorkObjectTypeMenu","addChangeActorTypeMenu","GROUP","addDeleteGroupWithoutChildren","ACTIVITY","addChangeDirection","TEXTANNOTATION","CONNECTION","getMultiElementContextPadEntries","elements","deleteAllowed","allowed","delete","group","groups","filter","el","otherElements","removeGroup","removeElements","makeDirty","deleteGroup","changeDirection","getReplaceMenuPosition","cursor","colorChange","dragstart","icon","newNumber","execute","Y_OFFSET","diagramContainer","getContainer","pad","getPad","html","diagramRect","getBoundingClientRect","padRect","top","left","appendStart","createShape","hints","getSelectedBusinessObject","oldColor","newColor","selectedBusinessObject","getBusinessObject","isUndefined","reduce","copyProperties","properties","property","removeProperties","LOW_PRIORITY","EgonCopyPaste","propertyCopy","descriptor","oldBusinessObject","isLabel","references","resolveReferences","cache","host","attachedToRef","array","reference","key","newBusinessObject","labelTarget","copyElement","isDefined","isObject","has","sortBy","DISALLOWED_PROPERTIES","PropertyCopy","_eventBus","propertyNames","propertyName","indexOf","sourceElement","targetElement","canCopyProperties","sourceProperty","copiedProperty","copyProperty","canSetProperty","parent","set","$parent","childProperties","childProperty","CopyPasteModule","__depends__","__init__","egonCopyPaste","BaseElementFactory","DomainStoryIdFactory","DEFAULT_LABEL_SIZE","DomainStoryElementFactory","domainStoryIdFactory","elementType","attrs","baseCreate","test","registerId","getId","value","_getCustomElementSize","Object","defineProperty","shapes","__default","Dimensions","idList","generateId","idNumber","fourDigitsId","idSuffix","containsId","floor","random","same","BaseRenderer","Ids","componentsToPath","createLine","append","svgAppend","attr","svgAttr","classes","svgClasses","svgCreate","getNumberStash","addNumberToRegistry","numberBoxDefinitions","calculateTextWidth","countLines","labelPosition","angleBetween","isCustomIcon","isCustomSvgIcon","getScaledPath","RENDERER_IDS","numbers","DEFAULT_COLOR","_iconDictionaryService","_elementRegistryService","_dirtyFlagService","initializeRenderer","elementRegistryService","DomainStoryRenderer","styles","textRenderer","rendererId","next","markers","computeStyle","generateActivityNumber","parentGfx","box","numberStash","semantic","use","number","newRenderedNumber","renderNumber","numberStyle","fitBox","style","getExternalStyle","fill","renderEmbeddedLabel","align","padding","renderLabel","renderExternalLabel","waypoints","lines","startPoint","selected","endPoint","angle","alignment","boxWidth","xStart","abs","textAlign","wordWrap","overflowWrap","hyphens","renderExternalNumber","String","createText","add","setCoordinates","circle","radius","d","stroke","innerHTML","manipulateInnerHTMLXLabel","children","manipulateInnerHTMLYLabel","attributes","nodeValue","offset","result","Number","drawGroup","rect","drawRect","applyColorToCustomSvgIcon","iconSvg","rest","base64Svg","atob","coloredSvg","applyColorToIcon","encodedColoredSvg","btoa","match","some","it","replaceAll","index","substring","getIconSvg","dataURL","drawActor","svgDynamicSizeAttributes","iconSRC","getTypeIconSRC","getIconId","actor","drawWorkObject","workObject","useColorForActivity","strokeWidth","strokeLinejoin","markerEnd","marker","drawActivity","p","adjustForTextOverlap","fixConnectionInHTML","parentElement","baseVal","checkIfPointOverlapsText","point","lineOffset","getLineOffset","objects","getElementsByClassName","data_id","item","getAttribute","object","getElementsByTagName","tspans","tspan","wantedConnection","polylines","drawDSConnection","strokeDasharray","drawAnnotation","textElement","textPathData","xScaleFactor","yScaleFactor","containerWidth","containerHeight","mx","my","drawPath","path","r","rx","ry","createMarker","activityArrow","addMarker","ref","scale","strokeLinecap","viewBox","refX","refY","markerWidth","markerHeight","orient","getWorkObjectPath","rectangle","getRectPath","getGroupPath","getActivityPath","connection","map","original","activityPath","waypoint","getActorPath","draggerGfx","removeMarker","canRender","drawShape","startsWith","search","pos","correctInitialize","getShapePath","drawConnection","every","RuleProvider","is","HIGH_PRIORITY","MIN_SIZE","isGroup","isActor","isWorkObject","isActivity","isConnection","isAnnotation","isBackground","nonExistingOrLabel","canStartConnection","canConnect","canResize","newBounds","lowerLeft","lowerRight","upperRight","canConnectToAnnotation","DomainStoryRules","init","canCreate","addRule","s","undefined","hover","pick","CommandInterceptor","collectionAdd","collectionRemove","reworkGroupElements","DomainStoryUpdater","connectionDocking","updateCustomElement","DOMAINSTORY","customElements","_customElements","updateCustomConnection","newTarget","newSource","copyWaypoints","cropConnection","cropped","createElementsBehavior","getCroppedWaypoints","executed","reverted","ifDomainStoryElement","fn","isDomainStory","LassoTool","SpaceTool","Palette","TextRenderer","DomainStoryPalette","CreateModule","ContextPadModule","CommandStack","UpdateLabelHandler","headlineAndDescriptionUpdateHandler","DSModeling","BaseLayouter","CroppingConnectionDocking","layouter","domainStoryRenderer","paletteProvider","domainStoryRules","domainStoryUpdater","contextPadProvider","updateLabelHandler","svgRemove","MARKER_HIDDEN","MARKER_LABEL_HIDDEN","DSLabelEditingPreview","defaultLayer","getDefaultLayer","absoluteElementBBox","gfx","activeProvider","active","getAbsoluteBBox","dy","newElementHeight","max","autocomplete","getLabel","sanitizeTextForSVGExport","dictionaryService","stashUse","initializeLabelEditingProvider","labelingDictionary","toggleStashUse","focusElement","setTimeout","focus","DSLabelEditingProvider","directEditing","resizeHandles","_canvas","_textRenderer","_updateLabelHandler","activateDirectEdit","complete","isActive","cancel","removeResizers","createAutocomplete","canExecute","isTouch","editingBox","force","activate","getUniqueWorkObjectNames","bounds","getEditingBBox","resizable","autoResize","zoom","defaultStyle","getDefaultStyle","defaultFontSize","defaultLineHeight","lineHeight","fontFamily","fontWeight","minWidth","maxWidth","minHeight","paddingTop","paddingBottom","paddingLeft","paddingRight","update","newLabel","activeContextText","updateLabel","getLabelAttr","getNumberAttr","getNumber","setLabel","setNumber","textNumber","selectPartOfActivity","angleActivity","selectedActivity","linelength","fontsize","input","workObjectNames","closeAllLists","currentFocus","filteredWorkObjectNames","autocompleteList","autocompleteItem","toUpperCase","visibility","onkeydown","getElementById","keyCode","addActive","removeActive","classList","survivor","ChangeSupportModule","ResizeModule","DirectEditingModule","dSlabelEditingProvider","dSlabelEditingPreview","str","amountWaypoints","determinedPosition","xPos","yPos","Array","labelPositionX","labelPositionY","offsetX","scaledAngle","offsetY","Modeling","_commandStack","updateNumber","oldShape","newShape","newData","Connect","Translate","PopupMenu","numberRegistry","multipleNumberRegistry","canvasElementRegistry","initializeNumbering","canvasElementRegistryService","updateMultipleNumberRegistry","activityBusinessObjects","activity","multipleNumberAllowed","boxHeight","fixedOffsetX","fixedOffsetY","angleDependantOffsetX","angleDependantOffsetY","elementActivity","usedNumbers","wantedNumber","activitiesFromActors","getActivitiesFromActors","updateExistingNumbersAtGeneration","updateExistingNumbersAtEditing","sortedActivities","oldMultipleNumberRegistry","currentNumber","setNumberOfActivity","getNumbersAndIDs","iDWithNumber","activities","renderedNumber","setNumberIsMultiple","multi","getNumberRegistry","getMultipleNumberRegistry","elementArray","initializePalette","PaletteProvider","palette","spaceTool","lassoTool","_create","_elementFactory","_spaceTool","_lassoTool","getPaletteEntries","createAction","createListener","shortType","initPalette","config","getCurrentIconConfigurationForMenu","initTypeDictionaries","actorTypes","addCanvasObjectTypes","separator","workObjectTypes","activateSelection","EditorActions","AdditionalEditorActions","injector","invoke","_registerDefaultActions","elementRegistry","selection","handTool","_registerAction","rootElement","getRootElement","select","toggle","currentSelection","KeyboardBindings","AdditionalKeyboardBindings","registerBindings","keyboard","editorActions","addListener","isRegistered","keyEvent","isKey","isCmd","trigger","hasModifier","EditorActionsModule","KeyboardModule","additionalEditorActions","additionalKeyBindings","initializeActivityUpdateHandler","activityUpdateHandler","registerHandler","activity_directionChange","activity_changed","preExecute","oldLabel","oldNumbersWithIDs","oldNumber","revert","revertAutomaticNumberGenerationChange","oldWaypoints","swapSource","newWaypoints","getActivitesFromActors","splice","undoGroupRework","elementUpdateHandler","element_colorChange","removeGroupWithoutChildren","child","titleService","handlerFunction","oldTitle","getTitle","oldDescription","getDescription","updateTitleAndDescription","newTitle","newDescription","DSMassRenameHandler","massRename","relevantElements","confirm","newValue","NULL_DIMENSIONS","setText","postExecute","bo","getLayoutedBounds","resizeShape","numberTarget","delegate","domDelegate","BPMNIO_LOGO_SVG","verticalAlign","LIGHTBOX_STYLES","BACKDROP_STYLES","background","NOTICE_STYLES","transform","boxShadow","display","LIGHTBOX_MARKUP","lightbox","createLightbox","margin","alignSelf","body","TextUtil","DEFAULT_FONT_SIZE","LINE_HEIGHT_RATIO","MIN_TEXT_ANNOTATION_HEIGHT","parseInt","externalStyle","textUtil","getExternalLabelBounds","layoutedDimensions","getDimensions","round","getTextAnnotationBounds","innerShape","superParent","svgShape","querySelector","svgGroup","svgGroupParent","param","rawPath","heightElements","widthElements","abspos","coordinates","heightRatio","widthRatio","heightIndex","widthIndex","format","obj","tokenRegex","all","replacer","objNotationRegex","res","quote","quotedName","isFunc","DomainStoryModule","LabelEditingModule","ModelingModule","MoveCanvasModule","KeyboardMoveModule","ZoomScrollModule","MoveModule","Bendpoints","ConnectionPreview","SpaceToolModule","LassoToolModule","HandToolModule","ConnectModule","SnappingModule","AdditionalShortcuts","DomainStoryModeler","_groupElements","_addCustomShape","customElement","parentId","customAttrs","customShape","parentShape","addShape","_addCustomConnection","addConnection","importCustomElements","addCustomElements","connections","getCustomElements","BehaviorSubject","environment","ColorPickerDirective","BLACK","BLUE","CYAN","DARK_PINK","GREEN","GREY","LIGHT_PINK","LIME","ORANGE","PURPLE","RED","SNACKBAR_DURATION_LONG","SNACKBAR_INFO","YELLOW","i0","ɵɵelement","AppComponent","settingsService","exportService","autosaveService","cd","snackbar","replayService","modelerService","version","skipNextColorUpdate","colorBox","showSettings$","showDescription$","modifierPressed","ctrlKey","metaKey","altKey","stopPropagation","isDomainStoryExportable","downloadDST","downloadSVG","getReplayOn","nextSentence","previousSentence","colorPicker","closeDialog","customEvent","openDialog","duration","panelClass","ngOnInit","postInit","onColorChanged","ngAfterViewInit","loadLatestDraft","detectChanges","onWindowClose","dirty","returnValue","ɵɵdirectiveInject","i1","SettingsService","i2","TitleService","i3","ExportService","i4","AutosaveService","ChangeDetectorRef","i5","MatSnackBar","i6","ReplayService","i7","ModelerService","i8","DirtyFlagService","selectors","viewQuery","AppComponent_Query","rf","ɵɵlistener","AppComponent_beforeunload_HostBindingHandler","$event","ɵɵresolveWindow","ɵɵelementStart","ɵɵtwoWayListener","AppComponent_Template_input_colorPickerChange_1_listener","ɵɵtwoWayBindingSet","AppComponent_Template_input_colorPickerClose_1_listener","ɵɵelementEnd","ɵɵtemplate","AppComponent_Conditional_2_Template","ɵɵtext","ɵɵadvance","ɵɵstyleProp","ɵɵproperty","ɵɵtwoWayProperty","ɵɵconditional","ɵɵpipeBind1","ɵɵclassProp","ɵɵtextInterpolate","APP_INITIALIZER","BrowserModule","MAT_CHECKBOX_DEFAULT_OPTIONS","NoopAnimationsModule","ImportDomainStoryService","LabelDictionaryService","ElementRegistryService","IconSetConfigurationService","UntypedFormBuilder","IconDictionaryService","MaterialModule","ColorPickerModule","IconSetChangedService","WorkbenchModule","DomainModule","AutosaveModule","ExportModule","IconSetConfigModule","ImportModule","LabelDictionaryModule","ModelerModule","TitleModule","DragDirective","AppModule","ngDoBootstrap","app","componentElement","bootstrap","ɵɵinject","provide","useValue","clickAction","useFactory","initialize","deps","useExisting","imports","declarations","configurationService","labelDictionaryService","Configuration","INITIAL_TITLE","INITIAL_DESCRIPTION","INITIAL_ICON_SET_NAME","ICON_SET_CONFIGURATION_KEY","DRAFTS_KEY","VERSION_KEY","DEFAULT_AUTOSAVES_ENABLED","DEFAULT_AUTOSAVES_MAX_DRAFTS","DEFAULT_AUTOSAVES_INTERVAL","SNACKBAR_DURATION","SNACKBAR_DURATION_LONGER","SNACKBAR_SUCCESS","SNACKBAR_ERROR","Dictionary","size","isEmpty","Entry","putEntry","addEach","keys","addBuiltInIcons","builtInIcons","appendDict","dict","found","keyWords","CommonModule","KeyboardShortcutsDialogComponent","exports","MAT_DIALOG_DATA","ɵɵtextInterpolate1","shortCut_r1","shortCut","shortCuts","decls","vars","consts","template","KeyboardShortcutsDialogComponent_Template","ɵɵrepeaterCreate","KeyboardShortcutsDialogComponent_For_4_Template","_forTrack0","ɵɵrepeater","CommandStackService","setCommandStack","payload","factory","ɵfac","providedIn","MatDialogConfig","DialogService","matDialog","dialog","openKeyboardShortcutsDialog","MatDialog","isDirtySubject","dirty$","asObservable","makeClean","fullyInitialized","registry","__implicitroot","setElementRegistry","_elements","createObjectListForDSTDownload","allObjectsFromCanvas","getAllCanvasObjects","getAllGroups","objectList","fillListOfCanvasObjects","canvasElement","unshift","getAllActivities","getAllConnections","allObjects","groupObjects","checkChildForGroup","currentGroup","pop","seenIds","Set","groupObject","isNewId","registryElementNames","sort","activityCanvasA","activityCanvasB","activityNumberA","activityNumberB","getUsedIcons","getAllActors","workobjects","getAllWorkobjects","a","w","co","StorageService","localStorage","setItem","JSON","stringify","json","getItem","parse","MatDialogModule","MatFormFieldModule","MatInputModule","MatToolbarModule","MatExpansionModule","MatCardModule","MatSnackBarModule","MatButtonModule","MatGridListModule","MatButtonToggleModule","MatListModule","MatCheckboxModule","AutosaveOptionsComponent_Conditional_0_Template_button_click_22_listener","ɵɵrestoreView","_r1","activated_r2","ɵɵreference","interval_r3","drafts_r4","ctx_r4","ɵɵnextContext","ɵɵresetView","save","checked","configuration_r6","activated","interval","maxDrafts","AutosaveOptionsComponent","autosaveConfiguration","setConfiguration","AutosaveConfigurationService","AutosaveOptionsComponent_Template","AutosaveOptionsComponent_Conditional_0_Template","tmp_0_0","configuration$","AutosaveSettingsComponent","AutosaveSettingsComponent_Template","AutosavedDraftsComponent_Conditional_7_For_2_Template_button_click_6_listener","draft_r2","$implicit","ctx_r2","loadDraft","date","AutosavedDraftsComponent_Conditional_7_For_2_Template","ɵɵrepeaterTrackByIdentity","drafts","AutosavedDraftsComponent","subscription","autosavedDraftsChanged$","subscribe","initDrafts","loadCurrentDrafts","draft","removeAllDrafts","AutosavedDraftsComponent_Template","AutosavedDraftsComponent_Template_button_click_5_listener","AutosavedDraftsComponent_Conditional_7_Template","ɵɵtextInterpolate2","FormsModule","ReplaySubject","AUTOSAVE_CONFIGURATION_TAG","defaultConfiguration","storageService","configuration","configurationSubject","initializeConfiguration","loadConfiguration","saveConfiguration","Subject","rendererService","iconSetConfigurationService","updateConfiguration","readDrafts","sortDrafts","configFromFile","configAndDST","domain","createIconSetConfiguration","story","dst","actorIcons","getElementsOfType","workObjectIcons","updateIconRegistries","importStory","stopTimer","startTimer","autosaveTimer","clearInterval","setInterval","savedDrafts","newDraft","createDraft","isChanged","isSame","isDraftEmpty","writeDrafts","b","getStory","createConfigAndDST","Date","toString","aDate","bDate","RendererService","ExportDialogData","ExportOption","tooltip","ConfigAndDST","testConfigAndDst","DEFAULT_PADDING","ExportDialogComponent_Conditional_18_Template_input_ngModelChange_2_listener","ctx_r1","animationSpeed","ExportDialogComponent_Conditional_18_Template_span_click_3_listener","onExportAnimatedSvg","ExportDialogComponent_For_26_Template_button_click_0_listener","ɵ$index_50_r4","_r3","$index","doOption","option_r5","ExportDialogComponent","dialogRef","isAnimatedSvgExport","withTitle","useWhiteBackground","close","updateWithTitle","updateUseWhiteBackground","MatDialogRef","ExportDialogComponent_Template","ExportDialogComponent_Template_input_change_7_listener","ExportDialogComponent_Template_input_change_11_listener","ExportDialogComponent_Template_input_ngModelChange_15_listener","ExportDialogComponent_Template_span_click_16_listener","ExportDialogComponent_Conditional_18_Template","ExportDialogComponent_Template_button_click_23_listener","ExportDialogComponent_For_26_Template","sanitizeForDesktop","formatDate","pngService","svgService","htmlPresentationService","dialogService","titleSubscription","title$","descriptionSubscription","description$","ngOnDestroy","unsubscribe","DomainStory","getCurrentConfigurationForExport","getStoryForDownload","filename","getCurrentDateString","downloadFile","datatype","fileEnding","encodeURIComponent","svgData","createSVGData","downloadPNG","svgElements","outerSVGElement","viewport","layerBase","image","extractSVG","prepareSVG","onload","getWidth","getHeight","fillStyle","drawImage","png64","toDataURL","ele","src","onchange","downloadHTMLPresentation","modeler","then","objA","objB","localeCompare","info","openDownloadDialog","SVGDownloadOption","EGNDownloadOption","PNGDownloadOption","HTMLDownloadOption","getModeler","disableClose","autoFocus","PngService","SvgService","HtmlPresentationService","i9","i10","doT","storyCreatorService","viewBoxCoordinates","ViewBoxCoordinate","_this","startReplay","fixActivityMarkersForEachSentence","getCurrentSentenceNumber","content","transition","alert","getMaxSentenceNumber","stopReplay","revealjsTemplate","dots","revealjsData","script","sentences","multiplexSecret","multiplexId","fixMalformedHtmlScript","structuredClone","viewBoxIndex","xLeft","yUp","splitViewBox","dataStart","dataEnd","createBounds","sectionIndex","newDefs","ids","idToReplace","newId","StoryCreatorService","browserSpecs","ua","navigator","userAgent","tem","M","exec","appName","appVersion","URIHashtagFix","fix","browser","findMostOuterElements","includeSpaceForDescription","xRight","yDown","sub","elXLeft","elXRight","elYUp","elYDown","nums","rects","outerRect","calculateWidthAndHeight","insertIndex","join","extraHeight","layerResizers","layerOverlays","removeAttribute","XMLSerializer","serializeToString","cacheData","getEncoded","domainStorySvg","createAnimatedSvg","viewBoxWidth","viewBoxHeight","findIndexToInsertData","svgIndex","backgroundColorWhite","appendDST","traceActivitiesAndCreateStory","usedElementId","storyLength","visibleTimeInPercent","durationOfAnimation","sentenceCounter","currentVisibleTimeInPercent","previousVisibleTimeInPercent","sentence","objectId","idIndex","insertIdIndex","customIcons","people","animal","vehicle","airport","driving","print","calling","computer","speaker","legalSystem","infoDialogs","finance","times","rating","groceries","fingers","entertainment","person","pet","conversation","world","store","theater","business","water","hotel","dining","gasStation","meetingRoom","courthouse","flag","place","car","bus","train","truck","taxi","bike","boat","motorcycle","plane","flightTakeoff","flightLanding","shuttle","walking","traffic","commute","system","printer","folder","email","copyright","dns","settings","cellphone","briefcase","microphone","signal","pencil","sum","headset","mouse","router","scanner","security","desktop","speakerPhone","tablet","receipt","calendar","cloud","assessment","dashboard","pieChart","problem","pictureAsPdf","grid","watch","euro","dollar","alarm","wrench","circleArrows","creditCard","favorite","gavel","blind","hourglass","time","shopping","thumbUp","thumbDown","thumbUpDown","couch","attach","ruler","education","howToReg","viewList","accessible","accountCircle","assignment","battery","book","bug","changeHistory","checkCircle","code","contactMail","crop","dvr","extension","face","fastfood","fingerprint","hand","help","lightbulb","lock","loyalty","pictureInPicture","portrait","rocket","satellite","share","slideshow","star","sun","table","videocam","wysiwyg","addCustomIcons","newIcons","IconConfiguration","allIconDictionary","iconSetName","getDefaultConf","defaultIconSet","actorsDict","workObjectsDict","newCustomIcons","createCustomConf","iconSetConfiguration","IconFilterOptions","DetailsListItemComponent","iconInitiated","ngAfterViewChecked","createIcon","inputs","DetailsListItemComponent_Template","ɵɵpropertyInterpolate","ɵɵsanitizeUrl","IconListItemComponent","iconName","iconSetCustomizationService","isWorkobject","isNone","getIconForName","toggleNone","setAsUnassigned","toggleActor","setAsActor","toggleWorkobject","setAsWorkobject","IconSetCustomizationService","IconListItemComponent_Template","IconListItemComponent_Template_mat_button_toggle_change_7_listener","IconListItemComponent_Template_mat_button_toggle_change_10_listener","IconListItemComponent_Template_mat_button_toggle_change_13_listener","IconSetConfigurationComponent","IconSetDetailsComponent","sanitizeIconName","iconName_r1","NO_FILTER","selectedActors","selectedWorkobjects","allIconNames","allFilteredIconNames","iconSetConfigurationTypes","getIconSetConfiguration","allIcons","getFullDictionary","sortByName","selectedActors$","selectedWorkobjects$","allFiltered","getFilteredNamesForType","loadMinimalIconConfigurationWithDefaultIcons","resetIconSet","loadInitialConfiguration","saveIconSet","startIconUpload","importIcon","files","iconInputFile","reader","FileReader","onloadend","addIMGToIconDictionary","addNewIcon","readAsDataURL","startIconSetImport","importIconSet","iconSetInputFile","importConfiguration","readAsText","filterForActors","ONLY_ACTORS","filterForWorkobjects","ONLY_WORKOBJECTS","filterForUnassigned","ONLY_UNASSIGNED","filterByNameAndType","filteredByKeyWord","filteredByNameAndType","isIconActor","isIconWorkObject","IconSetConfigurationComponent_Template","IconSetConfigurationComponent_Template_button_click_6_listener","IconSetConfigurationComponent_Template_button_click_10_listener","IconSetConfigurationComponent_Template_button_click_14_listener","IconSetConfigurationComponent_Template_input_input_21_listener","IconSetConfigurationComponent_Template_button_click_23_listener","IconSetConfigurationComponent_Template_input_change_26_listener","IconSetConfigurationComponent_Template_button_click_27_listener","IconSetConfigurationComponent_Template_input_change_30_listener","IconSetConfigurationComponent_Template_button_click_31_listener","IconSetConfigurationComponent_Template_button_click_34_listener","IconSetConfigurationComponent_Template_button_click_37_listener","IconSetConfigurationComponent_For_42_Template","IconSetDetailsComponent_For_18_Template_mat_list_item_dragover_0_listener","allowDrop","IconSetDetailsComponent_For_18_Template_mat_list_item_dragstart_0_listener","ɵ$index_30_r3","onDragStart","IconSetDetailsComponent_For_18_Template_mat_list_item_drop_0_listener","ctx_r3","iconName_r5","onDrop","IconSetDetailsComponent_For_25_Template_mat_list_item_dragover_0_listener","_r6","IconSetDetailsComponent_For_25_Template_mat_list_item_dragstart_0_listener","ɵ$index_43_r7","IconSetDetailsComponent_For_25_Template_mat_list_item_drop_0_listener","ctx_r7","iconName_r9","customizationService","draggedList","draggedIndex","iconSetName$","changeName","listName","list","sortedList","setSelectedActors","setSelectedWorkObject","exportIconSet","exportConfiguration","IconSetDetailsComponent_Template","IconSetDetailsComponent_Template_input_input_8_listener","IconSetDetailsComponent_Template_button_click_10_listener","IconSetDetailsComponent_For_18_Template","IconSetDetailsComponent_For_25_Template","ICON_PREFIX","actorIconDictionary","workObjectDictionary","builtInIconsDictionary","iconDictionaryForMenu","iconConfig","allTypes","getCustomIcons","initDictionary","selectedIconNames","dictionary","registerIconForMenu","customConfiguration","allInTypeDictionary","collection","allIn","addIconsFromIconSetConfiguration","dictionaryType","iconTypes","registerIconForType","addIconsToTypeDictionary","unregisterIconForType","extractCustomIconsFromDictionary","addNewIconsToDictionary","elementDictionary","sanitizedName","custom","addIconsToCss","sheetEl","iconStyle","wrapSRCInSVG","sheet","insertRule","cssRules","fullDictionary","appendedDict","getNamesOfIconsAssignedAs","getIconSource","elementOfType","getAllIconDictionary","getActorsDictionary","getWorkObjectsDictionary","getIconConfiguration","setCustomConfiguration","iconSetNameSubject","setIconSetName","configJSONString","customConfig","updateIconSetName","actorDict","workObjectDict","actorKeys","workObjectKeys","configurationName","getCurrentConfiguration","createConfigFromDictionaries","currentConfiguration","getCurrentConfigurationNamesWithoutPrefix","createMinimalConfigurationWithDefaultIcons","minimalConfig","createConfigFromCanvas","actorNames","workobjectNames","newActors","newWorkobjects","fileConfiguration","getStoredIconSetConfiguration","iconSetString","configurationFromFile","checkValidityOfConfiguration","setStoredIconSetConfiguration","configForStorage","allCanvasObjects","iconSetChangedService","allIconListItems","configurationHasChanged","addIconToAllIconList","iconConfigrationChanged","storedIconSetConfiguration","usedIcons","selectedActorNames","selectActor","deselectActor","selectedWorkobjectNames","selectWorkObject","deselectWorkobject","changedIconSet","updateIcon","workobject","updateActorSubject","updateWorkObjectSubject","defaultConfig","workObjectName","actorName","updateAllIconBehaviourSubjects","resetToInitialConfiguration","imported","changedActors","changedWorkobjects","configurationActors","configurationWorkobjects","changedIconSetConfiguration","updateIcons","getAndClearSavedConfiguration","temp","iconDict","getDataUrlForIcon","iconBehaviourSubject","customIconSetConfiguration","rawSrc","importDomainStoryService","onDragOver","evt","onDragLeave","dataTransfer","openUnsavedChangesReminderDialog","performDropImport","hostVars","hostBindings","DragDirective_HostBindings","DragDirective_dragover_HostBindingHandler","DragDirective_dragleave_HostBindingHandler","DragDirective_drop_HostBindingHandler","ImportDialogComponent","fileUrl","doImport","updateUrl","ImportDialogComponent_Template","ImportDialogComponent_Template_input_input_7_listener","ImportDialogComponent_Template_button_click_12_listener","ImportDialogComponent_Template_button_click_14_listener","EventEmitter","UnsavedChangesReminderComponent","importRepairService","importedConfiguration","importedConfigurationEmitter","getConfiguration","performImport","file","import","commandStackChanged","isSupportedFileEnding","importNotDirtyFromUrl","isDirty","importFromUrl","convertToDownloadableUrl","fetch","response","blob","catch","githubPattern","dropboxPattern","isSupported","dstSvgPattern","egnSvgPattern","endsWith","openImportFromUrlDialog","isSVG","isEGN","fileReader","titleText","restoreTitleFromFileName","fileReaderFunction","importSuccessful","importFailed","isSvgFile","isEgnFormat","contentAsJson","extractJsonFromSvgComment","iconSetConfig","iconSetFromFile","storyAndIconSet","extractStoryAndIconSet","removeWhitespacesFromIcons","removeUnnecessaryBpmnProperties","configChanged","checkConfigForChanges","lastElement","importVersionNumber","handleVersionNumber","checkForUnreferencedElementsInActivitiesAndRepair","showBrokenImportDialog","versionPrefix","lastIndexOf","updateCustomElementsPreviousV050","showPreviousV050Dialog","dstText","dstAndConfig","xmlText","newActorKeys","newWorkObjectKeys","currentActorKeys","currentWorkobjectKeys","changed","clearName","setImportedConfigurationAndEmit","message","emit","domainStoryRegex","svgRegex","egnSuffix","dstSuffix","svgSuffix","filenameWithoutDateSuffix","ImportRepairService","objectIDs","activityIndex","$type","$descriptor","di","LabelDictionaryDialogComponent","LabelDictionaryDialogComponent_Template","LabelDictionaryDialogComponent_Template_app_label_dictionary_closeEmitter_3_listener","LabelDictionaryComponent","MatDialogContent","LabelDictionaryComponent_For_6_Template_input_change_2_listener","workobjectEntry_r2","updateWorkobjectEntry","LabelDictionaryComponent_For_13_Template_textarea_change_2_listener","activityEntry_r5","_r4","updateActivityEntry","LabelDictionaryComponent_For_13_Template_textarea_keydown_enter_2_listener","LabelDictionaryComponent_For_13_Template_textarea_keyup_enter_2_listener","LabelDictionaryComponent_For_13_Template_textarea_keyup_escape_2_listener","closeEmitter","createLabelDictionaries","workObjectEntries","getWorkObjectLabels","activityEntries","getActivityLabels","workobjectEntriesSubject","activityEntriesSubject","activityNames","originalActivityNames","originalWorkObjectNames","originalName","massRenameLabels","activityEntry","workobjectEntry","outputs","LabelDictionaryComponent_Template","LabelDictionaryComponent_For_6_Template","LabelDictionaryComponent_For_13_Template","LabelDictionaryComponent_Template_button_click_16_listener","LabelDictionaryComponent_Template_button_click_18_listener","massNamingService","activityLabels","workObjektLabels","openLabelDictionary","isActivityWithLabel","isWorkObjectWithLabel","hasAtLeastOneLabel","massChangeNames","MassNamingService","commandStackService","oldValue","allRelevantObjects","FormControl","FormGroup","Validators","ActivityDialogForm","activityLabel","activityNumber","numberIsAllowedMultipleTimes","nonNullable","required","multipleNumbers","ActivityDialogData","showNumberFields","saveFN","ActivityDialogComponent","form","controls","valueChanges","setValue","onSubmit","patchValue","ActivityDialogComponent_Template","ActivityDialogComponent_Template_input_change_9_listener","ActivityDialogComponent_Template_textarea_keydown_enter_14_listener","ActivityDialogComponent_Template_textarea_keyup_enter_14_listener","ActivityDialogComponent_Template_textarea_keyup_escape_14_listener","ActivityDialogComponent_Template_button_click_16_listener","ActivityDialogComponent_Template_button_click_18_listener","ReactiveFormsModule","positionsMatch","massRenameHandler","InitializerService","propagateDomainStoryModelerClassesToServices","initializeDomainStoryModelerEventHandlers","initiateEventBusListeners","activityDoubleClick","renderedNumberRegistry","allActivities","htmlCanvas","transformX","transformY","zoomX","zoomY","clickX","originalEvent","clickY","parseFloat","currentNum","tx","ty","tNumber","elementX","elementY","pasteColor","pasteText","pasteHeight","elementsKey","shift","saveActivityInputLabel","activityData","hasNumber","initializerService","checkCurrentVersion","exportArtifacts","debounce","window","startDebounce","onAction","restart","domainStory","currentStory","timeout","timer","clearTimeout","encoded","renderStory","reset","configurationChange","c","NUMBER_BACKGROUND_COLOR","NUMBER_COLOR","STROKE_WIDTH","HIGHLIGHT_NUMBER_BACKGROUND_COLOR","HIGHLIGHT_NUMBER_COLOR","HIGHLIGHT_STROKE_WIDTH","CONNECTION_PATH_DOM_SELECTOR","DomManipulationService","showAll","removeHighlights","domObject","showSentence","replaySentence","notShown","getAllNotShown","highlightSentence","o","getNumberDomForActivity","numberText","previousSibling","numberBackgroundDom","numberTextDom","allConnections","activityDomObject","connectionDomObject","sentenceObjects","shownElements","notShownElements","domManipulationService","currentSentence","maxSentenceNumber","replayOnSubject","currentSentence$","maxSentenceNumber$","replayOn$","setReplayState","state","isReplayable","initializeReplay","showCurrentSentence","checkSequenceNumbers","missingSentences","getMissingSentences","getValue","tracedActivityMap","tracedActivityMapKeys","tracedItem","storyIndex","createSentence","addGroupsToLastSentence","tracedActivityMapKey","tracedActivity","getSentenceObjects","highlightedElements","t","highlightedObjects","allActivityNumbersFromActors","allActivityNumbers","highestSequenceNumber","actorsAndWorkObjects","actorTextAnnotations","parallelSentence","parallelSentenceTargetObjects","firstTarget","checkTarget","activityTarget","addTextAnnotationsForActorOrGroup","ta","objectTextAnnotations","annotationsForGroups","g","TitleDialogForm","titel","TitleDialogComponent","getRawValue","TitleDialogComponent_Template","TitleDialogComponent_Template_textarea_keydown_enter_10_listener","TitleDialogComponent_Template_textarea_keyup_enter_10_listener","TitleDialogComponent_Template_textarea_keyup_escape_10_listener","TitleDialogComponent_Template_button_click_12_listener","TitleDialogComponent_Template_button_click_14_listener","titleSubject","descriptionSubject","showDescriptionSubject","openHeaderDialog","allowUndo","fireTitleAndDescriptionUpdate","updateTitle","updateDescription","inputTitle","trim","setShowDescription","show","getVersion","hasTitleOrDescription","MatButton","MatDialogActions","continueAction","standalone","features","ɵɵStandaloneFeature","UnsavedChangesReminderComponent_Template","UnsavedChangesReminderComponent_Template_button_click_9_listener","UnsavedChangesReminderComponent_Template_button_click_11_listener","rgba","isValidHex","red","padStart","green","blue","alpha","hex","getChunksFromString","st","chunkSize","RegExp","convertHexUnitTo256","hexStr","repeat","getAlphafloat","EPSILON","hexArr","degrees","radians","PI","quadrant","adjacent","opposite","atan2","Point","reg","nameWithoutFileEnding","combineLatest","HeaderButtonsComponent_Conditional_0_Template_button_click_1_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_11_listener","HeaderButtonsComponent_Conditional_0_Template_input_change_16_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_17_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_22_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_27_listener","newStory","HeaderButtonsComponent_Conditional_0_Template_button_click_32_listener","openSettings","HeaderButtonsComponent_Conditional_0_Template_button_click_37_listener","showKeyboardShortCuts","hasDomainStory","hasTitle","HeaderButtonsComponent_Conditional_1_Template_button_click_1_listener","HeaderButtonsComponent_Conditional_1_Template_button_click_6_listener","HeaderButtonsComponent_Conditional_1_Template_button_click_11_listener","sentenceDescription$","HeaderButtonsComponent","isReplaying","pipe","count","HeaderButtonsComponent_Template","HeaderButtonsComponent_Conditional_0_Template","HeaderButtonsComponent_Conditional_1_Template","HeaderComponent_Conditional_11_Template_button_click_0_listener","HeaderComponent_Conditional_13_Template_button_click_0_listener","HeaderComponent","importService","renderService","isReplay$","isDirty$","showDescription","createNewDomainStory","onImport","HeaderComponent_Template","HeaderComponent_Template_span_click_3_listener","HeaderComponent_Template_button_click_6_listener","HeaderComponent_Conditional_11_Template","HeaderComponent_Conditional_13_Template","HeaderComponent_Template_app_header_buttons_import_16_listener","HeaderComponent_Template_app_header_buttons_openSettings_16_listener","HeaderComponent_Template_app_header_buttons_startReplay_16_listener","HeaderComponent_Template_app_header_buttons_stopReplay_16_listener","HeaderComponent_Template_app_header_buttons_nextSentence_16_listener","HeaderComponent_Template_app_header_buttons_previousSentence_16_listener","HeaderComponent_Template_app_header_buttons_newStory_16_listener","HeaderComponent_Template_app_header_buttons_showKeyboardShortCuts_16_listener","HeaderComponent_Template_app_header_buttons_openLabelDictionary_16_listener","HeaderComponent_Template_app_header_buttons_openDownloadDialog_16_listener","HeaderComponent_Template_app_header_buttons_openImportFromUrlDialog_16_listener","HeaderComponent_Conditional_19_Template","SettingsComponent","showAutosaveSettings","showIconSetCustomization","savedConfiguration","openGeneralSettings","openIconSetCustomization","SettingsComponent_Template","SettingsComponent_Template_button_click_3_listener","SettingsComponent_Template_button_click_7_listener","SettingsComponent_Template_button_click_11_listener","SettingsComponent_Conditional_15_Template","SettingsComponent_Conditional_17_Template","showSettings","production","enableProdMode","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","console"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}
\ No newline at end of file
+{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/tools/export/services/exportUtil.js","./src/app/tools/modeler/diagram-js/BaseViewer.js","./src/app/tools/modeler/diagram-js/features/change-icon/replace.js","./src/app/tools/modeler/diagram-js/features/change-icon/replaceMenuProvider.js","./src/app/tools/modeler/diagram-js/features/change-icon/replaceOptions.js","./src/app/tools/modeler/diagram-js/features/context-pad/domainStoryContextPadProvider.js","./src/app/tools/modeler/diagram-js/features/copyPaste/EgonCopyPaste.js","./src/app/tools/modeler/diagram-js/features/copyPaste/PropertyCopy.js","./src/app/tools/modeler/diagram-js/features/copyPaste/index.js","./src/app/tools/modeler/diagram-js/features/domainStoryElementFactory.js","./src/app/tools/modeler/diagram-js/features/domainStoryIdFactory.js","./src/app/tools/modeler/diagram-js/features/domainStoryRenderer.js","./src/app/tools/modeler/diagram-js/features/domainStoryRules.js","./src/app/tools/modeler/diagram-js/features/domainStoryUpdater.js","./src/app/tools/modeler/diagram-js/features/index.js","./src/app/tools/modeler/diagram-js/features/labeling/dsLabelEditingPreview.js","./src/app/tools/modeler/diagram-js/features/labeling/dsLabelEditingProvider.js","./src/app/tools/modeler/diagram-js/features/labeling/dsLabelUtil.js","./src/app/tools/modeler/diagram-js/features/labeling/index.js","./src/app/tools/modeler/diagram-js/features/labeling/position.js","./src/app/tools/modeler/diagram-js/features/modeling/dSModeling.js","./src/app/tools/modeler/diagram-js/features/modeling/index.js","./src/app/tools/modeler/diagram-js/features/numbering/numbering.js","./src/app/tools/modeler/diagram-js/features/palette/domainStoryPalette.js","./src/app/tools/modeler/diagram-js/features/shortcuts/AdditionalEditorActions.js","./src/app/tools/modeler/diagram-js/features/shortcuts/AdditionalKeyboardBindings.js","./src/app/tools/modeler/diagram-js/features/shortcuts/index.js","./src/app/tools/modeler/diagram-js/features/updateHandler/activityUpdateHandlers.js","./src/app/tools/modeler/diagram-js/features/updateHandler/elementUpdateHandler.js","./src/app/tools/modeler/diagram-js/features/updateHandler/headlineAndDescriptionUpdateHandler.js","./src/app/tools/modeler/diagram-js/features/updateHandler/massRenameHandler.js","./src/app/tools/modeler/diagram-js/features/updateHandler/updateLabelHandler.js","./src/app/tools/modeler/diagram-js/features/util/PoweredByUtil.js","./src/app/tools/modeler/diagram-js/features/util/TextRenderer.js","./src/app/tools/modeler/diagram-js/features/util/util.js","./src/app/tools/modeler/diagram-js/index.js","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/domain/entities/configuration.ts","./src/app/domain/entities/constants.ts","./src/app/domain/entities/dictionary.ts","./src/app/domain/entities/elementTypes.ts","./src/app/domain/presentation/domain.module.ts","./src/app/domain/presentation/keyboard-shortcuts-dialog/keyboard-shortcuts/keyboard-shortcuts-dialog.component.ts","./src/app/domain/presentation/keyboard-shortcuts-dialog/keyboard-shortcuts/keyboard-shortcuts-dialog.component.html","./src/app/domain/services/command-stack.service.ts","./src/app/domain/services/dialog.service.ts","./src/app/domain/services/dirty-flag.service.ts","./src/app/domain/services/element-registry.service.ts","./src/app/domain/services/storage.service.ts","./src/app/material.module.ts","./src/app/tools/autosave/presentation/AutosaveOptions/autosave-options.component.ts","./src/app/tools/autosave/presentation/AutosaveOptions/autosave-options.component.html","./src/app/tools/autosave/presentation/AutosaveSettings/autosave-settings.component.ts","./src/app/tools/autosave/presentation/AutosaveSettings/autosave-settings.component.html","./src/app/tools/autosave/presentation/AutosavedDrafts/autosaved-drafts.component.ts","./src/app/tools/autosave/presentation/AutosavedDrafts/autosaved-drafts.component.html","./src/app/tools/autosave/presentation/autosave.module.ts","./src/app/tools/autosave/services/autosave-configuration.service.ts","./src/app/tools/autosave/services/autosave.service.ts","./src/app/tools/export/domain/dialog/exportDialogData.ts","./src/app/tools/export/domain/export/configAndDst.ts","./src/app/tools/export/domain/export/exportConstants.ts","./src/app/tools/export/presentation/export-dialog/export-dialog.component.ts","./src/app/tools/export/presentation/export-dialog/export-dialog.component.html","./src/app/tools/export/presentation/export.module.ts","./src/app/tools/export/services/export.service.ts","./src/app/tools/export/services/html-presentation.service.ts","./src/app/tools/export/services/png.service.ts","./src/app/tools/export/services/svg.service.ts","./src/app/tools/icon-set-config/domain/allIcons.ts","./src/app/tools/icon-set-config/domain/iconConfiguration.ts","./src/app/tools/icon-set-config/domain/iconFilterOptions.ts","./src/app/tools/icon-set-config/presentation/details-list-item/details-list-item.component.ts","./src/app/tools/icon-set-config/presentation/details-list-item/details-list-item.component.html","./src/app/tools/icon-set-config/presentation/icon-list-item/icon-list-item.component.ts","./src/app/tools/icon-set-config/presentation/icon-list-item/icon-list-item.component.html","./src/app/tools/icon-set-config/presentation/icon-set-config.module.ts","./src/app/tools/icon-set-config/presentation/icon-set-configuration/icon-set-configuration.component.ts","./src/app/tools/icon-set-config/presentation/icon-set-configuration/icon-set-configuration.component.html","./src/app/tools/icon-set-config/presentation/icon-set-details/icon-set-details.component.ts","./src/app/tools/icon-set-config/presentation/icon-set-details/icon-set-details.component.html","./src/app/tools/icon-set-config/services/icon-dictionary.service.ts","./src/app/tools/icon-set-config/services/icon-set-configuration.service.ts","./src/app/tools/icon-set-config/services/icon-set-customization.service.ts","./src/app/tools/import/directive/dragDrop.directive.ts","./src/app/tools/import/presentation/import-dialog/import-dialog.component.ts","./src/app/tools/import/presentation/import-dialog/import-dialog.component.html","./src/app/tools/import/presentation/import.module.ts","./src/app/tools/import/services/import-domain-story.service.ts","./src/app/tools/import/services/import-repair.service.ts","./src/app/tools/label-dictionary/presentation/label-dictionary-dialog/label-dictionary-dialog.component.ts","./src/app/tools/label-dictionary/presentation/label-dictionary-dialog/label-dictionary-dialog.component.html","./src/app/tools/label-dictionary/presentation/label-dictionary.module.ts","./src/app/tools/label-dictionary/presentation/label-dictionary/label-dictionary.component.ts","./src/app/tools/label-dictionary/presentation/label-dictionary/label-dictionary.component.html","./src/app/tools/label-dictionary/services/label-dictionary.service.ts","./src/app/tools/label-dictionary/services/mass-naming.service.ts","./src/app/tools/modeler/domain/activity-dialog-form.ts","./src/app/tools/modeler/domain/activityDialogData.ts","./src/app/tools/modeler/presentation/activity-dialog/activity-dialog.component.ts","./src/app/tools/modeler/presentation/activity-dialog/activity-dialog.component.html","./src/app/tools/modeler/presentation/modeler.module.ts","./src/app/tools/modeler/services/initializer.service.ts","./src/app/tools/modeler/services/modeler.service.ts","./src/app/tools/modeler/services/renderer.service.ts","./src/app/tools/replay/domain/replayConstants.ts","./src/app/tools/replay/services/dom-manipulation.service.ts","./src/app/tools/replay/services/replay.service.ts","./src/app/tools/replay/services/story-creator.service.ts","./src/app/tools/title/domain/title-dialog-form.ts","./src/app/tools/title/presentation/title-dialog/title-dialog.component.ts","./src/app/tools/title/presentation/title-dialog/title-dialog.component.html","./src/app/tools/title/presentation/title.module.ts","./src/app/tools/title/services/title.service.ts","./src/app/tools/unsavedChangesReminder/presentation/unsavedChangesReminder-dialog/unsaved-changes-reminder/unsaved-changes-reminder.component.ts","./src/app/tools/unsavedChangesReminder/presentation/unsavedChangesReminder-dialog/unsaved-changes-reminder/unsaved-changes-reminder.component.html","./src/app/utils/colorConverter.ts","./src/app/utils/mathExtensions.ts","./src/app/utils/sanitizer.ts","./src/app/workbench/presentation/header/header-buttons/header-buttons.component.ts","./src/app/workbench/presentation/header/header-buttons/header-buttons.component.html","./src/app/workbench/presentation/header/header/header.component.ts","./src/app/workbench/presentation/header/header/header.component.html","./src/app/workbench/presentation/settings/settings.component.ts","./src/app/workbench/presentation/settings/settings.component.html","./src/app/workbench/presentation/workbench.module.ts","./src/app/workbench/services/settings/settings.service.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import {\n SVG_LINK,\n TEXTSPAN_DESCRIPTION_HEIGHT,\n TEXTSPAN_TITLE_HEIGHT,\n X_OFFSET_UTIL,\n} from \"../domain/export/exportConstants\";\n\nlet dynamicHeightOffset = 0;\n\n// Has to be js File so we can access te correct non-standard HTML-Properties without excessive usage of ts-ignore\nexport function createTitleAndDescriptionSVGElement(\n initDynamicHeightOffset,\n title,\n description,\n min_x,\n min_y,\n width,\n) {\n dynamicHeightOffset = initDynamicHeightOffset;\n\n title = title.replace(\"<\", \"\").replace(\">\", \"\");\n\n let titleElement = createTitle(title, width);\n\n let descriptionElement = \"\";\n if (description) {\n descriptionElement = createDescription(description, width);\n }\n\n // to display the title and description in the SVG-file, we need to add a container for our text-elements\n\n let insertText =\n '' +\n titleElement +\n descriptionElement +\n \"\";\n return { insertText, dynamicHeightOffset: dynamicHeightOffset };\n}\n\nfunction createTitle(text, width) {\n let tempCanvas = document.createElement(\"canvas\");\n let ctx = tempCanvas.getContext(\"2d\");\n ctx.font = \"30px Arial\";\n\n return createTextSpans(text, width, ctx, 10, TEXTSPAN_TITLE_HEIGHT, 30);\n}\n\nfunction createDescription(text, width) {\n let description = \"\";\n let descriptionParts = text.split(\" \");\n\n let tempCanvas = document.createElement(\"canvas\");\n let ctx = tempCanvas.getContext(\"2d\");\n ctx.font = \"12px Arial\";\n\n for (let i = 0; i < descriptionParts.length; i++) {\n description += createTextSpans(\n descriptionParts[i],\n width,\n ctx,\n 0,\n TEXTSPAN_DESCRIPTION_HEIGHT,\n 12,\n );\n }\n return description;\n}\n\nfunction createTextSpans(text, width, ctx, yOffset, heightOffset, fontSize) {\n let textSpans = \"\";\n let words = text.split(\" \");\n\n // every leading empty strings in the array must be removed, otherwise the text elements\n // will not be filled with text\n words = removeLeadingEmptyStrings(words);\n\n let textTag =\n '';\n\n let textSpan = document.createElementNS(SVG_LINK, \"tspan\");\n let textNode = document.createTextNode(words[0]);\n\n textSpan.setAttribute(\"x\", X_OFFSET_UTIL);\n textSpan.setAttribute(\"y\", yOffset + dynamicHeightOffset);\n textSpan.setAttribute(\"font-size\", fontSize);\n textSpan.appendChild(textNode);\n\n for (let j = 1; j < words.length; j++) {\n if (textSpan.firstChild && textSpan.firstChild.data) {\n let len = textSpan.firstChild.data.length;\n textNode.data += \" \" + words[j];\n\n if (ctx.measureText(textNode.data).width > width - 16) {\n dynamicHeightOffset += heightOffset;\n textSpan.firstChild.data = textSpan.firstChild.data.slice(0, len); // remove overflow word\n\n textSpans += textTag + textSpan.outerHTML + \"\"; // append line\n\n // create new textspan for line break\n textSpan = document.createElementNS(SVG_LINK, \"tspan\");\n textNode = document.createTextNode(words[j]);\n textSpan.setAttribute(\"x\", X_OFFSET_UTIL);\n textSpan.setAttribute(\"y\", yOffset + dynamicHeightOffset);\n textSpan.appendChild(textNode);\n }\n }\n }\n dynamicHeightOffset += heightOffset;\n\n textSpans += textTag + textSpan.outerHTML + \"\";\n return textSpans;\n}\n\nfunction removeLeadingEmptyStrings(stringArray) {\n const firstNonEmptyIndex = stringArray.findIndex((string) => string !== \"\");\n return stringArray.slice(\n firstNonEmptyIndex === -1 ? stringArray.length : firstNonEmptyIndex,\n );\n}\n","/**\n * The code in the area\n * must not be changed.\n *\n * @see http://bpmn.io/license for more information.\n */\nimport { assign, isNumber, omit } from \"min-dash\";\n\nimport {\n domify,\n assignStyle,\n query as domQuery,\n remove as domRemove,\n} from \"min-dom\";\n\nimport { innerSVG } from \"tiny-svg\";\n\nimport Diagram from \"diagram-js\";\n\nimport inherits from \"inherits-browser\";\n\nexport default function BaseViewer(options) {\n options = assign({}, DEFAULT_OPTIONS, options);\n\n this._container = this._createContainer(options);\n\n /* */\n addProjectLogo(this._container);\n /* */\n\n this._init(this._container, options);\n}\n\ninherits(BaseViewer, Diagram);\n\nBaseViewer.prototype.saveSVG = async function saveSVG() {\n this._emit(\"saveSVG.start\");\n\n let svg, err;\n\n try {\n const canvas = this.get(\"canvas\");\n\n const contentNode = canvas.getActiveLayer(),\n defsNode = domQuery(\":scope > defs\", canvas._svg);\n\n const contents = innerSVG(contentNode),\n defs = defsNode ? \"\" + innerSVG(defsNode) + \"\" : \"\";\n\n const bbox = contentNode.getBBox();\n\n svg =\n '\\n' +\n \"\\n\" +\n '\\n' +\n '\";\n } catch (e) {\n err = e;\n }\n\n this._emit(\"saveSVG.done\", {\n error: err,\n svg: svg,\n });\n\n if (err) {\n throw err;\n }\n\n return { svg };\n};\n\nBaseViewer.prototype.getModules = function () {\n return this._modules;\n};\n\nBaseViewer.prototype.clear = function () {\n if (!this.getDefinitions()) {\n // no diagram to clear\n return;\n }\n\n // remove drawn elements\n Diagram.prototype.clear.call(this);\n};\n\nBaseViewer.prototype.destroy = function () {\n // diagram destroy\n Diagram.prototype.destroy.call(this);\n\n // dom detach\n domRemove(this._container);\n};\n\nBaseViewer.prototype.on = function (events, priority, callback, that) {\n return this.get(\"eventBus\").on(events, priority, callback, that);\n};\n\nBaseViewer.prototype.off = function (events, callback) {\n this.get(\"eventBus\").off(events, callback);\n};\n\nBaseViewer.prototype.attachTo = function (parentNode) {\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 parentNode.appendChild(this._container);\n\n this._emit(\"attach\", {});\n\n this.get(\"canvas\").resized();\n};\n\nBaseViewer.prototype.detach = function () {\n const container = this._container,\n parentNode = container.parentNode;\n\n if (!parentNode) {\n return;\n }\n this._emit(\"detach\", {});\n\n parentNode.removeChild(container);\n};\n\nBaseViewer.prototype._init = function (container, options) {\n const baseModules = options.modules || this.getModules(options),\n additionalModules = options.additionalModules || [],\n staticModules = [\n {\n egon: [\"value\", this],\n },\n ];\n\n const diagramModules = [].concat(\n staticModules,\n baseModules,\n additionalModules,\n );\n\n const diagramOptions = assign(omit(options, [\"additionalModules\"]), {\n canvas: assign({}, options.canvas, { container: container }),\n modules: diagramModules,\n });\n\n // invoke diagram constructor\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 const container = domify('');\n\n assignStyle(container, {\n width: ensureUnit(options.width),\n height: ensureUnit(options.height),\n position: options.position,\n });\n\n return container;\n};\n\nBaseViewer.prototype._modules = [];\n\n// helpers ///////////////\n\nfunction addWarningsToError(err, warningsAry) {\n err.warnings = warningsAry;\n return err;\n}\n\nconst DEFAULT_OPTIONS = {\n width: \"100%\",\n height: \"100%\",\n position: \"relative\",\n};\n\n/**\n * Ensure the passed argument is a proper unit (defaulting to px)\n */\nfunction ensureUnit(val) {\n return val + (isNumber(val) ? \"px\" : \"\");\n}\n\nimport {\n open as openPoweredBy,\n BPMNIO_IMG,\n LOGO_STYLES,\n LINK_STYLES,\n} from \"./features/util/PoweredByUtil\";\n\nimport { event as domEvent } from \"min-dom\";\n\n/**\n * Adds the project logo to the diagram container as\n * required by the bpmn.io license.\n *\n * @see http://bpmn.io/license\n *\n * @param {Element} container\n */\nfunction addProjectLogo(container) {\n const img = BPMNIO_IMG;\n\n const linkMarkup =\n '\" +\n img +\n \"\";\n\n const linkElement = domify(linkMarkup);\n\n assignStyle(domQuery(\"svg\", linkElement), LOGO_STYLES);\n assignStyle(linkElement, LINK_STYLES, {\n position: \"absolute\",\n bottom: \"15px\",\n right: \"15px\",\n zIndex: \"100\",\n });\n\n container.appendChild(linkElement);\n\n domEvent.bind(linkElement, \"click\", function (event) {\n openPoweredBy();\n\n event.preventDefault();\n });\n}\n\n/* */\n","\"use strict\";\n\nimport { assign } from \"min-dash\";\n\n/**\n * service that allow replacing of elements.\n */\nexport default function Replace(modeling) {\n this._modeling = modeling;\n}\n\n/**\n * @param {Element} oldElement - element to be replaced\n * @param {Object} newElementData - containing information about the new Element, for example height, width, type.\n * @param modeling\n */\nfunction replaceElement(oldElement, newElementData, modeling) {\n let newElement = setCenterOfElement(newElementData, oldElement, modeling);\n let outgoingActivities = newElement.outgoing;\n let incomingActivities = newElement.incoming;\n\n outgoingActivities.forEach((element) => {\n element.businessObject.source = newElement.id;\n });\n\n incomingActivities.forEach((element) => {\n element.businessObject.target = newElement.id;\n });\n\n return newElement;\n}\n\nfunction setCenterOfElement(newElementData, oldElement, modeling) {\n newElementData.x = Math.ceil(\n oldElement.x + (newElementData.width || oldElement.width) / 2,\n );\n newElementData.y = Math.ceil(\n oldElement.y + (newElementData.height || oldElement.height) / 2,\n );\n\n assign(newElementData, { name: oldElement.businessObject.name });\n\n return modeling.replaceShape(oldElement, newElementData, {});\n}\n\nReplace.prototype.replaceElement = replaceElement;\n","\"use strict\";\n\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport Replace from \"./replace\";\nimport * as replaceOptions from \"./replaceOptions\";\n\nimport { forEach } from \"min-dash\";\n\n/**\n * This module is an element agnostic replace menu provider for the popup menu.\n */\nexport default function ReplaceMenuProvider(modeling) {\n this._dsReplace = new Replace(modeling);\n this._modeling = modeling;\n}\n\nReplaceMenuProvider.$inject = [\"modeling\"];\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 */\nReplaceMenuProvider.prototype.getEntries = function (element) {\n let entries;\n if (element.type.includes(ElementTypes.ACTOR)) {\n entries = replaceOptions.actorReplaceOptions(element.type);\n } else if (element.type.includes(ElementTypes.WORKOBJECT)) {\n entries = replaceOptions.workObjectReplaceOptions(element.type);\n }\n\n return this._createEntries(element, entries);\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 */\nReplaceMenuProvider.prototype._createEntries = function (\n element,\n replaceOptions,\n) {\n let menuEntries = [];\n\n let self = this;\n\n forEach(replaceOptions, function (definition) {\n let entry = self._createMenuEntry(definition, element);\n\n menuEntries.push(entry);\n });\n\n return menuEntries;\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 */\nReplaceMenuProvider.prototype._createMenuEntry = function (\n definition,\n element,\n action,\n) {\n let replaceElement = this._dsReplace.replaceElement;\n let modeling = this._modeling;\n let replaceAction = function () {\n return replaceElement(element, definition.target, modeling);\n };\n\n action = action || replaceAction;\n\n return {\n label: definition.label,\n className: definition.className,\n id: definition.actionName,\n action: action,\n };\n};\n","import { ElementTypes } from \"src/app/domain/entities/elementTypes\";\n\nlet iconDictionaryService;\n\nexport function initializeReplaceOptions(iconDictionary) {\n iconDictionaryService = iconDictionary;\n}\n\nexport function actorReplaceOptions(name) {\n const actors = iconDictionaryService.getIconsAssignedAs(ElementTypes.ACTOR);\n\n let replaceOption = {};\n let i = 0;\n\n actors.keysArray().forEach((actorType) => {\n if (!name.includes(actorType)) {\n const typeName = actorType;\n replaceOption[i] = {\n label: \"Change to \" + typeName,\n actionName: \"replace-with-actor-\" + typeName.toLowerCase(),\n className: iconDictionaryService.getIconForMenu(\n ElementTypes.ACTOR,\n actorType,\n ),\n target: {\n type: `${ElementTypes.ACTOR}${actorType}`,\n },\n };\n i++;\n }\n });\n return replaceOption;\n}\n\nexport function workObjectReplaceOptions(name) {\n const workObjects = iconDictionaryService.getIconsAssignedAs(\n ElementTypes.WORKOBJECT,\n );\n\n let replaceOption = {};\n let i = 0;\n\n workObjects.keysArray().forEach((workObjectType) => {\n if (!name.includes(workObjectType)) {\n const typeName = workObjectType;\n replaceOption[i] = {\n label: \"Change to \" + typeName,\n actionName: \"replace-with-actor-\" + typeName,\n className: iconDictionaryService.getIconForMenu(\n ElementTypes.WORKOBJECT,\n workObjectType,\n ),\n target: {\n type: `${ElementTypes.WORKOBJECT}${workObjectType}`,\n },\n };\n }\n i++;\n });\n return replaceOption;\n}\n","\"use strict\";\n\nimport { assign, isArray } from \"min-dash\";\nimport { generateAutomaticNumber } from \"../numbering/numbering\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport {\n hexToRGBA,\n isHexWithAlpha,\n rgbaToHex,\n} from \"../../../../../utils/colorConverter\";\nimport { hasPrimaryModifier } from \"diagram-js/lib/util/Mouse\";\n\nlet dirtyFlagService;\nlet iconDictionaryService;\n\nexport function initializeContextPadProvider(dirtyFlag, iconDictionary) {\n dirtyFlagService = dirtyFlag;\n iconDictionaryService = iconDictionary;\n}\n\nexport default function DomainStoryContextPadProvider(\n connect,\n translate,\n elementFactory,\n create,\n canvas,\n contextPad,\n popupMenu,\n replaceMenuProvider,\n commandStack,\n eventBus,\n modeling,\n rules,\n) {\n contextPad.registerProvider(this);\n popupMenu.registerProvider(\"ds-replace\", replaceMenuProvider);\n\n let _selectedElement;\n let startConnect;\n\n eventBus.on(\"create.end\", 250, function (event) {\n var context = event.context,\n shape = context.shape;\n\n if (!hasPrimaryModifier(event) || !contextPad.isOpen(shape)) {\n return;\n }\n\n var entries = contextPad.getEntries(shape);\n\n if (entries.replace) {\n entries.replace.action.click(event, shape);\n }\n });\n\n document.addEventListener(\"pickedColor\", (event) => {\n if (_selectedElement) {\n executeCommandStack(event);\n }\n });\n\n this.getContextPadEntries = function (element) {\n _selectedElement = element;\n\n let pickedColor = _selectedElement.businessObject.pickedColor;\n\n if (isHexWithAlpha(pickedColor)) {\n pickedColor = hexToRGBA(pickedColor);\n }\n document.dispatchEvent(\n new CustomEvent(\"defaultColor\", {\n detail: {\n color: pickedColor ?? \"#000000\",\n },\n }),\n );\n\n let actions = {};\n\n startConnect = function (event, element, autoActivate) {\n connect.start(event, element, autoActivate);\n };\n\n if (element.type.includes(ElementTypes.WORKOBJECT)) {\n addDelete(actions, element);\n addColorChange(actions);\n addConnectWithActivity(actions, startConnect);\n addTextAnnotation(actions);\n addActors(appendAction, actions);\n addWorkObjects(appendAction, actions);\n addChangeWorkObjectTypeMenu(actions);\n } else if (element.type.includes(ElementTypes.ACTOR)) {\n addDelete(actions, element);\n addColorChange(actions);\n addConnectWithActivity(actions, startConnect);\n addTextAnnotation(actions);\n addWorkObjects(appendAction, actions);\n addChangeActorTypeMenu(actions);\n } else if (element.type.includes(ElementTypes.GROUP)) {\n addTextAnnotation(actions);\n addDeleteGroupWithoutChildren(actions, element);\n addColorChange(actions);\n } else if (element.type.includes(ElementTypes.ACTIVITY)) {\n addChangeDirection(actions);\n addColorChange(actions);\n addDelete(actions, element);\n } else if (element.type.includes(ElementTypes.TEXTANNOTATION)) {\n addDelete(actions, element);\n addColorChange(actions);\n } else if (element.type.includes(ElementTypes.CONNECTION)) {\n addDelete(actions, element);\n }\n\n return actions;\n };\n\n this.getMultiElementContextPadEntries = function (elements) {\n let actions = {};\n addDelete(actions, elements);\n return actions;\n };\n\n function addDelete(actions, element) {\n // delete element entry, only show if allowed by rules\n var deleteAllowed = rules.allowed(\"elements.delete\", {\n elements: { element },\n });\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: function (event, element) {\n if (isArray(element)) {\n const groups = element.filter((el) =>\n el.type.includes(ElementTypes.GROUP),\n );\n const otherElements = element.filter(\n (el) => !el.type.includes(ElementTypes.GROUP),\n );\n groups.forEach((group) => modeling.removeGroup(group));\n modeling.removeElements(otherElements.slice());\n } else {\n modeling.removeElements({ element });\n }\n dirtyFlagService.makeDirty();\n },\n },\n },\n });\n }\n }\n\n function addDeleteGroupWithoutChildren(actions, element) {\n assign(actions, {\n deleteGroup: {\n group: \"edit\",\n className: \"bpmn-icon-trash\",\n title: translate(\"Remove Group without Child-Elements\"),\n action: {\n click: function (event, element) {\n modeling.removeGroup(element);\n dirtyFlagService.makeDirty();\n },\n },\n },\n });\n }\n\n function addChangeDirection(actions) {\n assign(actions, {\n changeDirection: {\n group: \"edit\",\n className: \"icon-domain-story-changeDirection\",\n title: translate(\"Change direction\"),\n action: {\n // event needs to be addressed\n click: function (event, element) {\n changeDirection(element);\n dirtyFlagService.makeDirty();\n },\n },\n },\n });\n }\n\n function addChangeActorTypeMenu(actions) {\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 let position = assign(getReplaceMenuPosition(element), {\n cursor: { x: event.x, y: event.y },\n });\n popupMenu.open(element, \"ds-replace\", position);\n },\n },\n },\n });\n }\n\n function addColorChange(actions) {\n assign(actions, {\n colorChange: {\n group: \"edit\",\n className: \"icon-domain-story-color-picker\",\n title: translate(\"Change color\"),\n action: {\n click: function (event, element) {\n document.dispatchEvent(new CustomEvent(\"openColorPicker\"));\n },\n },\n },\n });\n }\n\n function addTextAnnotation(actions) {\n assign(actions, {\n \"append.text-annotation\": appendAction(\n ElementTypes.TEXTANNOTATION,\n \"bpmn-icon-text-annotation\",\n \"textannotation\",\n \"connect\",\n ),\n });\n }\n\n function addConnectWithActivity(actions, startConnect) {\n assign(actions, {\n connect: {\n group: \"connect\",\n className: \"bpmn-icon-connection\",\n title: translate(\"Connect with activity\"),\n action: {\n click: startConnect,\n dragstart: startConnect,\n },\n },\n });\n }\n\n function addWorkObjects(appendAction, actions) {\n let workObjects = iconDictionaryService.getIconsAssignedAs(\n ElementTypes.WORKOBJECT,\n );\n workObjects.keysArray().forEach((workObjectType) => {\n let name = workObjectType;\n let icon = iconDictionaryService.getIconForMenu(\n ElementTypes.WORKOBJECT,\n workObjectType,\n );\n let action = [];\n action[\"append.workObject\" + name] = appendAction(\n `${ElementTypes.WORKOBJECT}${workObjectType}`,\n icon,\n name,\n \"workObjects\",\n );\n assign(actions, action);\n });\n }\n\n function addActors(appendAction, actions) {\n let actors = iconDictionaryService.getIconsAssignedAs(ElementTypes.ACTOR);\n actors.keysArray().forEach((actorType) => {\n let name = actorType;\n let icon = iconDictionaryService.getIconForMenu(\n ElementTypes.ACTOR,\n actorType,\n );\n let action = [];\n action[\"append.actor\" + name] = appendAction(\n `${ElementTypes.ACTOR}${actorType}`,\n icon,\n name,\n \"actors\",\n );\n assign(actions, action);\n });\n }\n\n function addChangeWorkObjectTypeMenu(actions) {\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 let position = assign(getReplaceMenuPosition(element), {\n cursor: { x: event.x, y: event.y },\n });\n popupMenu.open(element, \"ds-replace\", position);\n },\n },\n },\n });\n }\n\n function changeDirection(element) {\n let context;\n let businessObject = element.businessObject;\n let newNumber;\n\n if (element.source.type.includes(ElementTypes.ACTOR)) {\n newNumber = 0;\n } else {\n newNumber = generateAutomaticNumber(element, commandStack);\n }\n context = {\n businessObject: businessObject,\n newNumber: newNumber,\n element: element,\n };\n commandStack.execute(\"activity.directionChange\", context);\n }\n\n function getReplaceMenuPosition(element) {\n let Y_OFFSET = 5;\n\n let diagramContainer = canvas.getContainer(),\n pad = contextPad.getPad(element).html;\n\n let diagramRect = diagramContainer.getBoundingClientRect(),\n padRect = pad.getBoundingClientRect();\n\n let top = padRect.top - diagramRect.top;\n let left = padRect.left - diagramRect.left;\n\n return {\n x: left,\n y: top + padRect.height + Y_OFFSET,\n };\n }\n\n function appendAction(type, className, title, group, options) {\n if (typeof title !== \"string\") {\n options = title;\n title = translate(\"{type}\", { type: type.replace(/^domainStory:/, \"\") });\n }\n\n function appendStart(event, element) {\n let shape = elementFactory.createShape(assign({ type: type }, options));\n let context = {\n elements: [shape],\n hints: {},\n source: element,\n };\n create.start(event, shape, context);\n }\n\n return {\n group: group,\n className: className,\n title: \"Append \" + title,\n action: {\n dragstart: startConnect,\n click: appendStart,\n },\n };\n }\n\n function getSelectedBusinessObject(event) {\n const oldColor = _selectedElement.businessObject.pickedColor;\n let newColor = event.detail.color;\n if (isHexWithAlpha(oldColor)) {\n newColor = rgbaToHex(newColor);\n }\n\n return {\n businessObject: _selectedElement.businessObject,\n newColor: newColor,\n element: _selectedElement,\n };\n }\n\n function executeCommandStack(event) {\n const selectedBusinessObject = getSelectedBusinessObject(event);\n\n commandStack.execute(\"element.colorChange\", selectedBusinessObject);\n dirtyFlagService.makeDirty();\n }\n}\n\nDomainStoryContextPadProvider.$inject = [\n \"connect\",\n \"translate\",\n \"elementFactory\",\n \"create\",\n \"canvas\",\n \"contextPad\",\n \"popupMenu\",\n \"replaceMenuProvider\",\n \"commandStack\",\n \"eventBus\",\n \"modeling\",\n \"rules\",\n];\n","import { getBusinessObject } from \"../util/util\";\n\nimport { forEach, isArray, isUndefined, omit, reduce } 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\nvar LOW_PRIORITY = 750;\n\nexport default function EgonCopyPaste(eventBus, propertyCopy) {\n eventBus.on(\"copyPaste.copyElement\", LOW_PRIORITY, function (context) {\n var descriptor = context.descriptor,\n element = context.element;\n\n var businessObject = (descriptor.oldBusinessObject =\n getBusinessObject(element));\n\n descriptor.type = element.type;\n\n copyProperties(businessObject, descriptor, \"name\");\n\n if (isLabel(descriptor)) {\n return descriptor;\n }\n });\n\n var references;\n\n function resolveReferences(descriptor, cache) {\n var businessObject = getBusinessObject(descriptor);\n\n // boundary events\n if (descriptor.host) {\n // relationship can be resolved immediately\n getBusinessObject(descriptor).attachedToRef = getBusinessObject(\n cache[descriptor.host],\n );\n }\n\n references = omit(\n references,\n reduce(\n references,\n 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 );\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(\n cache[descriptor.labelTarget],\n );\n\n return;\n }\n\n newBusinessObject = {};\n\n descriptor.businessObject = propertyCopy.copyElement(\n oldBusinessObject,\n newBusinessObject,\n );\n\n // resolve references e.g. default sequence flow\n resolveReferences(descriptor, cache);\n\n copyProperties(descriptor, newBusinessObject, [\"name\"]);\n\n removeProperties(descriptor, \"oldBusinessObject\");\n });\n}\n\nEgonCopyPaste.$inject = [\"eventBus\", \"propertyCopy\"];\n\n// helpers //////////\n\nfunction isLabel(element) {\n return !!element.labelTarget;\n}\n","import {\n forEach,\n isArray,\n isDefined,\n isObject,\n reduce,\n has,\n sortBy,\n} from \"min-dash\";\n\nvar DISALLOWED_PROPERTIES = [\"incoming\", \"outgoing\"];\n\nexport default function PropertyCopy(eventBus) {\n this._eventBus = eventBus;\n\n // copy extension elements last\n eventBus.on(\"propertyCopy.canCopyProperties\", function (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 // default check whether property can be copied\n eventBus.on(\"propertyCopy.canCopyProperty\", function (context) {\n var propertyName = context.propertyName;\n\n if (propertyName && DISALLOWED_PROPERTIES.indexOf(propertyName) !== -1) {\n // disallow copying property\n return false;\n }\n });\n}\n\nPropertyCopy.$inject = [\"eventBus\"];\n\nPropertyCopy.prototype.copyElement = function (\n sourceElement,\n targetElement,\n propertyNames,\n) {\n var self = this;\n\n if (propertyNames && !isArray(propertyNames)) {\n propertyNames = [propertyNames];\n }\n\n var canCopyProperties = this._eventBus.fire(\n \"propertyCopy.canCopyProperties\",\n {\n propertyNames: propertyNames,\n sourceElement: sourceElement,\n targetElement: targetElement,\n },\n );\n\n if (canCopyProperties === false) {\n return targetElement;\n }\n\n if (isArray(canCopyProperties)) {\n propertyNames = canCopyProperties;\n }\n\n // copy properties\n forEach(propertyNames, function (propertyName) {\n var sourceProperty;\n\n if (has(sourceElement, propertyName)) {\n sourceProperty = sourceElement.get(propertyName);\n }\n\n var copiedProperty = self.copyProperty(\n sourceProperty,\n targetElement,\n propertyName,\n );\n\n var canSetProperty = self._eventBus.fire(\n \"propertyCopy.canSetCopiedProperty\",\n {\n parent: targetElement,\n property: copiedProperty,\n propertyName: propertyName,\n },\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\nPropertyCopy.prototype.copyProperty = function (\n property,\n parent,\n propertyName,\n) {\n var self = this;\n\n // allow others to copy property\n var copiedProperty = this._eventBus.fire(\"propertyCopy.canCopyProperty\", {\n parent: parent,\n property: property,\n propertyName: propertyName,\n });\n\n // return if copying is NOT allowed\n if (copiedProperty === false) {\n return;\n }\n\n if (copiedProperty) {\n if (isObject(copiedProperty) && !copiedProperty.$parent) {\n copiedProperty.$parent = parent;\n }\n\n return copiedProperty;\n }\n\n // copy arrays\n if (isArray(property)) {\n return reduce(\n property,\n function (childProperties, childProperty) {\n // recursion\n copiedProperty = self.copyProperty(childProperty, parent, propertyName);\n\n // copying might NOT be allowed\n if (copiedProperty) {\n copiedProperty.$parent = parent;\n\n return childProperties.concat(copiedProperty);\n }\n\n return childProperties;\n },\n [],\n );\n }\n\n // copy model elements\n if (isObject(property)) {\n copiedProperty = {};\n\n copiedProperty.$parent = parent;\n\n // recursion\n copiedProperty = self.copyElement(property, copiedProperty);\n\n return copiedProperty;\n }\n\n // copy primitive properties\n return property;\n};\n","import CopyPasteModule from \"diagram-js/lib/features/copy-paste\";\n\nimport EgonCopyPaste from \"./EgonCopyPaste\";\nimport PropertyCopy from \"./PropertyCopy\";\n\nexport default {\n __depends__: [CopyPasteModule],\n __init__: [\"egonCopyPaste\", \"propertyCopy\"],\n egonCopyPaste: [\"type\", EgonCopyPaste],\n propertyCopy: [\"type\", PropertyCopy],\n};\n","\"use strict\";\n\nimport { assign } from \"min-dash\";\n\nimport inherits from \"inherits\";\n\nimport BaseElementFactory from \"diagram-js/lib/core/ElementFactory\";\n\nimport DomainStoryIdFactory from \"./domainStoryIdFactory\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\n\nconst DEFAULT_LABEL_SIZE = {\n width: 90,\n height: 20,\n};\n\nexport default function DomainStoryElementFactory() {\n let self = this;\n let domainStoryIdFactory = new DomainStoryIdFactory();\n\n /**\n * create a diagram-js element with the given type (any of shape, connection, label).\n *\n * @param {String} elementType\n * @param {Object} attrs\n *\n * @return {djs.model.Base}\n */\n this.create = function (elementType, attrs) {\n let type = attrs.type;\n\n if (elementType === \"label\") {\n return self.baseCreate(\n elementType,\n assign({ type: \"label\" }, DEFAULT_LABEL_SIZE, attrs),\n );\n }\n\n // add type to businessObject if custom\n if (/^domainStory:/.test(type)) {\n if (!attrs.businessObject) {\n attrs.businessObject = {\n type: type,\n name: attrs.name ? attrs.name : \"\",\n };\n }\n\n if (attrs.id) {\n domainStoryIdFactory.registerId(attrs.id);\n } else {\n attrs.id = domainStoryIdFactory.getId(elementType);\n }\n assign(attrs.businessObject, {\n id: attrs.id,\n });\n\n let id = attrs.id;\n attrs.businessObject.get = function (key) {\n if (key === \"id\") {\n return id;\n }\n };\n attrs.businessObject.set = function (key, value) {\n if (key === \"id\") {\n assign(attrs.businessObject, { id: value });\n }\n };\n\n // add width and height if shape\n if (\n (!/:activity$/.test(type) || !/:connection$/.test(type)) &&\n !((/:group$/.test(type) && attrs.height) || attrs.width)\n ) {\n assign(attrs, self._getCustomElementSize(type));\n }\n\n if (!(\"$instanceOf\" in attrs.businessObject)) {\n // ensure we can use ModelUtil#is for type checks\n Object.defineProperty(attrs.businessObject, \"$instanceOf\", {\n value: function (type) {\n return this.type === type;\n },\n });\n }\n\n return self.baseCreate(elementType, attrs);\n }\n };\n}\n\ninherits(DomainStoryElementFactory, BaseElementFactory);\n\nDomainStoryElementFactory.prototype.baseCreate =\n BaseElementFactory.prototype.create;\n\n/**\n * returns the default size of custom shapes.\n * *\n * @param {String} type\n *\n * @return {Dimensions} a {width, height} object representing the size of the element\n */\nDomainStoryElementFactory.prototype._getCustomElementSize = function (type) {\n let shapes = {\n __default: { width: 75, height: 75 },\n [ElementTypes.TEXTANNOTATION]: { width: 100, height: 30 },\n [ElementTypes.GROUP]: { width: 300, height: 200 },\n };\n\n return shapes[type] || shapes.__default;\n};\n\nclass Dimensions {\n width;\n height;\n}\n","\"use strict\";\n\nlet idList = [];\n\nexport default function DomainStoryIdFactory() {}\n\nDomainStoryIdFactory.prototype.getId = function (type) {\n return generateId(type);\n};\n\nDomainStoryIdFactory.prototype.registerId = function (id) {\n idList.push(id);\n};\n\nfunction generateId(type) {\n let idNumber = fourDigitsId();\n\n let id = type + \"_\" + idSuffix(idNumber);\n\n while (containsId(id)) {\n idNumber++;\n\n id = type + \"_\" + idSuffix(idNumber);\n }\n\n idList.push(id);\n return id;\n}\n\nfunction idSuffix(idNumber) {\n let id;\n if (idNumber > 9999) {\n id = 0;\n } else if (idNumber < 10) {\n id = \"000\" + idNumber;\n } else if (idNumber < 100) {\n id = \"00\" + idNumber;\n } else if (idNumber < 1000) {\n id = \"0\" + idNumber;\n } else {\n id = \"\" + idNumber;\n }\n return id;\n}\n\nfunction fourDigitsId() {\n return Math.floor(Math.random() * 10000);\n}\n\nexport function containsId(id) {\n let same = false;\n idList.forEach((element) => {\n if (id === element) {\n same = true;\n }\n });\n return same;\n}\n","\"use strict\";\n\nimport inherits from \"inherits-browser\";\nimport BaseRenderer from \"diagram-js/lib/draw/BaseRenderer\";\nimport Ids from \"ids\";\nimport { componentsToPath, createLine } from \"diagram-js/lib/util/RenderUtil\";\nimport {\n append as svgAppend,\n attr as svgAttr,\n classes as svgClasses,\n create as svgCreate,\n} from \"tiny-svg\";\nimport { query as domQuery } from \"min-dom\";\nimport { assign, isObject } from \"min-dash\";\nimport { getNumberStash } from \"src/app/tools/modeler/diagram-js/features/labeling/dsLabelEditingProvider\";\nimport {\n addNumberToRegistry,\n generateAutomaticNumber,\n numberBoxDefinitions,\n} from \"src/app/tools/modeler/diagram-js/features/numbering/numbering\";\n\nimport { calculateTextWidth } from \"src/app/tools/modeler/diagram-js/features/labeling/dsLabelUtil\";\nimport {\n countLines,\n labelPosition,\n} from \"src/app/tools/modeler/diagram-js/features/labeling/position\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { angleBetween } from \"../../../../utils/mathExtensions\";\nimport { isCustomIcon, isCustomSvgIcon, getScaledPath } from \"./util/util\";\n\nlet RENDERER_IDS = new Ids();\nlet numbers = [];\nconst DEFAULT_COLOR = \"#000000\";\n\n/**\n * a renderer that knows how to render custom elements.\n */\nlet _iconDictionaryService;\nlet _elementRegistryService;\nlet _dirtyFlagService;\n\nexport function initializeRenderer(\n iconDictionaryService,\n elementRegistryService,\n dirtyFlagService,\n) {\n _iconDictionaryService = iconDictionaryService;\n _elementRegistryService = elementRegistryService;\n _dirtyFlagService = dirtyFlagService;\n}\n\nexport default function DomainStoryRenderer(\n eventBus,\n styles,\n canvas,\n textRenderer,\n commandStack,\n) {\n BaseRenderer.call(this, eventBus, 2000);\n\n let rendererId = RENDERER_IDS.next();\n let markers = {};\n let computeStyle = styles.computeStyle;\n\n // generate the automatic Number for an activity originating from an actor\n function generateActivityNumber(parentGfx, element, box) {\n // whenever we want to edit an activity, it gets redrawn as a new object\n // and the custom information is lost,\n // so we stash it before the editing occurs and set the value here\n\n let numberStash = getNumberStash();\n let semantic = element.businessObject;\n\n if (numberStash.use) {\n semantic.number = numberStash.number;\n }\n\n numbers[semantic.number] = true;\n box.x -= 26;\n box.y -= 16;\n\n if (semantic.number < 10) {\n box.x += 3;\n }\n\n let newRenderedNumber = renderNumber(\n parentGfx,\n semantic.number,\n numberStyle(box),\n element.type,\n );\n addNumberToRegistry(newRenderedNumber, semantic.number);\n }\n\n // style functions\n function numberStyle(box) {\n return {\n box: box,\n fitBox: true,\n style: assign({}, textRenderer.getExternalStyle(), {\n fill: \"black\",\n position: \"absolute\",\n }),\n };\n }\n\n // render functions\n // render label associated with actors and workobjects\n function renderEmbeddedLabel(parentGfx, element, align, padding) {\n let businessObject = element.businessObject;\n return renderLabel(\n parentGfx,\n businessObject.name,\n {\n box: element,\n align: align,\n padding: padding ? padding : 0,\n style: {\n fill: \"#000000\",\n },\n },\n element.type,\n );\n }\n\n // render label associated with activities\n function renderExternalLabel(parentGfx, element) {\n let semantic = element.businessObject;\n let waypoints = element.waypoints;\n let lines = countLines(semantic.name);\n\n if (element.waypoints != null) {\n let position = labelPosition(waypoints, lines);\n let startPoint = element.waypoints[position.selected];\n let endPoint = element.waypoints[position.selected + 1];\n let angle = angleBetween(startPoint, endPoint);\n let alignment = \"left\";\n let boxWidth = 500;\n let xStart = position.x;\n\n // if the activity is horizontal, we want to center the label\n if (angle === 0 || angle === 180) {\n boxWidth = Math.abs(startPoint.x - endPoint.x);\n alignment = \"center\";\n xStart =\n (startPoint.x + endPoint.x) / 2 - calculateTextWidth(semantic.name);\n }\n\n let box = {\n textAlign: alignment,\n width: boxWidth,\n height: 30,\n x: xStart,\n y: position.y,\n };\n\n if (semantic.name && semantic.name.length) {\n return renderLabel(\n parentGfx,\n semantic.name,\n {\n box: box,\n fitBox: true,\n style: assign({}, textRenderer.getExternalStyle(), {\n fill: \"black\",\n wordWrap: \"break-word\",\n overflowWrap: \"break-word\",\n hyphens: \"auto\",\n }),\n },\n element.type,\n );\n }\n }\n }\n\n // render the number associated with an activity\n function renderExternalNumber(parentGfx, element) {\n if (element && element.source) {\n let semantic = element.businessObject;\n\n let box = numberBoxDefinitions(element);\n\n if (\n semantic.number == null &&\n element.source.type &&\n element.source.type.includes(ElementTypes.ACTOR)\n ) {\n generateAutomaticNumber(element, commandStack);\n }\n\n // render the background for the number\n if (semantic.number && element.source.type.includes(ElementTypes.ACTOR)) {\n generateActivityNumber(parentGfx, element, box);\n } else {\n semantic.number = null;\n }\n }\n }\n\n // render a number on the canvas\n function renderNumber(parentGfx, number, options, type) {\n if (number < 10) {\n number = String(number);\n }\n number = String(number);\n let text = textRenderer.createText(number || \"\", options);\n let height = 0;\n\n svgClasses(text).add(\"djs-labelNumber\");\n\n setCoordinates(type, text, options, height, parentGfx);\n\n // !IMPORTANT!\n // When converting svg-files via Inkscape or Photoshop the svg-circle is converted to a black dot that obscures the number.\n // To circumvent this, we draw an arc.\n let circle = svgCreate(\"path\");\n let radius = 11;\n let x = options.box.x + 18 + (number > 9 ? 3 : 0);\n let y = options.box.y - radius + 7;\n svgAttr(circle, {\n d: `\n M ${x} ${y}\n m ${radius},0\n a ${radius},${radius} 0 1,0 ${-radius * 2},0\n a ${radius},${radius} 0 1,0 ${radius * 2},0\n `,\n fill: \"white\",\n stroke: \"black\",\n });\n\n svgAppend(parentGfx, circle);\n svgAppend(parentGfx, text);\n\n return text;\n }\n\n // the coordinates of the activity label must be set directly and will not be taken from the box\n function setCoordinates(type, text, options, height, parentGfx) {\n if (/:activity$/.test(type)) {\n text.innerHTML = manipulateInnerHTMLXLabel(\n text.children,\n options.box.x,\n 0,\n );\n text.innerHTML = manipulateInnerHTMLYLabel(\n text.children,\n options.box.y,\n 0,\n );\n } else if (/:actor/.test(type)) {\n height = parentGfx.firstChild.attributes.height.nodeValue;\n text.innerHTML = manipulateInnerHTMLYLabel(text.children, height, 0);\n } else if (/:workObject/.test(type)) {\n height = parentGfx.firstChild.attributes.height.nodeValue;\n text.innerHTML = manipulateInnerHTMLYLabel(text.children, height, 26);\n }\n }\n\n // render a label on the canvas\n function renderLabel(parentGfx, label, options, type) {\n let text = textRenderer.createText(label || \"\", options);\n let height = 0;\n\n svgClasses(text).add(\"djs-label\");\n setCoordinates(type, text, options, height, parentGfx);\n\n svgAppend(parentGfx, text);\n return text;\n }\n\n // determine the Y-coordinate of the label / number to be rendered\n function manipulateInnerHTMLYLabel(children, y, offset) {\n if (children) {\n let result = \"\";\n for (let i = 0; i < children.length; i++) {\n result += children[i].outerHTML.replace(\n /y=\"-?\\d*.\\d*\"/,\n 'y=\"' + (Number(y) + offset + 14 * i) + '\"',\n );\n }\n return result;\n }\n }\n\n // determine the X-coordinate of the label / number to be rendered\n function manipulateInnerHTMLXLabel(children, x, offset) {\n if (children) {\n let result = \"\";\n for (let i = 0; i < children.length; i++) {\n result += children[i].outerHTML.replace(\n /x=\"-?\\d*.\\d*\"/,\n 'x=\"' + (Number(x) + offset + 14) + '\"',\n );\n }\n return result;\n }\n }\n\n // draw functions\n this.drawGroup = function (parentGfx, element) {\n if (!element.businessObject.pickedColor) {\n element.businessObject.pickedColor = DEFAULT_COLOR;\n }\n let rect = drawRect(\n parentGfx,\n element.width,\n element.height,\n 0,\n assign(\n {\n fill: \"none\",\n stroke: element.businessObject.pickedColor,\n },\n element.attrs,\n ),\n );\n renderEmbeddedLabel(parentGfx, element, \"left-top\", 8);\n\n return rect;\n };\n\n function applyColorToCustomSvgIcon(pickedColor, iconSvg) {\n if (!pickedColor) {\n return iconSvg;\n }\n const [rest, base64Svg] = iconSvg.split(\"base64,\");\n const svg = atob(base64Svg);\n const coloredSvg = applyColorToIcon(pickedColor, svg);\n const encodedColoredSvg = btoa(coloredSvg);\n return rest + \"base64,\" + encodedColoredSvg;\n }\n\n function applyColorToIcon(pickedColor = DEFAULT_COLOR, iconSvg) {\n const match = iconSvg.match(\n /fill=\\s*\"(?!none).*?\"|fill:\\s*[#r]\\w*[;\\s]{1}/,\n );\n if (match && match.some((it) => it)) {\n return iconSvg\n .replaceAll(/fill=\\s*\"(?!none).*?\"/g, `fill=\"${pickedColor} \"`)\n .replaceAll(/fill:\\s*[#r]\\w*[;\\s]{1}/g, `fill:${pickedColor};`);\n } else {\n const index = iconSvg.indexOf(\"'\n );\n } else {\n return applyColorToIcon(pickedColor, icon);\n }\n }\n\n this.drawActor = function (parent, element) {\n let svgDynamicSizeAttributes = {\n width: element.width,\n height: element.height,\n };\n let iconSRC = _iconDictionaryService.getTypeIconSRC(\n ElementTypes.ACTOR,\n ElementTypes.getIconId(element.type),\n );\n iconSRC = getIconSvg(iconSRC, element);\n let actor = svgCreate(iconSRC);\n\n svgAttr(actor, svgDynamicSizeAttributes);\n svgAppend(parent, actor);\n\n renderEmbeddedLabel(parent, element, \"center\", -5);\n return actor;\n };\n\n this.drawWorkObject = function (parent, element) {\n let svgDynamicSizeAttributes = {\n width: element.width * 0.65,\n height: element.height * 0.65,\n x: element.width / 2 - 25,\n y: element.height / 2 - 25,\n },\n workObject;\n let iconSRC = _iconDictionaryService.getTypeIconSRC(\n ElementTypes.WORKOBJECT,\n ElementTypes.getIconId(element.type),\n );\n iconSRC = getIconSvg(iconSRC, element);\n workObject = svgCreate(iconSRC);\n\n svgAttr(workObject, svgDynamicSizeAttributes);\n svgAppend(parent, workObject);\n renderEmbeddedLabel(parent, element, \"center\", -5);\n\n return workObject;\n };\n\n function useColorForActivity(element) {\n if (!element.businessObject.pickedColor) {\n element.businessObject.pickedColor = \"black\";\n }\n let attrs = \"\";\n return computeStyle(attrs, {\n stroke: element.businessObject.pickedColor,\n fill: \"none\",\n strokeWidth: 1.5,\n strokeLinejoin: \"round\",\n markerEnd: marker(\n \"activity\",\n \"black\",\n element.businessObject.pickedColor,\n ),\n });\n }\n\n this.drawActivity = function (p, element) {\n adjustForTextOverlap(element);\n\n if (element) {\n let attrs = useColorForActivity(element);\n\n let x = svgAppend(p, createLine(element.waypoints, attrs));\n renderExternalLabel(p, element);\n renderExternalNumber(p, element);\n\n // just adjusting the start- and endpoint of the connection-element moves only the drawn connection,\n // not the interactive line. This can be fixed by manually overriding the points of the interactive polyline\n // in the HTMl with the points of the drawn one.\n // this however does not adjust the surrounding box of the connection.\n fixConnectionInHTML(p.parentElement);\n\n // changes the color of the moved activity back to original instead of blue\n if (p.className.baseVal === \"djs-dragger\") {\n svgClasses(p).remove(\"djs-dragger\");\n svgClasses(p).add(\"djs-connection-preview\");\n }\n\n return x;\n }\n };\n\n function checkIfPointOverlapsText(point, source) {\n if (point.y > source.y + 60) {\n if (point.x > source.x + 3 && point.x < source.x + 72) {\n let lineOffset = getLineOffset(source);\n if (source.y + 75 + lineOffset > point.y) {\n point.y += lineOffset;\n }\n }\n }\n }\n\n function adjustForTextOverlap(element) {\n let source = element.source;\n let target = element.target;\n\n let waypoints = element.waypoints;\n let startPoint = waypoints[0];\n let endPoint = waypoints[waypoints.length - 1];\n\n if (startPoint && endPoint && source && target) {\n checkIfPointOverlapsText(startPoint, source);\n checkIfPointOverlapsText(endPoint, source);\n }\n }\n\n function getLineOffset(element) {\n let id = element.id;\n let offset = 0;\n\n let objects = document.getElementsByClassName(\"djs-element djs-shape\");\n for (let i = 0; i < objects.length; i++) {\n let data_id = objects.item(i).getAttribute(\"data-element-id\");\n if (data_id === id) {\n let object = objects.item(i);\n let text = object.getElementsByTagName(\"text\")[0];\n let tspans = text.getElementsByTagName(\"tspan\");\n let tspan = tspans[tspans.length - 1];\n offset = tspan.getAttribute(\"y\");\n }\n }\n return offset - 70;\n }\n\n function fixConnectionInHTML(wantedConnection) {\n if (wantedConnection) {\n let polylines = wantedConnection.getElementsByTagName(\"polyline\");\n if (polylines.length > 1) {\n polylines[1].setAttribute(\n \"points\",\n polylines[0].getAttribute(\"points\"),\n );\n }\n }\n }\n\n this.drawDSConnection = function (p, element) {\n let attrs = \"\";\n attrs = computeStyle(attrs, {\n stroke: element.businessObject.pickedColor ?? \"black\",\n strokeWidth: 1.5,\n strokeLinejoin: \"round\",\n strokeDasharray: \"5, 5\",\n });\n\n return svgAppend(p, createLine(element.waypoints, attrs));\n };\n\n this.drawAnnotation = function (parentGfx, element) {\n let style = {\n fill: \"none\",\n stroke: \"none\",\n };\n\n let text = element.businessObject.text || \"\";\n if (element.businessObject.text) {\n let height = element.height ?? 0;\n\n if (height === 0 && element.businessObject.number) {\n height = element.businessObject.number;\n }\n assign(element, {\n height: height,\n });\n\n // for some reason the keyword height is not exported, so we use another, which we know will be exported,\n // to ensure persistent annotation heights between sessions\n assign(element.businessObject, {\n number: height,\n });\n }\n\n let textElement = drawRect(\n parentGfx,\n element.width,\n element.height,\n 0,\n 0,\n style,\n );\n let textPathData = getScaledPath({\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: element.businessObject.pickedColor ?? \"black\",\n });\n\n renderLabel(parentGfx, text, {\n box: element,\n align: \"left-top\",\n padding: 5,\n style: {\n fill: element.businessObject.pickedColor ?? \"black\",\n },\n });\n\n return textElement;\n };\n\n // draw helper functions\n function drawPath(parentGfx, d, attrs) {\n attrs = computeStyle(attrs, [\"no-fill\"], {\n strokeWidth: 2,\n stroke: \"black\",\n });\n\n let 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 drawRect(parentGfx, width, height, r, offset, attrs) {\n if (isObject(offset)) {\n attrs = offset;\n offset = 0;\n }\n\n offset = offset || 0;\n attrs = computeStyle(attrs, {\n stroke: \"black\",\n strokeWidth: 2,\n fill: \"white\",\n });\n\n let 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\n svgAttr(rect, attrs);\n svgAppend(parentGfx, rect);\n\n return rect;\n }\n\n // marker functions (\"markers\" are arrowheads of activities)\n function marker(type, fill, stroke) {\n let id = type + \"-\" + fill + \"-\" + stroke + \"-\" + rendererId;\n\n if (!markers[id]) {\n createMarker(type, fill, stroke);\n }\n return \"url(#\" + id + \")\";\n }\n\n function createMarker(type, fill, stroke) {\n let id = type + \"-\" + fill + \"-\" + stroke + \"-\" + rendererId;\n\n if (type === \"activity\") {\n let activityArrow = svgCreate(\"path\");\n svgAttr(activityArrow, { d: \"M 1 5 L 11 10 L 1 15 Z\" });\n\n addMarker(id, {\n element: activityArrow,\n ref: { x: 11, y: 10 },\n scale: 0.5,\n attrs: {\n fill: stroke,\n stroke: stroke,\n },\n });\n }\n }\n\n function addMarker(id, options) {\n let attrs = assign(\n {\n fill: \"black\",\n strokeWidth: 1,\n strokeLinecap: \"round\",\n strokeDasharray: \"none\",\n },\n options.attrs,\n );\n\n let ref = options.ref || { x: 0, y: 0 };\n let scale = options.scale || 1;\n\n // resetting stroke dash array\n if (attrs.strokeDasharray === \"none\") {\n attrs.strokeDasharray = [10000, 1];\n }\n\n let marker = svgCreate(\"marker\");\n\n svgAttr(options.element, attrs);\n svgAppend(marker, options.element);\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 let defs = domQuery(\"defs\", canvas._svg);\n if (!defs) {\n defs = svgCreate(\"defs\");\n svgAppend(canvas._svg, defs);\n }\n svgAppend(defs, marker);\n markers[id] = marker;\n }\n\n // path functions\n this.getWorkObjectPath = function (shape) {\n let rectangle = getRectPath(shape);\n return componentsToPath(rectangle);\n };\n\n this.getGroupPath = function (shape) {\n let rectangle = getRectPath(shape);\n return componentsToPath(rectangle);\n };\n\n this.getActivityPath = function (connection) {\n let waypoints = connection.waypoints.map(function (p) {\n return p.original || p;\n });\n\n let activityPath = [[\"M\", waypoints[0].x, waypoints[0].y]];\n\n waypoints.forEach(function (waypoint, index) {\n if (index !== 0) {\n activityPath.push([\"L\", waypoint.x, waypoint.y]);\n }\n });\n return componentsToPath(activityPath);\n };\n\n this.getActorPath = function (shape) {\n let rectangle = getRectPath(shape);\n return componentsToPath(rectangle);\n };\n\n eventBus.on(\"bendpoint.move.start\", 200, function (event) {\n // the bendpoint which we are dragging will otherwise be displayed with 0.3 opacity\n // through bendpoint-dragging we match the css class more specificly, hence our style applies\n svgClasses(event.context.draggerGfx).add(\"bendpoint-dragging\");\n // the old path of the activity will otherwise be displayed in gray\n canvas.addMarker(event.context.connection, \"djs-element-hidden\");\n });\n\n eventBus.on(\"bendpoint.move.end\", 2000, function (event) {\n // the acitvity will not be displayed if we don't remove the marker we added during bendpoint.move.start\n // high priority is neccessary, so we come before something that might stop the execution\n canvas.removeMarker(event.context.connection, \"djs-element-hidden\");\n });\n}\n\ninherits(DomainStoryRenderer, BaseRenderer);\n\nDomainStoryRenderer.$inject = [\n \"eventBus\",\n \"styles\",\n \"canvas\",\n \"textRenderer\",\n \"commandStack\",\n];\n\nDomainStoryRenderer.prototype.canRender = function (element) {\n return /^domainStory:/.test(element.type);\n};\n\nDomainStoryRenderer.prototype.drawShape = function (p, element) {\n // polyfill for tests\n if (!String.prototype.startsWith) {\n Object.defineProperty(String.prototype, \"startsWith\", {\n value: function (search, pos) {\n pos = !pos || pos < 0 ? 0 : +pos;\n return this.substring(pos, pos + search.length) === search;\n },\n });\n }\n\n let type = element.type;\n element.businessObject.type = type;\n\n _elementRegistryService.correctInitialize();\n _dirtyFlagService.makeDirty();\n\n if (type.includes(ElementTypes.ACTOR)) {\n return this.drawActor(p, element);\n } else if (type.includes(ElementTypes.WORKOBJECT)) {\n return this.drawWorkObject(p, element);\n } else if (type.includes(ElementTypes.TEXTANNOTATION)) {\n return this.drawAnnotation(p, element);\n } else if (type.includes(ElementTypes.GROUP)) {\n return this.drawGroup(p, element);\n }\n};\n\nDomainStoryRenderer.prototype.getShapePath = function (shape) {\n let type = shape.type;\n\n if (type.includes(ElementTypes.ACTOR)) {\n return this.getActorPath(shape);\n } else if (type.includes(ElementTypes.WORKOBJECT)) {\n return this.getWorkObjectPath(shape);\n } else if (type.includes(ElementTypes.GROUP)) {\n return this.getGroupPath(shape);\n }\n};\n\nDomainStoryRenderer.prototype.drawConnection = function (p, element) {\n let type = element.type;\n\n _dirtyFlagService.makeDirty();\n\n // fixes activities that were copy-pasted\n if (!element.businessObject.type) {\n element.businessObject.type = type;\n }\n if (type === ElementTypes.ACTIVITY) {\n return this.drawActivity(p, element);\n } else if (type === ElementTypes.CONNECTION) {\n return this.drawDSConnection(p, element);\n }\n};\n\n// creates a SVG path that describes a rectangle which encloses the given shape.\nfunction getRectPath(shape) {\n let offset = 5;\n let x = shape.x,\n y = shape.y,\n width = shape.width / 2 + offset,\n height = shape.height / 2 + offset;\n\n return [\n [\"M\", x, y],\n [\"l\", width, 0],\n [\"l\", width, height],\n [\"l\", -width, height],\n [\"l\", -width, 0],\n [\"z\"],\n ];\n}\n","\"use strict\";\n\nimport { assign, every, reduce } from \"min-dash\";\n\nimport inherits from \"inherits\";\n\nimport RuleProvider from \"diagram-js/lib/features/rules/RuleProvider\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { is } from \"./util/util\";\n\nconst HIGH_PRIORITY = 1500;\nconst MIN_SIZE = 125;\n\nfunction isGroup(element) {\n return element && /^domainStory:group/.test(element.type);\n}\n\nfunction isActor(element) {\n return element && /^domainStory:actor\\w*/.test(element.type);\n}\n\nfunction isWorkObject(element) {\n return element && /^domainStory:workObject/.test(element.type);\n}\n\nfunction isActivity(element) {\n return element && /^domainStory:activity/.test(element.type);\n}\n\nfunction isConnection(element) {\n return element && /^domainStory:connection/.test(element.type);\n}\n\nfunction isAnnotation(element) {\n return element && /^domainStory:textAnnotation/.test(element.type);\n}\n\n// indirect usage of IMPLICIT_ROOT_ID, constant not used because of Regex\nexport function isBackground(element) {\n return element && /^__implicitroot/.test(element.id);\n}\n\nexport function isLabel(element) {\n return element && !!element.labelTarget;\n}\n\nfunction nonExistingOrLabel(element) {\n return !element || isLabel(element);\n}\n\nfunction canStartConnection(element) {\n if (nonExistingOrLabel(element)) {\n return null;\n }\n return false;\n}\n\n/**\n * can source and target be connected?\n */\nfunction canConnect(source, target) {\n // never connect to background; since the direction of the activity can get reversed during dragging, we also have to check if the source\n if (isBackground(target) || isBackground(source)) {\n return false;\n }\n\n if (isGroup(target)) {\n return false;\n }\n\n // do not allow a connection from one element to itself\n if (source === target) {\n return false;\n }\n\n // do not allow a connection between two actors\n if (isActor(source) && isActor(target)) {\n return false;\n }\n\n // do not allow a connection, where the source or target is an activity\n if (isActivity(source) || isActivity(target)) {\n return false;\n }\n\n // do not allow a connection, where the source or target is an annotation connection\n if (isConnection(source) || isConnection(target)) {\n return false;\n }\n\n // do not allow a connection to a connection(the special type of connection between an element and a comment box)\n // when the target is an annotation, the connection type is an annotation connection instead of an activity\n if (isAnnotation(target)) {\n return { type: ElementTypes.CONNECTION };\n }\n\n return { type: ElementTypes.ACTIVITY };\n}\n\nfunction canResize(shape, newBounds) {\n if (is(shape, ElementTypes.GROUP)) {\n if (newBounds) {\n let lowerLeft = { x: shape.x, y: shape.y + shape.height };\n let lowerRight = { x: shape.x + shape.width, y: shape.y + shape.height };\n let upperRight = { x: shape.x + shape.width, y: shape.y };\n\n if (newBounds.x !== shape.x && newBounds.y !== shape.y) {\n // upper left\n if (newBounds.x > lowerRight.x - MIN_SIZE) {\n assign(newBounds, { x: lowerRight.x - MIN_SIZE });\n }\n if (newBounds.y > lowerRight.y - MIN_SIZE) {\n assign(newBounds, { y: lowerRight.y - MIN_SIZE });\n }\n }\n\n if (newBounds.x !== shape.x && newBounds.y === shape.y) {\n // lower left\n if (newBounds.x > upperRight.x - MIN_SIZE) {\n assign(newBounds, { x: upperRight.x - MIN_SIZE });\n }\n }\n\n if (newBounds.x === shape.x && newBounds.y !== shape.y) {\n // upper right\n if (newBounds.y > lowerLeft.y - MIN_SIZE) {\n assign(newBounds, { y: lowerLeft.y - MIN_SIZE });\n }\n }\n\n if (newBounds.height < MIN_SIZE) {\n assign(newBounds, {\n height: MIN_SIZE,\n });\n }\n if (newBounds.width < MIN_SIZE) {\n assign(newBounds, {\n width: MIN_SIZE,\n });\n }\n }\n return true;\n }\n\n return false;\n}\n\nfunction canConnectToAnnotation(source, target, connection) {\n // do not allow an activity connect to an annotation\n if (isActivity(connection) && isAnnotation(target)) {\n return false;\n }\n\n // do not allow an annotation connection between two annotations\n if (\n isConnection(connection) &&\n isAnnotation(source) &&\n isAnnotation(target)\n ) {\n return false;\n }\n\n // do not allow an annotation connection between an actor or workObject and anything except an annotation\n return !(\n isConnection(connection) &&\n !isAnnotation(target) &&\n (isActor(source) || isWorkObject(source))\n );\n}\n\n/**\n * specific rules for custom elements\n */\nexport default function DomainStoryRules(eventBus) {\n RuleProvider.call(this, eventBus);\n}\n\ninherits(DomainStoryRules, RuleProvider);\n\nDomainStoryRules.$inject = [\"eventBus\"];\n\nDomainStoryRules.prototype.init = function () {\n /**\n * can a shape be created on target?\n */\n function canCreate(shape, target) {\n // allow creation on canvas || allow groups on everything || allow everything on groups\n return isBackground(target) || isGroup(shape) || isGroup(target);\n }\n\n this.addRule(\"elements.create\", function (context) {\n const elements = context.elements,\n target = context.target;\n\n return every(elements, function (element) {\n if (isConnection(element)) {\n return canConnect(element.source, element.target, element);\n }\n\n return canCreate(element, target);\n });\n });\n\n this.addRule(\"elements.move\", HIGH_PRIORITY, function (context) {\n let target = context.target,\n shapes = context.shapes;\n\n // The idea of this code is to make sure that if any of the selected shapes cannot be moved,\n // then the whole selection cannot be moved. However, it actually only checks\n // if the shape that is under the mouse cursor is over another shape.\n // This is probably enough as a full detection over overlapping shapes might make it hard\n // to move large selections\n return reduce(\n shapes,\n function (result, s) {\n if (result === false) {\n return false;\n }\n return canCreate(s, target);\n },\n undefined,\n );\n });\n\n this.addRule(\"shape.create\", HIGH_PRIORITY, function (context) {\n let target = context.target,\n shape = context.shape;\n\n return canCreate(shape, target);\n });\n\n this.addRule(\"connection.create\", HIGH_PRIORITY, function (context) {\n let source = context.source,\n target = context.target;\n\n return canConnect(source, target);\n });\n\n this.addRule(\"connection.reconnect\", HIGH_PRIORITY, function (context) {\n let connection = context.connection,\n source = context.hover || context.source,\n target = context.target;\n\n let result = canConnectToAnnotation(source, target, connection);\n\n if (!result) {\n return;\n }\n\n return canConnect(source, target, connection);\n });\n\n this.addRule(\"shape.resize\", function (context) {\n let shape = context.shape,\n newBounds = context.newBounds;\n\n return canResize(shape, newBounds);\n });\n\n this.addRule(\"connection.start\", function (context) {\n var source = context.source;\n\n return canStartConnection(source);\n });\n\n this.addRule(\"connection.updateWaypoints\", function (context) {\n return {\n type: context.connection.type,\n };\n });\n\n // CopyPaste.js requires this empty-looking rule to exist\n this.addRule(\"element.copy\", function (context) {\n return true;\n });\n};\n\nDomainStoryRules.prototype.canConnect = canConnect;\nDomainStoryRules.prototype.canResize = canResize;\n","\"use strict\";\n\nimport inherits from \"inherits\";\n\nimport { pick, assign } from \"min-dash\";\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 { reworkGroupElements } from \"./util/util\";\nimport { ElementTypes } from \"../../../../domain/entities/elementTypes\";\n\n/**\n * a handler responsible for updating the element's businessObject\n * once changes on the diagram happen.\n */\nexport default function DomainStoryUpdater(eventBus, egon, connectionDocking) {\n CommandInterceptor.call(this, eventBus);\n\n function updateElement(e) {\n let context = e.context,\n shape = context.shape;\n\n if (!shape) {\n return;\n }\n let businessObject = shape.businessObject;\n let parent = shape.parent;\n let elements = egon._elements;\n\n // make sure element is added / removed from egon._elements\n if (!parent) {\n collectionRemove(elements, businessObject);\n } else {\n collectionAdd(elements, businessObject);\n }\n\n // save element position\n assign(businessObject, pick(shape, [\"x\", \"y\"]));\n\n // save element size if resizable\n if (shape.type === ElementTypes.GROUP) {\n assign(businessObject, pick(shape, [\"height\", \"width\"]));\n\n // rework the child-parent relations if a group was moved, such that all Objects that are visually in the group are also associated with it\n // since we do not have access to the standard-canvas object here, we cannot use the function correctGroupChildren() from DSLabelUtil\n if (parent != null) {\n reworkGroupElements(parent, shape);\n }\n }\n if (\n shape &&\n shape.parent &&\n \"type\" in shape.parent &&\n shape.parent.type === ElementTypes.GROUP\n ) {\n assign(businessObject, {\n parent: shape.parent.id,\n });\n }\n }\n\n function updateConnection(e) {\n let context = e.context,\n connection = context.connection,\n source = connection.source,\n target = connection.target,\n businessObject = connection.businessObject;\n\n if (e.newTarget) {\n target = e.newTarget;\n }\n if (e.newSource) {\n source = e.newSource;\n }\n\n let parent = connection.parent;\n let elements = egon._elements;\n\n // make sure element is added / removed from egon._elements\n if (!parent) {\n collectionRemove(elements, businessObject);\n } else {\n collectionAdd(elements, businessObject);\n }\n\n // update waypoints\n assign(businessObject, {\n waypoints: copyWaypoints(connection),\n });\n\n if (source) {\n if (!businessObject.source) {\n assign(businessObject, { source: source.id });\n } else {\n businessObject.source = source.id;\n }\n }\n if (target) {\n if (!businessObject.target) {\n assign(businessObject, { target: target.id });\n } else {\n businessObject.target = target.id;\n }\n }\n }\n\n function copyWaypoints(connection) {\n return connection.waypoints.map(function (p) {\n if (p.original) {\n return {\n original: {\n x: p.original.x,\n y: p.original.y,\n },\n x: p.x,\n y: p.y,\n };\n } else {\n return {\n x: p.x,\n y: p.y,\n };\n }\n });\n }\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 // cropping must be done before updateElement\n // do not change the order of these .executed calls\n this.executed([\"connection.layout\", \"connection.create\"], cropConnection);\n\n this.reverted([\"connection.layout\"], function (e) {\n delete e.context.cropped;\n });\n\n this.executed(\n [\n \"shape.create\",\n \"shape.move\",\n \"shape.delete\",\n \"shape.resize\",\n \"shape.removeGroupWithChildren\",\n ],\n ifDomainStoryElement(updateElement),\n );\n\n this.reverted(\n [\n \"shape.create\",\n \"shape.move\",\n \"shape.delete\",\n \"shape.resize\",\n \"shape.removeGroupWithChildren\",\n ],\n ifDomainStoryElement(updateElement),\n );\n\n this.executed(\n [\n \"connection.create\",\n \"connection.reconnect\",\n \"connection.updateWaypoints\",\n \"connection.delete\",\n \"connection.layout\",\n \"connection.move\",\n ],\n ifDomainStoryElement(updateConnection),\n );\n\n this.reverted(\n [\n \"connection.create\",\n \"connection.reconnect\",\n \"connection.updateWaypoints\",\n \"connection.delete\",\n \"connection.layout\",\n \"connection.move\",\n ],\n ifDomainStoryElement(updateConnection),\n );\n}\n\n// check if element in the context of an event is a domainStory element\nfunction ifDomainStoryElement(fn) {\n return (event) => {\n const context = event.context;\n const element = context.shape || context.connection;\n\n if (isDomainStory(element)) {\n fn(event);\n }\n };\n}\n\nfunction isDomainStory(element) {\n return element && /domainStory:/.test(element.type);\n}\n\ninherits(DomainStoryUpdater, CommandInterceptor);\n\nDomainStoryUpdater.$inject = [\"eventBus\", \"egon\", \"connectionDocking\"];\n","\"use strict\";\n\nimport LassoTool from \"diagram-js/lib/features/lasso-tool\";\nimport SpaceTool from \"diagram-js/lib/features/space-tool\";\nimport Palette from \"diagram-js/lib/features/palette\";\nimport TextRenderer from \"./util/TextRenderer\";\nimport DomainStoryElementFactory from \"./domainStoryElementFactory\";\nimport DomainStoryRenderer from \"./domainStoryRenderer\";\nimport DomainStoryPalette from \"./palette/domainStoryPalette\";\nimport DomainStoryRules from \"./domainStoryRules\";\nimport DomainStoryUpdater from \"./domainStoryUpdater\";\nimport CreateModule from \"diagram-js/lib/features/create\";\nimport ContextPadModule from \"diagram-js/lib/features/context-pad\";\nimport CommandStack from \"diagram-js/lib/command/CommandStack\";\nimport UpdateLabelHandler from \"./updateHandler/updateLabelHandler\";\nimport headlineAndDescriptionUpdateHandler from \"./updateHandler/headlineAndDescriptionUpdateHandler\";\nimport DomainStoryContextPadProvider from \"./context-pad/domainStoryContextPadProvider\";\nimport ReplaceMenuProvider from \"./change-icon/replaceMenuProvider\";\nimport DSModeling from \"./modeling/dSModeling\";\nimport BaseLayouter from \"diagram-js/lib/layout/BaseLayouter\";\nimport CroppingConnectionDocking from \"diagram-js/lib/layout/CroppingConnectionDocking\";\n\nexport default {\n __depends__: [CreateModule, ContextPadModule, Palette, SpaceTool, LassoTool],\n __init__: [\n \"domainStoryRenderer\",\n \"paletteProvider\",\n \"domainStoryRules\",\n \"domainStoryUpdater\",\n \"contextPadProvider\",\n \"replaceMenuProvider\",\n ],\n connectionDocking: [\"type\", CroppingConnectionDocking],\n layouter: [\"type\", BaseLayouter],\n textRenderer: [\"type\", TextRenderer],\n elementFactory: [\"type\", DomainStoryElementFactory],\n domainStoryRenderer: [\"type\", DomainStoryRenderer],\n paletteProvider: [\"type\", DomainStoryPalette],\n domainStoryRules: [\"type\", DomainStoryRules],\n domainStoryUpdater: [\"type\", DomainStoryUpdater],\n contextPadProvider: [\"type\", DomainStoryContextPadProvider],\n replaceMenuProvider: [\"type\", ReplaceMenuProvider],\n commandStack: [\"type\", CommandStack],\n updateLabelHandler: [\"type\", UpdateLabelHandler],\n headlineAndDescriptionUpdateHandler: [\n \"type\",\n headlineAndDescriptionUpdateHandler,\n ],\n modeling: [\"type\", DSModeling],\n};\n","\"use strict\";\n\nimport {\n append as svgAppend,\n attr as svgAttr,\n create as svgCreate,\n remove as svgRemove,\n} from \"tiny-svg\";\n\nimport { translate } from \"diagram-js/lib/util/SvgTransformUtil\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { is, getScaledPath } from \"../util/util\";\n\nconst MARKER_HIDDEN = \"djs-element-hidden\",\n MARKER_LABEL_HIDDEN = \"djs-label-hidden\";\n\nexport default function DSLabelEditingPreview(eventBus, canvas) {\n let self = this;\n\n let defaultLayer = canvas.getDefaultLayer();\n let element, absoluteElementBBox, gfx;\n\n eventBus.on(\"directEditing.activate\", function (context) {\n let activeProvider = context.active;\n\n element = activeProvider.element.label || activeProvider.element;\n\n if (is(element, ElementTypes.TEXTANNOTATION)) {\n absoluteElementBBox = canvas.getAbsoluteBBox(element);\n gfx = svgCreate(\"g\");\n\n let textPathData = getScaledPath({\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 let path = (self.path = svgCreate(\"path\"));\n\n svgAttr(path, {\n d: textPathData,\n strokeWidth: 2,\n stroke: \"black\",\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, ElementTypes.TEXTANNOTATION) || element.labelTarget) {\n canvas.addMarker(element, MARKER_HIDDEN);\n } else if (\n element.type.includes(ElementTypes.ACTOR) ||\n element.type.includes(ElementTypes.WORKOBJECT) ||\n element.type.includes(ElementTypes.ACTIVITY) ||\n element.type.includes(ElementTypes.GROUP)\n ) {\n canvas.addMarker(element, MARKER_LABEL_HIDDEN);\n }\n });\n\n eventBus.on(\"directEditing.resize\", function (context) {\n if (is(element, ElementTypes.TEXTANNOTATION)) {\n let height = context.height,\n dy = context.dy;\n\n let newElementHeight = Math.max(\n (element.height / absoluteElementBBox.height) * (height + dy),\n 0,\n );\n\n let textPathData = getScaledPath({\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(\n [\"directEditing.complete\", \"directEditing.cancel\"],\n function (context) {\n let activeProvider = context.active;\n\n if (activeProvider) {\n canvas.removeMarker(\n activeProvider.element.label || activeProvider.element,\n MARKER_HIDDEN,\n );\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}\n\nDSLabelEditingPreview.$inject = [\"eventBus\", \"canvas\"];\n","\"use strict\";\n\nimport { assign } from \"min-dash\";\n\nimport { autocomplete, getLabel } from \"./dsLabelUtil\";\n\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { sanitizeTextForSVGExport } from \"src/app/utils/sanitizer\";\nimport { is } from \"../util/util\";\nimport { isBackground } from \"../domainStoryRules\";\n\nlet dictionaryService;\n\nlet numberStash = 0;\nlet stashUse = false;\n\nexport function initializeLabelEditingProvider(labelingDictionary) {\n dictionaryService = labelingDictionary;\n}\n\nexport function getNumberStash() {\n let number = { use: stashUse, number: numberStash };\n stashUse = false;\n return number;\n}\n\nexport function toggleStashUse(use) {\n stashUse = use;\n}\n\nexport function focusElement(element) {\n // Opening a Angular Dialog seems to mess with the focus logic somehow.\n // My guess is that is makes the mousedown event passive, which prevents \"preventDefault\" from intercepting.\n // I am not sure how to fix it, but this seems to be a workaround.\n setTimeout(() => element.focus(), 0);\n}\n\nexport default function DSLabelEditingProvider(\n eventBus,\n canvas,\n directEditing,\n modeling,\n resizeHandles,\n textRenderer,\n updateLabelHandler,\n) {\n this._canvas = canvas;\n this._modeling = modeling;\n this._textRenderer = textRenderer;\n this._updateLabelHandler = updateLabelHandler;\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 if (is(event.element, ElementTypes.ACTIVITY)) {\n // if we edit an activity, we do not want the standard editing box\n numberStash = event.element.businessObject.number;\n stashUse = true;\n directEditing.complete();\n }\n });\n\n // complete on followup canvas operation\n eventBus.on(\n [\n \"element.mousedown\",\n \"drag.init\",\n \"canvas.viewbox.changing\",\n \"autoPlace\",\n \"popupMenu.open\",\n ],\n function () {\n if (directEditing.isActive()) {\n directEditing.complete();\n }\n },\n );\n\n // cancel on command stack changes\n eventBus.on([\"commandStack.changed\"], function () {\n if (directEditing.isActive()) {\n directEditing.cancel();\n }\n });\n\n eventBus.on(\"directEditing.activate\", function (event) {\n resizeHandles.removeResizers();\n let element = event.active.element;\n createAutocomplete(element);\n });\n\n eventBus.on(\"create.end\", 500, function (event) {\n let element = event.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 if (!is(element, ElementTypes.ACTIVITY)) {\n activateDirectEdit(element);\n }\n let editingBox = document.getElementsByClassName(\n \"djs-direct-editing-content\",\n );\n focusElement(editingBox.item(0));\n });\n\n eventBus.on(\"autoPlace.end\", 500, function (event) {\n activateDirectEdit(event.shape);\n });\n\n function activateDirectEdit(element, force) {\n if (\n force ||\n element.businessObject.type.includes(ElementTypes.DOMAINSTORY)\n ) {\n directEditing.activate(element);\n }\n }\n\n function createAutocomplete(element) {\n let editingBox = document.getElementsByClassName(\n \"djs-direct-editing-content\",\n );\n focusElement(editingBox.item(0));\n autocomplete(\n editingBox[0],\n dictionaryService.getUniqueWorkObjectNames(),\n element,\n eventBus,\n );\n }\n}\n\nDSLabelEditingProvider.$inject = [\n \"eventBus\",\n \"canvas\",\n \"directEditing\",\n \"modeling\",\n \"resizeHandles\",\n \"textRenderer\",\n \"updateLabelHandler\",\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 */\nDSLabelEditingProvider.prototype.activate = function (element) {\n // text\n if (isBackground(element)) {\n return;\n }\n let text = getLabel(element);\n\n if (text === undefined) {\n return;\n }\n\n let context = {\n text: text,\n };\n\n // bounds\n let bounds = this.getEditingBBox(element);\n\n assign(context, bounds);\n\n let options = {};\n\n if (is(element, ElementTypes.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 * 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 */\nDSLabelEditingProvider.prototype.getEditingBBox = function (element) {\n let canvas = this._canvas;\n\n let target = element.label || element;\n\n let bbox = canvas.getAbsoluteBBox(target);\n\n // default position\n let bounds = { x: bbox.x, y: bbox.y };\n\n /** The canvas is an object from diagram-js. The IDE might say that zoom is deprecated,\n * because it thinks that canvas is the standard HTML element.**/\n let zoom = canvas.zoom();\n let defaultStyle = this._textRenderer.getDefaultStyle();\n\n // take zoom into account\n let defaultFontSize = defaultStyle.fontSize * zoom,\n defaultLineHeight = defaultStyle.lineHeight;\n\n let style = {\n fontFamily: this._textRenderer.getDefaultStyle().fontFamily,\n fontWeight: this._textRenderer.getDefaultStyle().fontWeight,\n };\n\n // adjust for groups\n if (is(element, ElementTypes.GROUP)) {\n assign(bounds, {\n minWidth: bbox.width / 2.5 > 125 ? bbox.width / 2.5 : 125,\n maxWidth: bbox.width,\n minHeight: 30 * zoom,\n x: bbox.x,\n y: bbox.y,\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 textAlign: \"left\",\n });\n }\n\n if (\n // we can't use util's is() function here because the type contains the name of the icon\n /^domainStory:actor\\w*/.test(element.type) ||\n /^domainStory:workObject\\w*/.test(element.type)\n ) {\n assign(bounds, {\n width: bbox.width,\n minHeight: 30,\n y: bbox.y + bbox.height - 20,\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 // text annotations\n if (is(element, ElementTypes.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: 7 * zoom + \"px\",\n paddingBottom: 7 * zoom + \"px\",\n paddingLeft: 5 * 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\nDSLabelEditingProvider.prototype.update = function (\n element,\n newLabel,\n activeContextText,\n bounds,\n) {\n let newBounds, bbox;\n\n if (is(element, ElementTypes.TEXTANNOTATION)) {\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 this._modeling.updateLabel(\n element,\n sanitizeTextForSVGExport(newLabel),\n newBounds,\n );\n};\n","\"use strict\";\n\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { is } from \"../util/util\";\n\nfunction getLabelAttr(semantic) {\n if (\n semantic.type.includes(ElementTypes.ACTOR) ||\n semantic.type.includes(ElementTypes.WORKOBJECT) ||\n semantic.type.includes(ElementTypes.ACTIVITY) ||\n semantic.type.includes(ElementTypes.GROUP)\n ) {\n return \"name\";\n }\n if (semantic.type.includes(ElementTypes.TEXTANNOTATION)) {\n return \"text\";\n }\n}\n\nfunction getNumberAttr(semantic) {\n if (is(semantic, ElementTypes.ACTIVITY)) {\n return \"number\";\n }\n}\n\nexport function getLabel(element) {\n let semantic;\n if (element.businessObject) {\n semantic = element.businessObject;\n } else {\n semantic = element;\n }\n let attr = getLabelAttr(semantic);\n if (attr && semantic) {\n return semantic[attr] || \"\";\n }\n}\n\nexport function getNumber(element) {\n let semantic = element.businessObject,\n attr = getNumberAttr(semantic);\n\n if (attr) {\n return semantic[attr] || \"\";\n }\n}\n\nexport function setLabel(element, text) {\n let semantic;\n if (element.businessObject) {\n semantic = element.businessObject;\n } else {\n semantic = element;\n }\n let attr = getLabelAttr(semantic);\n\n if (attr) {\n semantic[attr] = text;\n }\n return element;\n}\n\nexport function setNumber(element, textNumber) {\n let semantic = element.businessObject,\n attr = getNumberAttr(semantic);\n\n if (attr) {\n semantic[attr] = textNumber;\n }\n\n return element;\n}\n\n// select at which part of the activity the label should be attached to\nexport function selectPartOfActivity(waypoints, angleActivity) {\n let selectedActivity = 0;\n let linelength = 49;\n\n for (let i = 0; i < waypoints.length; i++) {\n if (angleActivity[i] === 0 || angleActivity[i] === 180) {\n let length = Math.abs(waypoints[i].x - waypoints[i + 1].x);\n if (length > linelength) {\n selectedActivity = i;\n }\n }\n }\n return selectedActivity;\n}\n\n// approximate the width of the label text, standard fontsize: 11\nexport function calculateTextWidth(text) {\n if (!text) {\n return 0;\n }\n\n let fontsize = text.length * 5.1;\n fontsize = fontsize / 2;\n\n // add an initial offset to the absolute middle of the activity\n fontsize += 20;\n return fontsize;\n}\n\n/**\n * copied from https://www.w3schools.com/howto/howto_js_autocomplete.asp on 18.09.2018\n */\nexport function autocomplete(input, workObjectNames, element, eventBus) {\n closeAllLists();\n\n /* the autocomplete function takes three arguments,\n the text field element and an array of possible autocompleted values and an optional element to which it is appended:*/\n let currentFocus, filteredWorkObjectNames;\n\n /* execute a function when someone writes in the text field:*/\n input.addEventListener(\"input\", function () {\n if (workObjectNames.length === 0) {\n return;\n }\n\n /* the direct editing field of actors and workobjects is a recycled html-element and has old values that need to be overridden*/\n if (element.type.includes(ElementTypes.WORKOBJECT)) {\n this.value = this.innerHTML;\n }\n let autocompleteList,\n autocompleteItem,\n val = this.value;\n\n /* close any already open lists of autocompleted values*/\n closeAllLists();\n currentFocus = -1;\n\n /* create a DIV element that will contain the items (values):*/\n autocompleteList = document.createElement(\"DIV\");\n autocompleteList.setAttribute(\"id\", \"autocomplete-list\");\n autocompleteList.setAttribute(\"class\", \"autocomplete-items\");\n\n /* append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(autocompleteList);\n\n /* for each item in the array...*/\n filteredWorkObjectNames = [];\n for (const name of workObjectNames) {\n /* check if the item starts with the same letters as the text field value:*/\n if (val) {\n if (name.substring(0, val.length).toUpperCase() === val.toUpperCase()) {\n /* create a DIV element for each matching element:*/\n autocompleteItem = document.createElement(\"DIV\");\n\n /* make the matching letters bold:*/\n autocompleteItem.innerHTML =\n \"\" +\n name.substring(0, val.length) +\n \"\" +\n name.substring(val.length);\n\n /* insert an input field that will hold the current name:*/\n autocompleteItem.innerHTML +=\n \"\";\n autocompleteList.appendChild(autocompleteItem);\n\n filteredWorkObjectNames.push(name);\n }\n }\n }\n\n // if we edit an actor, we do not want auto-complete, since actors generally are unique\n if (element.type.includes(ElementTypes.ACTOR)) {\n autocompleteList.style.visibility = \"hidden\";\n }\n });\n\n /* execute a function presses a key on the keyboard:*/\n input.onkeydown = function (e) {\n let autocompleteList = document.getElementById(\"autocomplete-list\");\n if (autocompleteList) {\n autocompleteList = autocompleteList.getElementsByTagName(\"div\");\n }\n if (e.keyCode === 40) {\n /* If the arrow DOWN key is pressed,\n increase the currentFocus letiable:*/\n currentFocus++;\n\n /* and and make the current item more visible:*/\n addActive(autocompleteList);\n } else if (e.keyCode === 38) {\n // up\n /* If the arrow UP key is pressed,\n decrease the currentFocus letiable:*/\n currentFocus--;\n\n /* and and make the current item more visible:*/\n addActive(autocompleteList);\n } else if (e.keyCode === 13) {\n e.preventDefault();\n /* If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1) {\n element.businessObject.name = filteredWorkObjectNames[currentFocus];\n eventBus.fire(\"element.changed\", { element });\n }\n }\n };\n\n function addActive(autocompleteList) {\n /* a function to classify an item as \"active\":*/\n if (!autocompleteList || autocompleteList.length < 1) return false;\n\n /* start by removing the \"active\" class on all items:*/\n removeActive(autocompleteList);\n if (currentFocus >= autocompleteList.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = autocompleteList.length - 1;\n\n /* add class \"autocomplete-active\":*/\n autocompleteList[currentFocus].classList.add(\"autocomplete-active\");\n }\n\n function removeActive(autocompleteList) {\n /* a function to remove the \"active\" class from all autocomplete items:*/\n if (autocompleteList.length > 1) {\n for (const item of autocompleteList) {\n item.classList.remove(\"autocomplete-active\");\n }\n }\n }\n\n function closeAllLists(survivor) {\n /* close all autocomplete lists in the document,\n except the one passed as an argument:*/\n let autocompleteList =\n document.getElementsByClassName(\"autocomplete-items\");\n for (const item of autocompleteList) {\n if (survivor != item && survivor != input) {\n item.parentNode.removeChild(item);\n }\n }\n }\n\n /* execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n","\"use strict\";\n\nimport 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 CommandStack from \"diagram-js/lib/command/CommandStack\";\nimport UpdateLabelHandler from \"../updateHandler/updateLabelHandler\";\nimport DSLabelEditingPreview from \"./dsLabelEditingPreview\";\nimport DSLabelEditingProvider from \"./dsLabelEditingProvider\";\nimport DSModeling from \"../modeling/dSModeling\";\n\nexport default {\n __depends__: [ChangeSupportModule, ResizeModule, DirectEditingModule],\n __init__: [\"dSlabelEditingProvider\", \"dSlabelEditingPreview\"],\n dSlabelEditingProvider: [\"type\", DSLabelEditingProvider],\n dSlabelEditingPreview: [\"type\", DSLabelEditingPreview],\n updateLabelHandler: [\"type\", UpdateLabelHandler],\n commandStack: [\"type\", CommandStack],\n modeling: [\"type \", DSModeling],\n};\n","\"use strict\";\n\nimport { selectPartOfActivity } from \"./dsLabelUtil\";\nimport { angleBetween } from \"src/app/utils/mathExtensions\";\n\nexport function countLines(str) {\n return str.split(/\\r\\n|\\r|\\n/).length;\n}\n\n// determine the position of the label at the activity\nexport function labelPosition(waypoints, lines = 1) {\n let amountWaypoints = waypoints.length;\n let determinedPosition;\n let xPos;\n let yPos;\n\n if (amountWaypoints > 2) {\n let angleActivity = new Array(amountWaypoints - 1);\n for (let i = 0; i < amountWaypoints - 1; i++) {\n // calculate the angles of the activities\n angleActivity[i] = angleBetween(waypoints[i], waypoints[i + 1]);\n }\n\n let selectedActivity = selectPartOfActivity(waypoints, angleActivity);\n\n xPos = labelPositionX(\n waypoints[selectedActivity],\n waypoints[selectedActivity + 1],\n );\n yPos = labelPositionY(\n waypoints[selectedActivity],\n waypoints[selectedActivity + 1],\n lines,\n );\n\n determinedPosition = {\n x: xPos,\n y: yPos,\n selected: selectedActivity,\n };\n\n return determinedPosition;\n } else {\n xPos = labelPositionX(waypoints[0], waypoints[1]);\n yPos = labelPositionY(waypoints[0], waypoints[1], lines);\n\n determinedPosition = {\n x: xPos,\n y: yPos,\n selected: 0,\n };\n\n return determinedPosition;\n }\n}\n\n// calculate the X position of the label\nexport function labelPositionX(startPoint, endPoint) {\n let angle = angleBetween(startPoint, endPoint);\n let offsetX = 0;\n let scaledAngle = 0;\n if (angle === 0 || angle === 180 || angle === 90 || angle === 270) {\n offsetX = 0;\n } else if (angle > 0 && angle < 90) {\n // endpoint in upper right quadrant\n offsetX = 5 - angle / 6;\n } else if (angle > 90 && angle < 180) {\n // endpoint in upper left quadrant\n scaledAngle = angle - 90;\n offsetX = 5 - scaledAngle / 18;\n } else if (angle > 180 && angle < 270) {\n // endpoint in lower left quadrant\n scaledAngle = angle - 180;\n offsetX = scaledAngle / 18;\n } else if (angle > 270) {\n // endpoint in lower right quadrant\n scaledAngle = angle - 270;\n offsetX = 5 - scaledAngle / 6;\n }\n return offsetX + (startPoint.x + endPoint.x) / 2;\n}\n\n// calculate the Y position of the label\nexport function labelPositionY(startPoint, endPoint, lines = 1) {\n let angle = angleBetween(startPoint, endPoint);\n let offsetY = 0;\n let scaledAngle = 0;\n\n if (angle === 0 || angle === 180) {\n offsetY = 15;\n } else if (angle === 90 || angle === 270) {\n offsetY = 0;\n } else if (angle > 0 && angle < 90) {\n // endpoint in upper right quadrant\n offsetY = 15 - angle / 6;\n } else if (angle > 90 && angle < 180) {\n // endpoint in upper left quadrant\n scaledAngle = angle - 90;\n offsetY = (-scaledAngle / 9) * lines;\n } else if (angle > 180 && angle < 270) {\n // endpoint in lower left quadrant\n scaledAngle = angle - 180;\n offsetY = 15 - scaledAngle / 3;\n } else if (angle > 270) {\n // endpoint in lower right quadrant\n scaledAngle = angle - 270;\n offsetY = (-scaledAngle / 9) * lines;\n }\n return offsetY + (startPoint.y + endPoint.y) / 2;\n}\n","\"use strict\";\n\nimport Modeling from \"diagram-js/lib/features/modeling/Modeling\";\n\nimport { inherits } from \"util\";\n\nexport default function DSModeling(\n eventBus,\n elementFactory,\n commandStack,\n domainStoryRules,\n) {\n Modeling.call(this, eventBus, elementFactory, commandStack, domainStoryRules);\n}\n\nModeling.prototype.updateLabel = function (element, newLabel, newBounds) {\n if (\n element.businessObject\n ? newLabel !== element.businessObject.name\n : newLabel !== element.name\n ) {\n if (/^domainStory:/.test(element.type)) {\n this._commandStack.execute(\"element.updateCustomLabel\", {\n element: element,\n newLabel: newLabel,\n newBounds: newBounds,\n });\n } else {\n this._commandStack.execute(\"element.updateLabel\", {\n element: element,\n newLabel: newLabel,\n newBounds: newBounds,\n });\n }\n }\n};\n\nModeling.prototype.updateNumber = function (element, newNumber, newBounds) {\n if (\n element.businessObject\n ? newNumber !== element.businessObject.number\n : newNumber !== element.number\n ) {\n if (/^domainStory:/.test(element.type)) {\n this._commandStack.execute(\"element.updateCustomLabel\", {\n element: element,\n newNumber: newNumber,\n newBounds: newBounds,\n });\n } else {\n this._commandStack.execute(\"element.updateLabel\", {\n element: element,\n newNumber: newNumber,\n newBounds: newBounds,\n });\n }\n }\n};\n\nModeling.prototype.replaceShape = function (oldShape, newShape, hints) {\n let context = {\n oldShape: oldShape,\n newData: newShape,\n hints: hints || {},\n };\n\n this._commandStack.execute(\"shape.replace\", context);\n return context.newShape;\n};\n\nModeling.prototype.removeGroup = function (element) {\n this._commandStack.execute(\"shape.removeGroupWithoutChildren\", {\n element: element,\n });\n this.removeElements({ element });\n};\n\ninherits(DSModeling, Modeling);\n\nDSModeling.$inject = [\n \"eventBus\",\n \"elementFactory\",\n \"commandStack\",\n \"domainStoryRules\",\n];\n","\"use strict\";\n\nimport DomainStoryPalette from \"../palette/domainStoryPalette\";\nimport CreateModule from \"diagram-js/lib/features/create\";\nimport Connect from \"diagram-js/lib/features/connect\";\nimport Translate from \"diagram-js/lib/i18n/translate\";\nimport ContextPadModule from \"diagram-js/lib/features/context-pad\";\nimport PopupMenu from \"diagram-js/lib/features/popup-menu\";\nimport CommandStack from \"diagram-js/lib/command/CommandStack\";\nimport UpdateLabelHandler from \"../updateHandler/updateLabelHandler\";\nimport DomainStoryUpdater from \"../domainStoryUpdater\";\nimport DomainStoryElementFactory from \"../domainStoryElementFactory\";\nimport headlineAndDescriptionUpdateHandler from \"../updateHandler/headlineAndDescriptionUpdateHandler\";\nimport DomainStoryRenderer from \"../domainStoryRenderer\";\nimport DSModeling from \"./dSModeling\";\nimport DomainStoryRules from \"../domainStoryRules\";\nimport ReplaceMenuProvider from \"../change-icon/replaceMenuProvider\";\nimport DomainStoryContextPadProvider from \"../context-pad/domainStoryContextPadProvider\";\n\nexport default {\n __depends__: [CreateModule, ContextPadModule, Connect, Translate, PopupMenu],\n __init__: [\n \"domainStoryRenderer\",\n \"paletteProvider\",\n \"domainStoryRules\",\n \"domainStoryUpdater\",\n \"contextPadProvider\",\n \"replaceMenuProvider\",\n ],\n elementFactory: [\"type\", DomainStoryElementFactory],\n domainStoryRenderer: [\"type\", DomainStoryRenderer],\n paletteProvider: [\"type\", DomainStoryPalette],\n domainStoryRules: [\"type\", DomainStoryRules],\n domainStoryUpdater: [\"type\", DomainStoryUpdater],\n contextPadProvider: [\"type\", DomainStoryContextPadProvider],\n replaceMenuProvider: [\"type\", ReplaceMenuProvider],\n commandStack: [\"type\", CommandStack],\n updateLabelHandler: [\"type\", UpdateLabelHandler],\n headlineAndDescriptionUpdateHandler: [\n \"type\",\n headlineAndDescriptionUpdateHandler,\n ],\n modeling: [\"type\", DSModeling],\n};\n","\"use strict\";\n\nimport { angleBetween } from \"src/app/utils/mathExtensions\";\n\nlet numberRegistry = [];\nlet multipleNumberRegistry = [false];\n\nlet canvasElementRegistry;\n\nexport function initializeNumbering(canvasElementRegistryService) {\n canvasElementRegistry = canvasElementRegistryService;\n}\n\nexport function updateMultipleNumberRegistry(activityBusinessObjects) {\n activityBusinessObjects.forEach(\n (activity) =>\n (multipleNumberRegistry[activity.number] =\n activity.multipleNumberAllowed),\n );\n}\n\n// defines the box for activity numbers\nexport function numberBoxDefinitions(element) {\n let alignment = \"center\";\n let boxWidth = 30;\n let boxHeight = 30;\n let angle = 0;\n if (element.waypoints.length > 1) {\n angle = angleBetween(\n // Start of first arrow segment\n element.waypoints[0],\n // End of first arrow segment\n element.waypoints[1],\n );\n }\n let x = element.waypoints[0].x;\n let y = element.waypoints[0].y;\n\n let fixedOffsetX = 0;\n let fixedOffsetY = 0;\n let angleDependantOffsetX = 0;\n let angleDependantOffsetY = 0;\n\n // Fine tune positioning of sequence number above beginning of first arrow segment\n if (angle >= 0 && angle <= 45) {\n fixedOffsetX = 25;\n angleDependantOffsetY = 20 * (1 - angle / 45);\n } else if (angle <= 90) {\n fixedOffsetX = 5;\n angleDependantOffsetX = 15 * (1 - (angle - 45) / 45);\n } else if (angle <= 135) {\n fixedOffsetX = 5;\n angleDependantOffsetX = -20 * ((angle - 90) / 45);\n } else if (angle <= 180) {\n fixedOffsetX = -15;\n angleDependantOffsetY = 20 * ((angle - 135) / 45);\n } else if (angle <= 225) {\n fixedOffsetX = -15;\n fixedOffsetY = 15;\n angleDependantOffsetY = 25 * ((angle - 180) / 45);\n } else if (angle <= 270) {\n fixedOffsetX = 5;\n angleDependantOffsetX = -20 * (1 - (angle - 225) / 45);\n fixedOffsetY = 40;\n } else if (angle <= 315) {\n fixedOffsetX = 5;\n angleDependantOffsetX = 25 * ((angle - 270) / 45);\n fixedOffsetY = 40;\n } else {\n fixedOffsetX = 25;\n fixedOffsetY = 20;\n angleDependantOffsetY = 15 * (1 - (angle - 315) / 45);\n }\n\n x = x + fixedOffsetX + angleDependantOffsetX;\n y = y + fixedOffsetY + angleDependantOffsetY;\n\n return {\n textAlign: alignment,\n width: boxWidth,\n height: boxHeight,\n x: x,\n y: y,\n };\n}\n\n// determine the next available number that is not yet used\nexport function generateAutomaticNumber(elementActivity, commandStack) {\n const semantic = elementActivity.businessObject;\n const usedNumbers = [0];\n let wantedNumber = -1;\n\n const activitiesFromActors = canvasElementRegistry.getActivitiesFromActors();\n\n activitiesFromActors.forEach((element) => {\n if (element.businessObject.number) {\n usedNumbers.push(+element.businessObject.number);\n }\n });\n for (let i = 0; i < usedNumbers.length; i++) {\n if (!usedNumbers.includes(i)) {\n if (!usedNumbers.includes(i)) {\n wantedNumber = i;\n i = usedNumbers.length;\n }\n }\n }\n if (wantedNumber === -1) {\n wantedNumber = usedNumbers.length;\n }\n\n updateExistingNumbersAtGeneration(\n activitiesFromActors,\n wantedNumber,\n commandStack,\n );\n semantic.number = wantedNumber;\n return wantedNumber;\n}\n\n// update the numbers at the activities when generating a new activity\nexport function updateExistingNumbersAtGeneration(\n activitiesFromActors,\n wantedNumber,\n commandStack,\n) {\n activitiesFromActors.forEach((element) => {\n let number = +element.businessObject.number;\n\n if (number >= wantedNumber) {\n wantedNumber++;\n setTimeout(function () {\n commandStack.execute(\"activity.changed\", {\n businessObject: element.businessObject,\n newLabel: element.businessObject.name,\n newNumber: number,\n element: element,\n });\n }, 10);\n }\n });\n}\n\n// update the numbers at the activities when editing an activity\nexport function updateExistingNumbersAtEditing(\n activitiesFromActors,\n wantedNumber,\n eventBus,\n) {\n // get a sorted list of all activities that could need changing\n let sortedActivities = [[]];\n activitiesFromActors.forEach((activity) => {\n if (!sortedActivities[activity.businessObject.number]) {\n sortedActivities[activity.businessObject.number] = [];\n }\n sortedActivities[activity.businessObject.number].push(activity);\n });\n\n // set the number of each activity to the next highest number, starting from the number, we overrode\n let oldMultipleNumberRegistry = [...multipleNumberRegistry];\n let currentNumber = wantedNumber;\n for (\n currentNumber;\n currentNumber < sortedActivities.length;\n currentNumber++\n ) {\n if (sortedActivities[currentNumber]) {\n wantedNumber++;\n multipleNumberRegistry[wantedNumber] =\n oldMultipleNumberRegistry[currentNumber];\n setNumberOfActivity(\n sortedActivities[currentNumber],\n wantedNumber,\n eventBus,\n );\n }\n }\n}\n\n// get the IDs of activities with their associated number, only returns activities that are originating from an actor\nexport function getNumbersAndIDs() {\n let iDWithNumber = [];\n let activities = canvasElementRegistry.getActivitiesFromActors();\n\n for (let i = activities.length - 1; i >= 0; i--) {\n let id = activities[i].businessObject.id;\n let number = activities[i].businessObject.number;\n iDWithNumber.push({ id: id, number: number });\n }\n return iDWithNumber;\n}\n\nexport function addNumberToRegistry(renderedNumber, number) {\n numberRegistry[number] = renderedNumber;\n}\n\nexport function setNumberIsMultiple(number, multi) {\n multipleNumberRegistry[number] = multi;\n}\n\n/**\n * @returns copy of registry\n */\nexport function getNumberRegistry() {\n return numberRegistry.slice(0);\n}\n\nexport function getMultipleNumberRegistry() {\n return multipleNumberRegistry.slice(0);\n}\n\nfunction setNumberOfActivity(elementArray, wantedNumber, eventBus) {\n if (elementArray) {\n elementArray.forEach((element) => {\n if (element) {\n let businessObject = element.businessObject;\n if (businessObject) {\n businessObject.number = wantedNumber;\n }\n eventBus.fire(\"element.changed\", { element });\n }\n });\n }\n}\n","\"use strict\";\n\nimport { assign } from \"min-dash\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\n\nlet iconDictionary;\n\nexport function initializePalette(iconDictionaryService) {\n iconDictionary = iconDictionaryService;\n}\n\nexport default function PaletteProvider(\n palette,\n create,\n elementFactory,\n spaceTool,\n lassoTool,\n) {\n this._create = create;\n this._elementFactory = elementFactory;\n this._spaceTool = spaceTool;\n this._lassoTool = lassoTool;\n\n palette.registerProvider(this);\n}\n\nPaletteProvider.$inject = [\n \"palette\",\n \"create\",\n \"elementFactory\",\n \"spaceTool\",\n \"lassoTool\",\n \"modeling\",\n];\n\nPaletteProvider.prototype.getPaletteEntries = function () {\n let actions = {},\n create = this._create,\n elementFactory = this._elementFactory,\n spaceTool = this._spaceTool,\n lassoTool = this._lassoTool;\n\n function createAction(type, group, className, title, options) {\n function createListener(event) {\n let shape = elementFactory.createShape(assign({ type: type }, options));\n\n assign(shape.businessObject, {\n id: shape.id,\n });\n\n create.start(event, shape);\n }\n\n let shortType = type.replace(/^domainStory:/, \"\");\n\n return {\n group: group,\n className: className,\n title: \"Create \" + title || \"Create \" + shortType,\n action: {\n dragstart: createListener,\n click: createListener,\n },\n };\n }\n\n return initPalette(actions, spaceTool, lassoTool, createAction);\n};\n\nfunction initPalette(actions, spaceTool, lassoTool, createAction) {\n let config = iconDictionary?.getCurrentIconConfigurationForMenu();\n\n iconDictionary?.initTypeDictionaries(config.actors, config.workObjects);\n\n let actorTypes = iconDictionary?.getIconsAssignedAs(ElementTypes.ACTOR);\n\n actorTypes?.keysArray().forEach((name) => {\n addCanvasObjectTypes(\n name,\n createAction,\n actions,\n \"actor\",\n ElementTypes.ACTOR,\n );\n });\n\n assign(actions, {\n \"actor-separator\": {\n group: \"actor\",\n separator: true,\n },\n });\n\n let workObjectTypes = iconDictionary?.getIconsAssignedAs(\n ElementTypes.WORKOBJECT,\n );\n\n workObjectTypes?.keysArray().forEach((name) => {\n addCanvasObjectTypes(\n name,\n createAction,\n actions,\n \"actor\",\n ElementTypes.WORKOBJECT,\n );\n });\n\n assign(actions, {\n \"workObject-separator\": {\n group: \"workObject\",\n separator: true,\n },\n \"domainStory-group\": createAction(\n ElementTypes.GROUP,\n \"group\",\n \"icon-domain-story-tool-group\",\n \"group\",\n ),\n \"group-separator\": {\n group: \"group\",\n separator: true,\n },\n \"lasso-tool\": {\n group: \"tools\",\n className: \"bpmn-icon-lasso-tool\",\n title: \"Activate the 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: \"Activate the create/remove space tool\",\n action: {\n click: function (event) {\n spaceTool.activateSelection(event);\n },\n },\n },\n });\n\n return actions;\n}\n\nfunction addCanvasObjectTypes(\n name,\n createAction,\n actions,\n className,\n elementType,\n) {\n let icon = iconDictionary.getIconForMenu(elementType, name);\n\n let action = [];\n action[\"domainStory-\" + className + name] = createAction(\n `${elementType}${name}`,\n className,\n icon,\n name,\n );\n assign(actions, action);\n}\n","import inherits from \"inherits-browser\";\n\nimport EditorActions from \"diagram-js/lib/features/editor-actions/EditorActions\";\n\nexport default function AdditionalEditorActions(injector) {\n injector.invoke(EditorActions, this);\n}\n\ninherits(AdditionalEditorActions, EditorActions);\n\nAdditionalEditorActions.$inject = [\"injector\"];\n\n/**\n * Register default actions.\n *\n * @param {Injector} injector\n */\nAdditionalEditorActions.prototype._registerDefaultActions = function (\n injector,\n) {\n // (0) invoke super method\n\n EditorActions.prototype._registerDefaultActions.call(this, injector);\n\n // (1) retrieve optional components to integrate with\n\n var canvas = injector.get(\"canvas\", false);\n var elementRegistry = injector.get(\"elementRegistry\", false);\n var selection = injector.get(\"selection\", false);\n var spaceTool = injector.get(\"spaceTool\", false);\n var lassoTool = injector.get(\"lassoTool\", false);\n var handTool = injector.get(\"handTool\", false);\n var directEditing = injector.get(\"directEditing\", false);\n\n if (canvas && elementRegistry && selection) {\n this._registerAction(\"selectElements\", function () {\n // select all elements except for the invisible\n // root element\n var rootElement = canvas.getRootElement();\n\n var elements = elementRegistry.filter(function (element) {\n return element !== rootElement;\n });\n\n selection.select(elements);\n\n return elements;\n });\n }\n\n if (spaceTool) {\n this._registerAction(\"spaceTool\", function () {\n spaceTool.toggle();\n });\n }\n\n if (lassoTool) {\n this._registerAction(\"lassoTool\", function () {\n lassoTool.toggle();\n });\n }\n\n if (handTool) {\n this._registerAction(\"handTool\", function () {\n handTool.toggle();\n });\n }\n\n if (selection && directEditing) {\n this._registerAction(\"directEditing\", function () {\n var currentSelection = selection.get();\n\n if (currentSelection.length) {\n directEditing.activate(currentSelection[0]);\n }\n });\n }\n};\n","import inherits from \"inherits-browser\";\n\nimport KeyboardBindings from \"diagram-js/lib/features/keyboard/KeyboardBindings\";\n\nexport default function AdditionalKeyboardBindings(injector) {\n injector.invoke(KeyboardBindings, this);\n}\n\ninherits(AdditionalKeyboardBindings, KeyboardBindings);\n\nAdditionalKeyboardBindings.$inject = [\"injector\"];\n\nAdditionalKeyboardBindings.prototype.registerBindings = function (\n keyboard,\n editorActions,\n) {\n // inherit default bindings\n KeyboardBindings.prototype.registerBindings.call(\n this,\n keyboard,\n editorActions,\n );\n\n function addListener(action, fn) {\n if (editorActions.isRegistered(action)) {\n keyboard.addListener(fn);\n }\n }\n\n // select all elements\n // CTRL + A\n addListener(\"selectElements\", function (context) {\n var event = context.keyEvent;\n\n if (keyboard.isKey([\"a\", \"A\"], event) && keyboard.isCmd(event)) {\n editorActions.trigger(\"selectElements\");\n\n return true;\n }\n });\n\n // activate space tool\n // S\n addListener(\"spaceTool\", function (context) {\n var event = context.keyEvent;\n\n if (keyboard.hasModifier(event)) {\n return;\n }\n\n if (keyboard.isKey([\"s\", \"S\"], event)) {\n editorActions.trigger(\"spaceTool\");\n\n return true;\n }\n });\n\n // activate lasso tool\n // L\n addListener(\"lassoTool\", function (context) {\n var event = context.keyEvent;\n\n if (keyboard.hasModifier(event)) {\n return;\n }\n\n if (keyboard.isKey([\"l\", \"L\"], event)) {\n editorActions.trigger(\"lassoTool\");\n\n return true;\n }\n });\n\n // activate hand tool\n // H\n addListener(\"handTool\", function (context) {\n var event = context.keyEvent;\n\n if (keyboard.hasModifier(event)) {\n return;\n }\n\n if (keyboard.isKey([\"h\", \"H\"], event)) {\n editorActions.trigger(\"handTool\");\n\n return true;\n }\n });\n\n // activate direct editing\n // E\n addListener(\"directEditing\", function (context) {\n var event = context.keyEvent;\n\n if (keyboard.hasModifier(event)) {\n return;\n }\n\n if (keyboard.isKey([\"e\", \"E\"], event)) {\n editorActions.trigger(\"directEditing\");\n\n return true;\n }\n });\n};\n","import EditorActionsModule from \"diagram-js/lib/features/editor-actions\";\nimport KeyboardModule from \"diagram-js/lib/features/keyboard\";\nimport AdditionalEditorActions from \"./AdditionalEditorActions\";\nimport AdditionalKeyboardBindings from \"./AdditionalKeyboardBindings\";\n\nexport default {\n __depends__: [EditorActionsModule, KeyboardModule],\n __init__: [\"additionalEditorActions\", \"additionalKeyBindings\"],\n additionalEditorActions: [\"type\", AdditionalEditorActions],\n additionalKeyBindings: [\"type\", AdditionalKeyboardBindings],\n};\n","\"use strict\";\n\nimport { getNumbersAndIDs } from \"../numbering/numbering\";\n\n/**\n * commandStack Handler for changes at activities\n */\n\nlet canvasElementRegistry;\nexport function initializeActivityUpdateHandler(canvasElementRegistryService) {\n canvasElementRegistry = canvasElementRegistryService;\n}\n\nexport default function activityUpdateHandler(commandStack, eventBus) {\n commandStack.registerHandler(\n \"activity.directionChange\",\n activity_directionChange,\n );\n commandStack.registerHandler(\"activity.changed\", activity_changed);\n\n // update the activity from the activity-dialog, either with or without number\n // and change other activities too, to keep the numbers consistent\n function activity_changed(modeling) {\n this.preExecute = function (context) {\n context.oldLabel = context.businessObject.name || \" \";\n\n let oldNumbersWithIDs = getNumbersAndIDs();\n modeling.updateLabel(context.businessObject, context.newLabel);\n modeling.updateNumber(context.businessObject, context.newNumber);\n\n context.oldNumber = context.businessObject.number;\n context.oldNumbersWithIDs = oldNumbersWithIDs;\n };\n\n this.execute = function (context) {\n let businessObject = context.businessObject;\n let element = context.element;\n\n if (context.newLabel && context.newLabel.length < 1) {\n context.newLabel = \" \";\n }\n\n businessObject.name = context.newLabel;\n businessObject.number = context.newNumber;\n\n eventBus.fire(\"element.changed\", { element });\n };\n\n this.revert = function (context) {\n let semantic = context.businessObject;\n let element = context.element;\n semantic.name = context.oldLabel;\n semantic.number = context.oldNumber;\n\n revertAutomaticNumberGenerationChange(\n context.oldNumbersWithIDs,\n eventBus,\n );\n\n eventBus.fire(\"element.changed\", { element });\n };\n }\n\n // change the direction of a single activity without affecting other activities\n function activity_directionChange(modeling) {\n this.preExecute = function (context) {\n context.oldNumber = context.businessObject.number;\n context.oldWaypoints = context.element.waypoints;\n context.name = context.businessObject.name;\n\n if (!context.oldNumber) {\n context.oldNumber = 0;\n }\n modeling.updateNumber(context.businessObject, context.newNumber);\n };\n\n this.execute = function (context) {\n let businessObject = context.businessObject;\n let element = context.element;\n let swapSource = element.source;\n let newWaypoints = [];\n let waypoints = element.waypoints;\n\n for (let i = waypoints.length - 1; i >= 0; i--) {\n newWaypoints.push(waypoints[i]);\n }\n\n element.source = element.target;\n businessObject.source = businessObject.target;\n element.target = swapSource;\n businessObject.target = swapSource.id;\n\n businessObject.name = context.name;\n businessObject.number = context.newNumber;\n element.waypoints = newWaypoints;\n\n eventBus.fire(\"element.changed\", { element });\n };\n\n this.revert = function (context) {\n let semantic = context.businessObject;\n let element = context.element;\n let swapSource = element.source;\n\n element.source = element.target;\n semantic.source = semantic.target;\n element.target = swapSource;\n semantic.target = swapSource.id;\n\n semantic.name = context.name;\n\n semantic.number = context.oldNumber;\n element.waypoints = context.oldWaypoints;\n\n eventBus.fire(\"element.changed\", { element });\n };\n }\n}\n\n// reverts the automatic changed done by the automatic number-generation at editing\nfunction revertAutomaticNumberGenerationChange(iDWithNumber, eventBus) {\n let activities = canvasElementRegistry?.getActivitesFromActors();\n for (let i = activities.length - 1; i >= 0; i--) {\n for (let j = iDWithNumber.length - 1; j >= 0; j--) {\n if (iDWithNumber[j].id.includes(activities[i].businessObject.id)) {\n let element = activities[i];\n element.businessObject.number = iDWithNumber[j].number;\n j = -5;\n eventBus.fire(\"element.changed\", { element });\n iDWithNumber.splice(j, 1);\n }\n }\n }\n}\n","\"use strict\";\n\nimport { undoGroupRework } from \"../util/util\";\nimport { ElementTypes } from \"../../../../../domain/entities/elementTypes\";\n\nexport default function elementUpdateHandler(commandStack, eventBus) {\n commandStack.registerHandler(\"element.colorChange\", element_colorChange);\n commandStack.registerHandler(\n \"shape.removeGroupWithoutChildren\",\n removeGroupWithoutChildren,\n );\n\n function element_colorChange() {\n this.preExecute = function (context) {\n context.oldColor = context.businessObject.pickedColor;\n };\n\n this.execute = function (context) {\n let semantic = context.businessObject;\n let element = context.element;\n\n if (\n semantic.type.includes(ElementTypes.TEXTANNOTATION) &&\n element.incoming[0]\n ) {\n element.incoming[0].businessObject.pickedColor = context.newColor;\n eventBus.fire(\"element.changed\", { element: element.incoming[0] });\n }\n\n semantic.pickedColor = context.newColor;\n\n eventBus.fire(\"element.changed\", { element });\n };\n\n this.revert = function (context) {\n let semantic = context.businessObject;\n let element = context.element;\n\n if (\n semantic.type.includes(ElementTypes.TEXTANNOTATION) &&\n element.incoming[0]\n ) {\n element.incoming[0].businessObject.pickedColor = context.oldColor;\n eventBus.fire(\"element.changed\", { element: element.incoming[0] });\n }\n\n semantic.pickedColor = context.oldColor;\n\n eventBus.fire(\"element.changed\", { element });\n };\n }\n\n function removeGroupWithoutChildren() {\n this.preExecute = function (ctx) {\n ctx.parent = ctx.element.parent;\n ctx.children = ctx.element.children.slice();\n };\n\n this.execute = function (ctx) {\n let element = ctx.element;\n ctx.children.forEach((child) => {\n undoGroupRework(element, child);\n eventBus.fire(\"element.changed\", { element: child });\n });\n eventBus.fire(\"shape.remove\", { element });\n };\n\n this.revert = function (ctx) {\n let element = ctx.element;\n eventBus.fire(\"shape.added\", { element });\n\n ctx.element.children.forEach((child) => {\n reworkGroupElements(element, child);\n });\n };\n }\n}\n","import { sanitizeTextForSVGExport } from \"src/app/utils/sanitizer\";\n\nexport default function headlineAndDescriptionUpdateHandler(\n commandStack,\n titleService,\n) {\n commandStack.registerHandler(\n \"story.updateHeadlineAndDescription\",\n handlerFunction,\n );\n\n function handlerFunction() {\n this.execute = function (ctx) {\n ctx.oldTitle = titleService.getTitle();\n ctx.oldDescription = titleService.getDescription();\n\n titleService.updateTitleAndDescription(\n sanitizeTextForSVGExport(ctx.newTitle),\n sanitizeTextForSVGExport(ctx.newDescription),\n false,\n );\n };\n\n this.revert = function (ctx) {\n titleService.updateTitleAndDescription(\n ctx.oldTitle,\n ctx.oldDescription,\n false,\n );\n };\n }\n}\n","\"use strict\";\n\nexport default function DSMassRenameHandler(commandStack, eventBus) {\n commandStack.registerHandler(\"domainStoryObjects.massRename\", massRename);\n\n function massRename(modeling) {\n this.preExecute = function (context) {\n let relevantElements = context.elements;\n\n context.oldLabel = relevantElements[0].businessObject.name;\n\n relevantElements.forEach((element) => {\n modeling.updateLabel(element.businessObject, confirm.newValue);\n });\n };\n\n this.execute = function (context) {\n let relevantElements = context.elements;\n relevantElements.forEach((element) => {\n let semantic = element.businessObject;\n semantic.name = context.newValue;\n\n eventBus.fire(\"element.changed\", { element });\n });\n };\n\n this.revert = function (context) {\n let relevantElements = context.elements;\n relevantElements.forEach((element) => {\n let semantic = element.businessObject;\n semantic.name = context.oldLabel;\n\n eventBus.fire(\"element.changed\", { element });\n });\n };\n }\n}\n","\"use strict\";\n\nimport {\n setLabel,\n getLabel,\n setNumber,\n getNumber,\n} from \"../labeling/dsLabelUtil\";\n\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { getBusinessObject, is } from \"../util/util\";\n\nconst NULL_DIMENSIONS = {\n width: 0,\n height: 0,\n};\n\n/**\n * a handler that updates the text or label of an element.\n */\nexport default function UpdateLabelHandler(\n modeling,\n textRenderer,\n commandStack,\n) {\n commandStack.registerHandler(\"element.updateCustomLabel\", handlerFunction);\n\n function handlerFunction() {\n this.execute = function (ctx) {\n ctx.oldLabel = getLabel(ctx.element);\n ctx.oldNumber = getNumber(ctx.element);\n return setText(ctx.element, ctx.newLabel, ctx.newNumber);\n };\n\n this.revert = function (ctx) {\n return setText(ctx.element, ctx.oldLabel, ctx.oldNumber);\n };\n\n this.postExecute = function (ctx) {\n let element = ctx.element,\n label = element.label || element,\n newBounds = ctx.newBounds;\n\n // resize text annotation to amount of text that is entered\n if (is(element, ElementTypes.TEXTANNOTATION)) {\n let bo = getBusinessObject(label);\n\n let text = bo.name || bo.text;\n\n // don't resize without text\n if (!text) {\n return;\n }\n\n // resize element based on label _or_ pre-defined bounds\n if (typeof newBounds === \"undefined\") {\n newBounds = textRenderer.getLayoutedBounds(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 }\n}\n\nfunction setText(element, text, textNumber) {\n let label = element.label || element;\n\n let number = element.number || element;\n\n let labelTarget = element.labelTarget || element;\n\n let numberTarget = element.numberTarget || element;\n setLabel(label, text);\n setNumber(number, textNumber);\n\n return [label, labelTarget, number, numberTarget];\n}\n\nUpdateLabelHandler.$inject = [\"modeling\", \"textRenderer\", \"commandStack\"];\n","/**\n * This file must not be changed or exchanged.\n *\n * @see http://bpmn.io/license for more information.\n */\n\nimport {\n assignStyle,\n domify,\n delegate as domDelegate,\n query as domQuery,\n} from \"min-dom\";\n\n// inlined ../../resources/logo.svg\nvar BPMNIO_LOGO_SVG =\n '';\n\nexport var BPMNIO_IMG = BPMNIO_LOGO_SVG;\n\nexport var LOGO_STYLES = {\n verticalAlign: \"middle\",\n};\n\nexport var LINK_STYLES = {\n color: \"#404040\",\n};\n\nvar LIGHTBOX_STYLES = {\n zIndex: \"1001\",\n position: \"fixed\",\n top: \"0\",\n left: \"0\",\n right: \"0\",\n bottom: \"0\",\n};\n\nvar BACKDROP_STYLES = {\n width: \"100%\",\n height: \"100%\",\n background: \"rgba(40,40,40,0.2)\",\n};\n\nvar NOTICE_STYLES = {\n position: \"absolute\",\n left: \"50%\",\n top: \"40%\",\n transform: \"translate(-50%)\",\n width: \"260px\",\n padding: \"10px\",\n background: \"white\",\n boxShadow: \"0 1px 4px rgba(0,0,0,0.3)\",\n fontFamily: \"Helvetica, Arial, sans-serif\",\n fontSize: \"14px\",\n display: \"flex\",\n lineHeight: \"1.3\",\n};\n\nvar LIGHTBOX_MARKUP =\n '
' +\n '' +\n '
' +\n '' +\n BPMNIO_IMG +\n \"\" +\n \"\" +\n \"Web-based tooling for BPMN, DMN and forms \" +\n 'powered by bpmn.io.' +\n \"\" +\n \"
\" +\n \"
\";\n\nvar lightbox;\n\nfunction createLightbox() {\n lightbox = domify(LIGHTBOX_MARKUP);\n\n assignStyle(lightbox, LIGHTBOX_STYLES);\n assignStyle(domQuery(\"svg\", lightbox), LOGO_STYLES);\n assignStyle(domQuery(\".backdrop\", lightbox), BACKDROP_STYLES);\n assignStyle(domQuery(\".notice\", lightbox), NOTICE_STYLES);\n assignStyle(domQuery(\".link\", lightbox), LINK_STYLES, {\n margin: \"15px 20px 15px 10px\",\n alignSelf: \"center\",\n });\n}\n\nexport function open() {\n if (!lightbox) {\n createLightbox();\n\n domDelegate.bind(lightbox, \".backdrop\", \"click\", function (event) {\n document.body.removeChild(lightbox);\n });\n }\n\n document.body.appendChild(lightbox);\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/**\n * @typedef { {\n * fontFamily: string;\n * fontSize: number;\n * fontWeight: string;\n * lineHeight: number;\n * } } TextRendererStyle\n *\n * @typedef { {\n * defaultStyle?: Partial;\n * externalStyle?: Partial;\n * } } TextRendererConfig\n *\n * @typedef { import('diagram-js/lib/util/Text').TextLayoutConfig } TextLayoutConfig\n *\n * @typedef { import('diagram-js/lib/util/Types').Rect } Rect\n */\n\n/**\n * Renders text and computes text bounding boxes.\n *\n * @param {TextRendererConfig} [config]\n */\nexport default function TextRenderer(config) {\n var defaultStyle = assign(\n {\n fontFamily: \"Arial, sans-serif\",\n fontSize: DEFAULT_FONT_SIZE,\n fontWeight: \"normal\",\n lineHeight: LINE_HEIGHT_RATIO,\n },\n (config && config.defaultStyle) || {},\n );\n\n var fontSize = parseInt(defaultStyle.fontSize, 10) - 1;\n\n var externalStyle = assign(\n {},\n defaultStyle,\n {\n fontSize: fontSize,\n },\n (config && config.externalStyle) || {},\n );\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 {Rect} bounds\n * @param {string} text\n *\n * @return {Rect}\n */\n this.getExternalLabelBounds = function (bounds, text) {\n var layoutedDimensions = textUtil.getDimensions(text, {\n box: {\n width: 90,\n height: 30,\n },\n style: externalStyle,\n });\n\n // resize label shape to fit label text\n return {\n x: Math.round(bounds.x + bounds.width / 2 - layoutedDimensions.width / 2),\n y: Math.round(bounds.y),\n width: Math.ceil(layoutedDimensions.width),\n height: Math.ceil(layoutedDimensions.height),\n };\n };\n\n /**\n * Get the new bounds of text annotation.\n *\n * @param {Rect} bounds\n * @param {string} text\n *\n * @return {Rect}\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 return {\n x: bounds.x,\n y: bounds.y,\n width: bounds.width,\n height: Math.max(\n MIN_TEXT_ANNOTATION_HEIGHT,\n Math.round(layoutedDimensions.height),\n ),\n };\n };\n\n /**\n * Create a layouted text element.\n *\n * @param {string} text\n * @param {TextLayoutConfig} [options]\n *\n * @return {SVGElement} rendered text\n */\n this.createText = function (text, options) {\n return textUtil.createText(text, options || {});\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\nTextRenderer.$inject = [\"config.textRenderer\"];\n","// TODO: this will not work for actors and work objects as the name of the icon is part of the type\nexport function is(element, type) {\n const bo = getBusinessObject(element);\n\n return bo && bo.type === type;\n}\n\nexport function getBusinessObject(element) {\n return (element && element.businessObject) || element;\n}\n\nexport function reworkGroupElements(parent, shape) {\n parent.children.slice().forEach((innerShape) => {\n if (innerShape.id !== shape.id) {\n if (innerShape.x >= shape.x && innerShape.x <= shape.x + shape.width) {\n if (innerShape.y >= shape.y && innerShape.y <= shape.y + shape.height) {\n innerShape.parent = shape;\n if (!shape.children.includes(innerShape)) {\n shape.children.push(innerShape);\n }\n }\n }\n }\n });\n}\n\nexport function undoGroupRework(parent, shape) {\n const superParent = parent.parent;\n\n parent.children.remove(shape);\n superParent.children.add(shape);\n\n shape.parent = superParent;\n\n const svgShape = document.querySelector(\n \"[data-element-id=\" + shape.id + \"]\",\n ).parentElement;\n const svgGroup = svgShape.parentElement;\n const svgGroupParent = svgGroup.parentElement.parentElement;\n svgGroup.removeChild(svgShape);\n svgGroupParent.appendChild(svgShape);\n}\n\nexport function isCustomIcon(icon) {\n // default icons are provided as SVG\n // custom icons are provided as \"Data URL\" with a base64-encoded image as payload\n return icon.startsWith(\"data\");\n}\n\nexport function isCustomSvgIcon(icon) {\n // default icons are provided as SVG\n // custom icons are provided as \"Data URL\" with a base64-encoded image as payload\n return icon.startsWith(\"data:image/svg\");\n}\n\n/**\n * TODO: This is copied from bpmn-js 8.8.3 and might be simplified because we only use it for rendering annotations\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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaterialModule } from '../../material.module';\nimport { HeaderComponent } from './header/header/header.component';\nimport { HeaderButtonsComponent } from './header/header-buttons/header-buttons.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { IconSetConfigModule } from '../../tools/icon-set-config/presentation/icon-set-config.module';\nimport { AutosaveModule } from '../../tools/autosave/presentation/autosave.module';\n\n@NgModule({\n declarations: [HeaderComponent, HeaderButtonsComponent, SettingsComponent],\n exports: [HeaderComponent, HeaderButtonsComponent, SettingsComponent],\n imports: [\n CommonModule,\n FormsModule,\n MaterialModule,\n IconSetConfigModule,\n AutosaveModule,\n ],\n})\nexport class WorkbenchModule {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class SettingsService {\n private showSettings = new BehaviorSubject(false);\n showSettings$ = this.showSettings.asObservable();\n\n close(): void {\n this.showSettings.next(false);\n }\n\n open(): void {\n this.showSettings.next(true);\n }\n}\n","// This file can be replaced during build by using the `fileReplacements` array.\n// `ng build --configuration production` replaces `environment.ts` with `environment.prod.ts`.\n// The list of file replacements can be found in `angular.json`.\n\nexport const environment = {\n production: false,\n version: '3.0.0-dev',\n};\n\n/*\n * For easier debugging in development mode, you can import the following file\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\n *\n * This import should be commented out in production mode because it will have a negative impact\n * on performance if an error is thrown.\n */\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\n","import { enableProdMode } from '@angular/core';\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\n\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\nplatformBrowserDynamic()\n .bootstrapModule(AppModule)\n .catch((err) => console.error(err));\n"],"names":["SVG_LINK","TEXTSPAN_DESCRIPTION_HEIGHT","TEXTSPAN_TITLE_HEIGHT","X_OFFSET_UTIL","dynamicHeightOffset","createTitleAndDescriptionSVGElement","initDynamicHeightOffset","title","description","min_x","min_y","width","replace","titleElement","createTitle","descriptionElement","createDescription","insertText","text","tempCanvas","document","createElement","ctx","getContext","font","createTextSpans","descriptionParts","split","i","length","yOffset","heightOffset","fontSize","textSpans","words","removeLeadingEmptyStrings","textTag","textSpan","createElementNS","textNode","createTextNode","setAttribute","appendChild","j","firstChild","data","len","measureText","slice","outerHTML","stringArray","firstNonEmptyIndex","findIndex","string","assign","isNumber","omit","domify","assignStyle","query","domQuery","remove","domRemove","innerSVG","Diagram","inherits","BaseViewer","options","DEFAULT_OPTIONS","_container","_createContainer","addProjectLogo","_init","prototype","saveSVG","_saveSVG","_asyncToGenerator","_emit","svg","err","canvas","get","contentNode","getActiveLayer","defsNode","_svg","contents","defs","bbox","getBBox","height","x","y","e","error","apply","arguments","getModules","_modules","clear","getDefinitions","call","destroy","on","events","priority","callback","that","off","attachTo","parentNode","Error","detach","constructor","jquery","resized","container","removeChild","baseModules","modules","additionalModules","staticModules","egon","diagramModules","concat","diagramOptions","type","event","fire","ensureUnit","position","addWarningsToError","warningsAry","warnings","val","open","openPoweredBy","BPMNIO_IMG","LOGO_STYLES","LINK_STYLES","domEvent","img","linkMarkup","linkElement","bottom","right","zIndex","bind","preventDefault","Replace","modeling","_modeling","replaceElement","oldElement","newElementData","newElement","setCenterOfElement","outgoingActivities","outgoing","incomingActivities","incoming","forEach","element","businessObject","source","id","target","Math","ceil","name","replaceShape","ElementTypes","replaceOptions","ReplaceMenuProvider","_dsReplace","$inject","getEntries","entries","includes","ACTOR","actorReplaceOptions","WORKOBJECT","workObjectReplaceOptions","_createEntries","menuEntries","self","definition","entry","_createMenuEntry","push","action","replaceAction","label","className","actionName","iconDictionaryService","initializeReplaceOptions","iconDictionary","actors","getIconsAssignedAs","replaceOption","keysArray","actorType","typeName","toLowerCase","getIconForMenu","workObjects","workObjectType","isArray","generateAutomaticNumber","hexToRGBA","isHexWithAlpha","rgbaToHex","hasPrimaryModifier","dirtyFlagService","initializeContextPadProvider","dirtyFlag","DomainStoryContextPadProvider","connect","translate","elementFactory","create","contextPad","popupMenu","replaceMenuProvider","commandStack","eventBus","rules","registerProvider","_selectedElement","startConnect","context","shape","isOpen","click","addEventListener","executeCommandStack","getContextPadEntries","pickedColor","dispatchEvent","CustomEvent","detail","color","actions","autoActivate","start","addDelete","addColorChange","addConnectWithActivity","addTextAnnotation","addActors","appendAction","addWorkObjects","addChangeWorkObjectTypeMenu","addChangeActorTypeMenu","GROUP","addDeleteGroupWithoutChildren","ACTIVITY","addChangeDirection","TEXTANNOTATION","CONNECTION","getMultiElementContextPadEntries","elements","deleteAllowed","allowed","delete","group","groups","filter","el","otherElements","removeGroup","removeElements","makeDirty","deleteGroup","changeDirection","getReplaceMenuPosition","cursor","colorChange","dragstart","icon","newNumber","execute","Y_OFFSET","diagramContainer","getContainer","pad","getPad","html","diagramRect","getBoundingClientRect","padRect","top","left","appendStart","createShape","hints","getSelectedBusinessObject","oldColor","newColor","selectedBusinessObject","getBusinessObject","isUndefined","reduce","copyProperties","properties","property","removeProperties","LOW_PRIORITY","EgonCopyPaste","propertyCopy","descriptor","oldBusinessObject","isLabel","references","resolveReferences","cache","host","attachedToRef","array","reference","key","newBusinessObject","labelTarget","copyElement","isDefined","isObject","has","sortBy","DISALLOWED_PROPERTIES","PropertyCopy","_eventBus","propertyNames","propertyName","indexOf","sourceElement","targetElement","canCopyProperties","sourceProperty","copiedProperty","copyProperty","canSetProperty","parent","set","$parent","childProperties","childProperty","CopyPasteModule","__depends__","__init__","egonCopyPaste","BaseElementFactory","DomainStoryIdFactory","DEFAULT_LABEL_SIZE","DomainStoryElementFactory","domainStoryIdFactory","elementType","attrs","baseCreate","test","registerId","getId","value","_getCustomElementSize","Object","defineProperty","shapes","__default","Dimensions","idList","generateId","idNumber","fourDigitsId","idSuffix","containsId","floor","random","same","BaseRenderer","Ids","componentsToPath","createLine","append","svgAppend","attr","svgAttr","classes","svgClasses","svgCreate","getNumberStash","addNumberToRegistry","numberBoxDefinitions","calculateTextWidth","countLines","labelPosition","angleBetween","isCustomIcon","isCustomSvgIcon","getScaledPath","RENDERER_IDS","numbers","DEFAULT_COLOR","_iconDictionaryService","_elementRegistryService","_dirtyFlagService","initializeRenderer","elementRegistryService","DomainStoryRenderer","styles","textRenderer","rendererId","next","markers","computeStyle","generateActivityNumber","parentGfx","box","numberStash","semantic","use","number","newRenderedNumber","renderNumber","numberStyle","fitBox","style","getExternalStyle","fill","renderEmbeddedLabel","align","padding","renderLabel","renderExternalLabel","waypoints","lines","startPoint","selected","endPoint","angle","alignment","boxWidth","xStart","abs","textAlign","wordWrap","overflowWrap","hyphens","renderExternalNumber","String","createText","add","setCoordinates","circle","radius","d","stroke","innerHTML","manipulateInnerHTMLXLabel","children","manipulateInnerHTMLYLabel","attributes","nodeValue","offset","result","Number","drawGroup","rect","drawRect","applyColorToCustomSvgIcon","iconSvg","rest","base64Svg","atob","coloredSvg","applyColorToIcon","encodedColoredSvg","btoa","match","some","it","replaceAll","index","substring","getIconSvg","dataURL","drawActor","svgDynamicSizeAttributes","iconSRC","getTypeIconSRC","getIconId","actor","drawWorkObject","workObject","useColorForActivity","strokeWidth","strokeLinejoin","markerEnd","marker","drawActivity","p","adjustForTextOverlap","fixConnectionInHTML","parentElement","baseVal","checkIfPointOverlapsText","point","lineOffset","getLineOffset","objects","getElementsByClassName","data_id","item","getAttribute","object","getElementsByTagName","tspans","tspan","wantedConnection","polylines","drawDSConnection","strokeDasharray","drawAnnotation","textElement","textPathData","xScaleFactor","yScaleFactor","containerWidth","containerHeight","mx","my","drawPath","path","r","rx","ry","createMarker","activityArrow","addMarker","ref","scale","strokeLinecap","viewBox","refX","refY","markerWidth","markerHeight","orient","getWorkObjectPath","rectangle","getRectPath","getGroupPath","getActivityPath","connection","map","original","activityPath","waypoint","getActorPath","draggerGfx","removeMarker","canRender","drawShape","startsWith","search","pos","correctInitialize","getShapePath","drawConnection","every","RuleProvider","is","HIGH_PRIORITY","MIN_SIZE","isGroup","isActor","isWorkObject","isActivity","isConnection","isAnnotation","isBackground","nonExistingOrLabel","canStartConnection","canConnect","canResize","newBounds","lowerLeft","lowerRight","upperRight","canConnectToAnnotation","DomainStoryRules","init","canCreate","addRule","s","undefined","hover","pick","CommandInterceptor","collectionAdd","collectionRemove","reworkGroupElements","DomainStoryUpdater","connectionDocking","updateElement","_elements","updateConnection","newTarget","newSource","copyWaypoints","cropConnection","cropped","createElementsBehavior","getCroppedWaypoints","executed","reverted","ifDomainStoryElement","fn","isDomainStory","LassoTool","SpaceTool","Palette","TextRenderer","DomainStoryPalette","CreateModule","ContextPadModule","CommandStack","UpdateLabelHandler","headlineAndDescriptionUpdateHandler","DSModeling","BaseLayouter","CroppingConnectionDocking","layouter","domainStoryRenderer","paletteProvider","domainStoryRules","domainStoryUpdater","contextPadProvider","updateLabelHandler","svgRemove","MARKER_HIDDEN","MARKER_LABEL_HIDDEN","DSLabelEditingPreview","defaultLayer","getDefaultLayer","absoluteElementBBox","gfx","activeProvider","active","getAbsoluteBBox","dy","newElementHeight","max","autocomplete","getLabel","sanitizeTextForSVGExport","dictionaryService","stashUse","initializeLabelEditingProvider","labelingDictionary","toggleStashUse","focusElement","setTimeout","focus","DSLabelEditingProvider","directEditing","resizeHandles","_canvas","_textRenderer","_updateLabelHandler","activateDirectEdit","complete","isActive","cancel","removeResizers","createAutocomplete","canExecute","isTouch","editingBox","force","DOMAINSTORY","activate","getUniqueWorkObjectNames","bounds","getEditingBBox","resizable","autoResize","zoom","defaultStyle","getDefaultStyle","defaultFontSize","defaultLineHeight","lineHeight","fontFamily","fontWeight","minWidth","maxWidth","minHeight","paddingTop","paddingBottom","paddingLeft","paddingRight","update","newLabel","activeContextText","updateLabel","getLabelAttr","getNumberAttr","getNumber","setLabel","setNumber","textNumber","selectPartOfActivity","angleActivity","selectedActivity","linelength","fontsize","input","workObjectNames","closeAllLists","currentFocus","filteredWorkObjectNames","autocompleteList","autocompleteItem","toUpperCase","visibility","onkeydown","getElementById","keyCode","addActive","removeActive","classList","survivor","ChangeSupportModule","ResizeModule","DirectEditingModule","dSlabelEditingProvider","dSlabelEditingPreview","str","amountWaypoints","determinedPosition","xPos","yPos","Array","labelPositionX","labelPositionY","offsetX","scaledAngle","offsetY","Modeling","_commandStack","updateNumber","oldShape","newShape","newData","Connect","Translate","PopupMenu","numberRegistry","multipleNumberRegistry","canvasElementRegistry","initializeNumbering","canvasElementRegistryService","updateMultipleNumberRegistry","activityBusinessObjects","activity","multipleNumberAllowed","boxHeight","fixedOffsetX","fixedOffsetY","angleDependantOffsetX","angleDependantOffsetY","elementActivity","usedNumbers","wantedNumber","activitiesFromActors","getActivitiesFromActors","updateExistingNumbersAtGeneration","updateExistingNumbersAtEditing","sortedActivities","oldMultipleNumberRegistry","currentNumber","setNumberOfActivity","getNumbersAndIDs","iDWithNumber","activities","renderedNumber","setNumberIsMultiple","multi","getNumberRegistry","getMultipleNumberRegistry","elementArray","initializePalette","PaletteProvider","palette","spaceTool","lassoTool","_create","_elementFactory","_spaceTool","_lassoTool","getPaletteEntries","createAction","createListener","shortType","initPalette","config","getCurrentIconConfigurationForMenu","initTypeDictionaries","actorTypes","addCanvasObjectTypes","separator","workObjectTypes","activateSelection","EditorActions","AdditionalEditorActions","injector","invoke","_registerDefaultActions","elementRegistry","selection","handTool","_registerAction","rootElement","getRootElement","select","toggle","currentSelection","KeyboardBindings","AdditionalKeyboardBindings","registerBindings","keyboard","editorActions","addListener","isRegistered","keyEvent","isKey","isCmd","trigger","hasModifier","EditorActionsModule","KeyboardModule","additionalEditorActions","additionalKeyBindings","initializeActivityUpdateHandler","activityUpdateHandler","registerHandler","activity_directionChange","activity_changed","preExecute","oldLabel","oldNumbersWithIDs","oldNumber","revert","revertAutomaticNumberGenerationChange","oldWaypoints","swapSource","newWaypoints","getActivitesFromActors","splice","undoGroupRework","elementUpdateHandler","element_colorChange","removeGroupWithoutChildren","child","titleService","handlerFunction","oldTitle","getTitle","oldDescription","getDescription","updateTitleAndDescription","newTitle","newDescription","DSMassRenameHandler","massRename","relevantElements","confirm","newValue","NULL_DIMENSIONS","setText","postExecute","bo","getLayoutedBounds","resizeShape","numberTarget","delegate","domDelegate","BPMNIO_LOGO_SVG","verticalAlign","LIGHTBOX_STYLES","BACKDROP_STYLES","background","NOTICE_STYLES","transform","boxShadow","display","LIGHTBOX_MARKUP","lightbox","createLightbox","margin","alignSelf","body","TextUtil","DEFAULT_FONT_SIZE","LINE_HEIGHT_RATIO","MIN_TEXT_ANNOTATION_HEIGHT","parseInt","externalStyle","textUtil","getExternalLabelBounds","layoutedDimensions","getDimensions","round","getTextAnnotationBounds","innerShape","superParent","svgShape","querySelector","svgGroup","svgGroupParent","param","rawPath","heightElements","widthElements","abspos","coordinates","heightRatio","widthRatio","heightIndex","widthIndex","format","obj","tokenRegex","all","replacer","objNotationRegex","res","quote","quotedName","isFunc","DomainStoryModule","LabelEditingModule","ModelingModule","MoveCanvasModule","KeyboardMoveModule","ZoomScrollModule","MoveModule","Bendpoints","ConnectionPreview","SpaceToolModule","LassoToolModule","HandToolModule","ConnectModule","SnappingModule","AdditionalShortcuts","DomainStoryModeler","_groupElements","_createElementFromBusinessObject","parentId","isOfTypeGroup","parentShape","addShape","_addConnection","addConnection","importBusinessObjects","businessObjects","connections","otherElementTypes","isOfTypeConnection","BehaviorSubject","environment","ColorPickerDirective","BLACK","BLUE","CYAN","DARK_PINK","GREEN","GREY","LIGHT_PINK","LIME","ORANGE","PURPLE","RED","SNACKBAR_DURATION_LONG","SNACKBAR_INFO","YELLOW","i0","ɵɵelement","AppComponent","settingsService","exportService","autosaveService","cd","snackbar","replayService","modelerService","version","skipNextColorUpdate","colorBox","showSettings$","showDescription$","modifierPressed","ctrlKey","metaKey","altKey","stopPropagation","isDomainStoryExportable","downloadDST","downloadSVG","getReplayOn","nextSentence","previousSentence","colorPicker","closeDialog","customEvent","openDialog","duration","panelClass","ngOnInit","postInit","onColorChanged","ngAfterViewInit","loadLatestDraft","detectChanges","onWindowClose","dirty","returnValue","ɵɵdirectiveInject","i1","SettingsService","i2","TitleService","i3","ExportService","i4","AutosaveService","ChangeDetectorRef","i5","MatSnackBar","i6","ReplayService","i7","ModelerService","i8","DirtyFlagService","selectors","viewQuery","AppComponent_Query","rf","ɵɵlistener","AppComponent_beforeunload_HostBindingHandler","$event","ɵɵresolveWindow","ɵɵelementStart","ɵɵtwoWayListener","AppComponent_Template_input_colorPickerChange_1_listener","ɵɵtwoWayBindingSet","AppComponent_Template_input_colorPickerClose_1_listener","ɵɵelementEnd","ɵɵtemplate","AppComponent_Conditional_2_Template","ɵɵtext","ɵɵadvance","ɵɵstyleProp","ɵɵproperty","ɵɵtwoWayProperty","ɵɵconditional","ɵɵpipeBind1","ɵɵclassProp","ɵɵtextInterpolate","APP_INITIALIZER","BrowserModule","MAT_CHECKBOX_DEFAULT_OPTIONS","NoopAnimationsModule","ImportDomainStoryService","LabelDictionaryService","ElementRegistryService","IconSetConfigurationService","UntypedFormBuilder","IconDictionaryService","MaterialModule","ColorPickerModule","IconSetChangedService","WorkbenchModule","DomainModule","AutosaveModule","ExportModule","IconSetConfigModule","ImportModule","LabelDictionaryModule","ModelerModule","TitleModule","DragDirective","AppModule","ngDoBootstrap","app","componentElement","bootstrap","ɵɵinject","provide","useValue","clickAction","useFactory","initialize","deps","useExisting","imports","declarations","configurationService","labelDictionaryService","Configuration","INITIAL_TITLE","INITIAL_DESCRIPTION","INITIAL_ICON_SET_NAME","ICON_SET_CONFIGURATION_KEY","DRAFTS_KEY","VERSION_KEY","DEFAULT_AUTOSAVES_ENABLED","DEFAULT_AUTOSAVES_MAX_DRAFTS","DEFAULT_AUTOSAVES_INTERVAL","SNACKBAR_DURATION","SNACKBAR_DURATION_LONGER","SNACKBAR_SUCCESS","SNACKBAR_ERROR","Dictionary","size","isEmpty","Entry","putEntry","addEach","keys","addBuiltInIcons","builtInIcons","appendDict","dict","found","keyWords","CommonModule","KeyboardShortcutsDialogComponent","exports","MAT_DIALOG_DATA","ɵɵtextInterpolate1","shortCut_r1","shortCut","shortCuts","decls","vars","consts","template","KeyboardShortcutsDialogComponent_Template","ɵɵrepeaterCreate","KeyboardShortcutsDialogComponent_For_4_Template","_forTrack0","ɵɵrepeater","CommandStackService","setCommandStack","payload","factory","ɵfac","providedIn","MatDialogConfig","DialogService","matDialog","dialog","openKeyboardShortcutsDialog","MatDialog","isDirtySubject","dirty$","asObservable","makeClean","fullyInitialized","registry","__implicitroot","setElementRegistry","createObjectListForDSTDownload","allObjectsFromCanvas","getAllCanvasObjects","getAllGroups","objectList","fillListOfCanvasObjects","canvasElement","unshift","getAllActivities","getAllConnections","allObjects","groupObjects","checkChildForGroup","currentGroup","pop","seenIds","Set","groupObject","isNewId","registryElementNames","sort","activityCanvasA","activityCanvasB","activityNumberA","activityNumberB","getUsedIcons","getAllActors","workobjects","getAllWorkobjects","a","w","co","StorageService","localStorage","setItem","JSON","stringify","json","getItem","parse","MatDialogModule","MatFormFieldModule","MatInputModule","MatToolbarModule","MatExpansionModule","MatCardModule","MatSnackBarModule","MatButtonModule","MatGridListModule","MatButtonToggleModule","MatListModule","MatCheckboxModule","AutosaveOptionsComponent_Conditional_0_Template_button_click_22_listener","ɵɵrestoreView","_r1","activated_r2","ɵɵreference","interval_r3","drafts_r4","ctx_r4","ɵɵnextContext","ɵɵresetView","save","checked","configuration_r6","activated","interval","maxDrafts","AutosaveOptionsComponent","autosaveConfiguration","setConfiguration","AutosaveConfigurationService","AutosaveOptionsComponent_Template","AutosaveOptionsComponent_Conditional_0_Template","tmp_0_0","configuration$","AutosaveSettingsComponent","AutosaveSettingsComponent_Template","AutosavedDraftsComponent_Conditional_7_For_2_Template_button_click_6_listener","draft_r2","$implicit","ctx_r2","loadDraft","date","AutosavedDraftsComponent_Conditional_7_For_2_Template","ɵɵrepeaterTrackByIdentity","drafts","AutosavedDraftsComponent","subscription","autosavedDraftsChanged$","subscribe","initDrafts","loadCurrentDrafts","draft","removeAllDrafts","AutosavedDraftsComponent_Template","AutosavedDraftsComponent_Template_button_click_5_listener","AutosavedDraftsComponent_Conditional_7_Template","ɵɵtextInterpolate2","FormsModule","ReplaySubject","AUTOSAVE_CONFIGURATION_TAG","defaultConfiguration","storageService","configuration","configurationSubject","initializeConfiguration","loadConfiguration","saveConfiguration","Subject","rendererService","iconSetConfigurationService","updateConfiguration","readDrafts","sortDrafts","configFromFile","configAndDST","domain","createIconSetConfiguration","story","dst","actorIcons","getElementsOfType","workObjectIcons","updateIconRegistries","importStory","stopTimer","startTimer","autosaveTimer","clearInterval","setInterval","savedDrafts","newDraft","createDraft","isChanged","isSame","isDraftEmpty","writeDrafts","b","getStory","createConfigAndDST","Date","toString","aDate","bDate","RendererService","ExportDialogData","ExportOption","tooltip","ConfigAndDST","testConfigAndDst","DEFAULT_PADDING","ExportDialogComponent_Conditional_18_Template_input_ngModelChange_2_listener","ctx_r1","animationSpeed","ExportDialogComponent_Conditional_18_Template_span_click_3_listener","onExportAnimatedSvg","ExportDialogComponent_For_26_Template_button_click_0_listener","ɵ$index_50_r4","_r3","$index","doOption","option_r5","ExportDialogComponent","dialogRef","isAnimatedSvgExport","withTitle","useWhiteBackground","close","updateWithTitle","updateUseWhiteBackground","MatDialogRef","ExportDialogComponent_Template","ExportDialogComponent_Template_input_change_7_listener","ExportDialogComponent_Template_input_change_11_listener","ExportDialogComponent_Template_input_ngModelChange_15_listener","ExportDialogComponent_Template_span_click_16_listener","ExportDialogComponent_Conditional_18_Template","ExportDialogComponent_Template_button_click_23_listener","ExportDialogComponent_For_26_Template","sanitizeForDesktop","formatDate","pngService","svgService","htmlPresentationService","dialogService","titleSubscription","title$","descriptionSubscription","description$","ngOnDestroy","unsubscribe","DomainStory","getCurrentConfigurationForExport","getStoryForDownload","filename","getCurrentDateString","downloadFile","datatype","fileEnding","encodeURIComponent","svgData","createSVGData","downloadPNG","svgElements","outerSVGElement","viewport","layerBase","image","extractSVG","prepareSVG","onload","getWidth","getHeight","fillStyle","drawImage","png64","toDataURL","ele","src","onchange","downloadHTMLPresentation","modeler","then","objA","objB","localeCompare","info","openDownloadDialog","SVGDownloadOption","EGNDownloadOption","PNGDownloadOption","HTMLDownloadOption","getModeler","disableClose","autoFocus","PngService","SvgService","HtmlPresentationService","i9","i10","doT","storyCreatorService","viewBoxCoordinates","ViewBoxCoordinate","_this","startReplay","fixActivityMarkersForEachSentence","getCurrentSentenceNumber","content","transition","alert","getMaxSentenceNumber","stopReplay","revealjsTemplate","dots","revealjsData","script","sentences","multiplexSecret","multiplexId","fixMalformedHtmlScript","structuredClone","viewBoxIndex","xLeft","yUp","splitViewBox","dataStart","dataEnd","createBounds","sectionIndex","newDefs","ids","idToReplace","newId","StoryCreatorService","browserSpecs","ua","navigator","userAgent","tem","M","exec","appName","appVersion","URIHashtagFix","fix","browser","findMostOuterElements","includeSpaceForDescription","xRight","yDown","sub","elXLeft","elXRight","elYUp","elYDown","nums","rects","outerRect","calculateWidthAndHeight","insertIndex","join","extraHeight","layerResizers","layerOverlays","removeAttribute","XMLSerializer","serializeToString","cacheData","getEncoded","domainStorySvg","createAnimatedSvg","viewBoxWidth","viewBoxHeight","findIndexToInsertData","svgIndex","backgroundColorWhite","appendDST","traceActivitiesAndCreateStory","usedElementId","storyLength","visibleTimeInPercent","durationOfAnimation","sentenceCounter","currentVisibleTimeInPercent","previousVisibleTimeInPercent","sentence","objectId","idIndex","insertIdIndex","customIcons","people","animal","vehicle","airport","driving","print","calling","computer","speaker","legalSystem","infoDialogs","finance","times","rating","groceries","fingers","entertainment","person","pet","conversation","world","store","theater","business","water","hotel","dining","gasStation","meetingRoom","courthouse","flag","place","car","bus","train","truck","taxi","bike","boat","motorcycle","plane","flightTakeoff","flightLanding","shuttle","walking","traffic","commute","system","printer","folder","email","copyright","dns","settings","cellphone","briefcase","microphone","signal","pencil","sum","headset","mouse","router","scanner","security","desktop","speakerPhone","tablet","receipt","calendar","cloud","assessment","dashboard","pieChart","problem","pictureAsPdf","grid","watch","euro","dollar","alarm","wrench","circleArrows","creditCard","favorite","gavel","blind","hourglass","time","shopping","thumbUp","thumbDown","thumbUpDown","couch","attach","ruler","education","howToReg","viewList","accessible","accountCircle","assignment","battery","book","bug","changeHistory","checkCircle","code","contactMail","crop","dvr","extension","face","fastfood","fingerprint","hand","help","lightbulb","lock","loyalty","pictureInPicture","portrait","rocket","satellite","share","slideshow","star","sun","table","videocam","wysiwyg","addCustomIcons","newIcons","IconConfiguration","allIconDictionary","iconSetName","getDefaultConf","defaultIconSet","actorsDict","workObjectsDict","newCustomIcons","createCustomConf","iconSetConfiguration","IconFilterOptions","DetailsListItemComponent","iconInitiated","ngAfterViewChecked","createIcon","inputs","DetailsListItemComponent_Template","ɵɵpropertyInterpolate","ɵɵsanitizeUrl","IconListItemComponent","iconName","iconSetCustomizationService","isWorkobject","isNone","getIconForName","toggleNone","setAsUnassigned","toggleActor","setAsActor","toggleWorkobject","setAsWorkobject","IconSetCustomizationService","IconListItemComponent_Template","IconListItemComponent_Template_mat_button_toggle_change_7_listener","IconListItemComponent_Template_mat_button_toggle_change_10_listener","IconListItemComponent_Template_mat_button_toggle_change_13_listener","IconSetConfigurationComponent","IconSetDetailsComponent","sanitizeIconName","iconName_r1","NO_FILTER","selectedActors","selectedWorkobjects","allIconNames","allFilteredIconNames","iconSetConfigurationTypes","getIconSetConfiguration","allIcons","getFullDictionary","sortByName","selectedActors$","selectedWorkobjects$","allFiltered","getFilteredNamesForType","loadMinimalIconConfigurationWithDefaultIcons","resetIconSet","loadInitialConfiguration","saveIconSet","startIconUpload","importIcon","files","iconInputFile","reader","FileReader","onloadend","addIMGToIconDictionary","addNewIcon","readAsDataURL","startIconSetImport","importIconSet","iconSetInputFile","importConfiguration","readAsText","filterForActors","ONLY_ACTORS","filterForWorkobjects","ONLY_WORKOBJECTS","filterForUnassigned","ONLY_UNASSIGNED","filterByNameAndType","filteredByKeyWord","filteredByNameAndType","isIconActor","isIconWorkObject","IconSetConfigurationComponent_Template","IconSetConfigurationComponent_Template_button_click_6_listener","IconSetConfigurationComponent_Template_button_click_10_listener","IconSetConfigurationComponent_Template_button_click_14_listener","IconSetConfigurationComponent_Template_input_input_21_listener","IconSetConfigurationComponent_Template_button_click_23_listener","IconSetConfigurationComponent_Template_input_change_26_listener","IconSetConfigurationComponent_Template_button_click_27_listener","IconSetConfigurationComponent_Template_input_change_30_listener","IconSetConfigurationComponent_Template_button_click_31_listener","IconSetConfigurationComponent_Template_button_click_34_listener","IconSetConfigurationComponent_Template_button_click_37_listener","IconSetConfigurationComponent_For_42_Template","IconSetDetailsComponent_For_18_Template_mat_list_item_dragover_0_listener","allowDrop","IconSetDetailsComponent_For_18_Template_mat_list_item_dragstart_0_listener","ɵ$index_30_r3","onDragStart","IconSetDetailsComponent_For_18_Template_mat_list_item_drop_0_listener","ctx_r3","iconName_r5","onDrop","IconSetDetailsComponent_For_25_Template_mat_list_item_dragover_0_listener","_r6","IconSetDetailsComponent_For_25_Template_mat_list_item_dragstart_0_listener","ɵ$index_43_r7","IconSetDetailsComponent_For_25_Template_mat_list_item_drop_0_listener","ctx_r7","iconName_r9","customizationService","draggedList","draggedIndex","iconSetName$","changeName","listName","list","sortedList","setSelectedActors","setSelectedWorkObject","exportIconSet","exportConfiguration","IconSetDetailsComponent_Template","IconSetDetailsComponent_Template_input_input_8_listener","IconSetDetailsComponent_Template_button_click_10_listener","IconSetDetailsComponent_For_18_Template","IconSetDetailsComponent_For_25_Template","ICON_PREFIX","actorIconDictionary","workObjectDictionary","builtInIconsDictionary","iconDictionaryForMenu","iconConfig","allTypes","getCustomIcons","initDictionary","selectedIconNames","dictionary","registerIconForMenu","customConfiguration","allInTypeDictionary","collection","allIn","addIconsFromIconSetConfiguration","dictionaryType","iconTypes","registerIconForType","addIconsToTypeDictionary","unregisterIconForType","extractCustomIconsFromDictionary","addNewIconsToDictionary","elementDictionary","sanitizedName","custom","addIconsToCss","sheetEl","iconStyle","wrapSRCInSVG","sheet","insertRule","cssRules","fullDictionary","appendedDict","getNamesOfIconsAssignedAs","getIconSource","elementOfType","getAllIconDictionary","getActorsDictionary","getWorkObjectsDictionary","getIconConfiguration","setCustomConfiguration","iconSetNameSubject","setIconSetName","configJSONString","customConfig","updateIconSetName","actorDict","workObjectDict","actorKeys","workObjectKeys","configurationName","getCurrentConfiguration","createConfigFromDictionaries","currentConfiguration","getCurrentConfigurationNamesWithoutPrefix","createMinimalConfigurationWithDefaultIcons","minimalConfig","createConfigFromCanvas","actorNames","workobjectNames","newActors","newWorkobjects","fileConfiguration","getStoredIconSetConfiguration","iconSetString","configurationFromFile","checkValidityOfConfiguration","setStoredIconSetConfiguration","configForStorage","allCanvasObjects","iconSetChangedService","allIconListItems","configurationHasChanged","addIconToAllIconList","iconConfigrationChanged","storedIconSetConfiguration","usedIcons","selectedActorNames","selectActor","deselectActor","selectedWorkobjectNames","selectWorkObject","deselectWorkobject","changedIconSet","updateIcon","workobject","updateActorSubject","updateWorkObjectSubject","defaultConfig","workObjectName","actorName","updateAllIconBehaviourSubjects","resetToInitialConfiguration","imported","changedActors","changedWorkobjects","configurationActors","configurationWorkobjects","changedIconSetConfiguration","updateIcons","getAndClearSavedConfiguration","temp","iconDict","getDataUrlForIcon","iconBehaviourSubject","customIconSetConfiguration","rawSrc","importDomainStoryService","onDragOver","evt","onDragLeave","dataTransfer","openUnsavedChangesReminderDialog","performDropImport","hostVars","hostBindings","DragDirective_HostBindings","DragDirective_dragover_HostBindingHandler","DragDirective_dragleave_HostBindingHandler","DragDirective_drop_HostBindingHandler","ImportDialogComponent","fileUrl","doImport","updateUrl","ImportDialogComponent_Template","ImportDialogComponent_Template_input_input_7_listener","ImportDialogComponent_Template_button_click_12_listener","ImportDialogComponent_Template_button_click_14_listener","EventEmitter","UnsavedChangesReminderComponent","importRepairService","importedConfiguration","importedConfigurationEmitter","getConfiguration","performImport","file","import","commandStackChanged","isSupportedFileEnding","importNotDirtyFromUrl","isDirty","importFromUrl","convertToDownloadableUrl","fetch","response","blob","catch","githubPattern","dropboxPattern","isSupported","dstSvgPattern","egnSvgPattern","endsWith","openImportFromUrlDialog","isSVG","isEGN","fileReader","titleText","restoreTitleFromFileName","fileReaderFunction","importSuccessful","importFailed","isSvgFile","isEgnFormat","contentAsJson","extractJsonFromSvgComment","iconSetConfig","iconSetFromFile","storyAndIconSet","extractStoryAndIconSet","removeWhitespacesFromIcons","removeUnnecessaryBpmnProperties","configChanged","checkConfigForChanges","lastElement","importVersionNumber","handleVersionNumber","checkForUnreferencedElementsInActivitiesAndRepair","showBrokenImportDialog","versionPrefix","lastIndexOf","updateCustomElementsPreviousV050","showPreviousV050Dialog","dstText","dstAndConfig","xmlText","newActorKeys","newWorkObjectKeys","currentActorKeys","currentWorkobjectKeys","changed","clearName","setImportedConfigurationAndEmit","message","emit","domainStoryRegex","svgRegex","egnSuffix","dstSuffix","svgSuffix","filenameWithoutDateSuffix","ImportRepairService","objectIDs","activityIndex","$type","$descriptor","di","LabelDictionaryDialogComponent","LabelDictionaryDialogComponent_Template","LabelDictionaryDialogComponent_Template_app_label_dictionary_closeEmitter_3_listener","LabelDictionaryComponent","MatDialogContent","LabelDictionaryComponent_For_6_Template_input_change_2_listener","workobjectEntry_r2","updateWorkobjectEntry","LabelDictionaryComponent_For_13_Template_textarea_change_2_listener","activityEntry_r5","_r4","updateActivityEntry","LabelDictionaryComponent_For_13_Template_textarea_keydown_enter_2_listener","LabelDictionaryComponent_For_13_Template_textarea_keyup_enter_2_listener","LabelDictionaryComponent_For_13_Template_textarea_keyup_escape_2_listener","closeEmitter","createLabelDictionaries","workObjectEntries","getWorkObjectLabels","activityEntries","getActivityLabels","workobjectEntriesSubject","activityEntriesSubject","activityNames","originalActivityNames","originalWorkObjectNames","originalName","massRenameLabels","activityEntry","workobjectEntry","outputs","LabelDictionaryComponent_Template","LabelDictionaryComponent_For_6_Template","LabelDictionaryComponent_For_13_Template","LabelDictionaryComponent_Template_button_click_16_listener","LabelDictionaryComponent_Template_button_click_18_listener","massNamingService","activityLabels","workObjektLabels","openLabelDictionary","isActivityWithLabel","isWorkObjectWithLabel","hasAtLeastOneLabel","massChangeNames","MassNamingService","commandStackService","oldValue","allRelevantObjects","FormControl","FormGroup","Validators","ActivityDialogForm","activityLabel","activityNumber","numberIsAllowedMultipleTimes","nonNullable","required","multipleNumbers","ActivityDialogData","showNumberFields","saveFN","ActivityDialogComponent","form","controls","valueChanges","setValue","onSubmit","patchValue","ActivityDialogComponent_Template","ActivityDialogComponent_Template_input_change_9_listener","ActivityDialogComponent_Template_textarea_keydown_enter_14_listener","ActivityDialogComponent_Template_textarea_keyup_enter_14_listener","ActivityDialogComponent_Template_textarea_keyup_escape_14_listener","ActivityDialogComponent_Template_button_click_16_listener","ActivityDialogComponent_Template_button_click_18_listener","ReactiveFormsModule","positionsMatch","massRenameHandler","InitializerService","propagateDomainStoryModelerClassesToServices","initializeDomainStoryModelerEventHandlers","initiateEventBusListeners","activityDoubleClick","renderedNumberRegistry","allActivities","htmlCanvas","transformX","transformY","zoomX","zoomY","clickX","originalEvent","clickY","parseFloat","currentNum","tx","ty","tNumber","elementX","elementY","pasteColor","pasteText","pasteHeight","elementsKey","shift","saveActivityInputLabel","activityData","hasNumber","initializerService","checkCurrentVersion","exportArtifacts","debounce","window","startDebounce","onAction","restart","domainStory","currentStory","timeout","timer","clearTimeout","encoded","renderStory","reset","configurationChange","c","NUMBER_BACKGROUND_COLOR","NUMBER_COLOR","STROKE_WIDTH","HIGHLIGHT_NUMBER_BACKGROUND_COLOR","HIGHLIGHT_NUMBER_COLOR","HIGHLIGHT_STROKE_WIDTH","CONNECTION_PATH_DOM_SELECTOR","DomManipulationService","showAll","removeHighlights","domObject","showSentence","replaySentence","notShown","getAllNotShown","highlightSentence","o","getNumberDomForActivity","numberText","previousSibling","numberBackgroundDom","numberTextDom","allConnections","activityDomObject","connectionDomObject","sentenceObjects","shownElements","notShownElements","domManipulationService","currentSentence","maxSentenceNumber","replayOnSubject","currentSentence$","maxSentenceNumber$","replayOn$","setReplayState","state","isReplayable","initializeReplay","showCurrentSentence","checkSequenceNumbers","missingSentences","getMissingSentences","getValue","tracedActivityMap","tracedActivityMapKeys","tracedItem","storyIndex","createSentence","addGroupsToLastSentence","tracedActivityMapKey","tracedActivity","getSentenceObjects","highlightedElements","t","highlightedObjects","allActivityNumbersFromActors","allActivityNumbers","highestSequenceNumber","actorsAndWorkObjects","actorTextAnnotations","parallelSentence","parallelSentenceTargetObjects","firstTarget","checkTarget","activityTarget","addTextAnnotationsForActorOrGroup","ta","objectTextAnnotations","annotationsForGroups","g","TitleDialogForm","titel","TitleDialogComponent","getRawValue","TitleDialogComponent_Template","TitleDialogComponent_Template_textarea_keydown_enter_10_listener","TitleDialogComponent_Template_textarea_keyup_enter_10_listener","TitleDialogComponent_Template_textarea_keyup_escape_10_listener","TitleDialogComponent_Template_button_click_12_listener","TitleDialogComponent_Template_button_click_14_listener","titleSubject","descriptionSubject","showDescriptionSubject","openHeaderDialog","allowUndo","fireTitleAndDescriptionUpdate","updateTitle","updateDescription","inputTitle","trim","setShowDescription","show","getVersion","hasTitleOrDescription","MatButton","MatDialogActions","continueAction","standalone","features","ɵɵStandaloneFeature","UnsavedChangesReminderComponent_Template","UnsavedChangesReminderComponent_Template_button_click_9_listener","UnsavedChangesReminderComponent_Template_button_click_11_listener","rgba","isValidHex","red","padStart","green","blue","alpha","hex","getChunksFromString","st","chunkSize","RegExp","convertHexUnitTo256","hexStr","repeat","getAlphafloat","EPSILON","hexArr","degrees","radians","PI","quadrant","adjacent","opposite","atan2","Point","reg","nameWithoutFileEnding","combineLatest","HeaderButtonsComponent_Conditional_0_Template_button_click_1_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_11_listener","HeaderButtonsComponent_Conditional_0_Template_input_change_16_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_17_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_22_listener","HeaderButtonsComponent_Conditional_0_Template_button_click_27_listener","newStory","HeaderButtonsComponent_Conditional_0_Template_button_click_32_listener","openSettings","HeaderButtonsComponent_Conditional_0_Template_button_click_37_listener","showKeyboardShortCuts","hasDomainStory","hasTitle","HeaderButtonsComponent_Conditional_1_Template_button_click_1_listener","HeaderButtonsComponent_Conditional_1_Template_button_click_6_listener","HeaderButtonsComponent_Conditional_1_Template_button_click_11_listener","sentenceDescription$","HeaderButtonsComponent","isReplaying","pipe","count","HeaderButtonsComponent_Template","HeaderButtonsComponent_Conditional_0_Template","HeaderButtonsComponent_Conditional_1_Template","HeaderComponent_Conditional_11_Template_button_click_0_listener","HeaderComponent_Conditional_13_Template_button_click_0_listener","HeaderComponent","importService","renderService","isReplay$","isDirty$","showDescription","createNewDomainStory","onImport","HeaderComponent_Template","HeaderComponent_Template_span_click_3_listener","HeaderComponent_Template_button_click_6_listener","HeaderComponent_Conditional_11_Template","HeaderComponent_Conditional_13_Template","HeaderComponent_Template_app_header_buttons_import_16_listener","HeaderComponent_Template_app_header_buttons_openSettings_16_listener","HeaderComponent_Template_app_header_buttons_startReplay_16_listener","HeaderComponent_Template_app_header_buttons_stopReplay_16_listener","HeaderComponent_Template_app_header_buttons_nextSentence_16_listener","HeaderComponent_Template_app_header_buttons_previousSentence_16_listener","HeaderComponent_Template_app_header_buttons_newStory_16_listener","HeaderComponent_Template_app_header_buttons_showKeyboardShortCuts_16_listener","HeaderComponent_Template_app_header_buttons_openLabelDictionary_16_listener","HeaderComponent_Template_app_header_buttons_openDownloadDialog_16_listener","HeaderComponent_Template_app_header_buttons_openImportFromUrlDialog_16_listener","HeaderComponent_Conditional_19_Template","SettingsComponent","showAutosaveSettings","showIconSetCustomization","savedConfiguration","openGeneralSettings","openIconSetCustomization","SettingsComponent_Template","SettingsComponent_Template_button_click_3_listener","SettingsComponent_Template_button_click_7_listener","SettingsComponent_Template_button_click_11_listener","SettingsComponent_Conditional_15_Template","SettingsComponent_Conditional_17_Template","showSettings","production","enableProdMode","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","console"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}
\ No newline at end of file