\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: '2.3.1-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","Modeler","ResizeModule","assign","isArray","inherits","DomainStoryModule","LabelEditingModule","ModelingModule","ElementTypes","DomainStoryModeler","options","call","_customElements","_groupElements","prototype","_modules","concat","_addCustomShape","customElement","parentId","parent","children","push","canvas","get","elementFactory","customAttrs","businessObject","customShape","create","isGroup","id","parentShape","addShape","_addCustomConnection","elementRegistry","connection","source","target","addConnection","importCustomElements","elements","fire","addCustomElements","customElements","Error","shapes","connections","groups","forEach","isConnection","getCustomElements","createDiagram","done","element","type","ACTIVITY","CONNECTION","GROUP","Replace","modeling","_modeling","replaceElement","oldElement","newElementData","newElement","setCenterOfElement","outgoingActivities","outgoing","incomingActivities","incoming","x","Math","ceil","y","height","name","replaceShape","replaceOptions","ReplaceMenuProvider","_dsReplace","$inject","getEntries","entries","includes","ACTOR","actorReplaceOptions","WORKOBJECT","workObjectReplaceOptions","_createEntries","menuEntries","self","definition","entry","_createMenuEntry","action","replaceAction","label","className","actionName","iconDictionaryService","initializeReplaceOptions","iconDictionary","actors","getIconsAssignedAs","replaceOption","keysArray","actorType","typeName","toLowerCase","getIconForBPMN","workObjects","workObjectType","ContextPadProvider","bind","generateAutomaticNumber","hexToRGBA","isHexWithAlpha","rgbaToHex","dirtyFlagService","initializeContextPadProvider","dirtyFlag","DomainStoryContextPadProvider","injector","connect","translate","contextPad","popupMenu","replaceMenuProvider","commandStack","eventBus","startConnect","selectedElement","invoke","cached","getContextPadEntries","addEventListener","event","executeCommandStack","registerProvider","pickedColor","dispatchEvent","CustomEvent","detail","color","actions","autoActivate","start","addColorChange","addConnectWithActivity","addTextAnnotation","addActors","appendAction","addWorkObjects","addChangeWorkObjectTypeMenu","addChangeActorTypeMenu","delete","deleteGroup","group","click","removeGroup","makeDirty","moveDeleteActionToEndOfArray","removeElements","TEXTANNOTATION","changeDirection","position","getReplaceMenuPosition","cursor","open","colorChange","dragstart","icon","context","newNumber","execute","Y_OFFSET","diagramContainer","getContainer","pad","getPad","html","diagramRect","getBoundingClientRect","padRect","top","left","appendStart","shape","createShape","hints","getSelectedBusinessObject","oldColor","newColor","selectedBusinessObject","BaseElementFactory","DomainStoryIdFactory","DEFAULT_LABEL_SIZE","DomainStoryElementFactory","domainStoryIdFactory","elementType","attrs","baseCreate","test","registerId","getId","key","set","value","$type","di","$descriptor","_getCustomElementSize","Object","defineProperty","__default","Dimensions","idList","generateId","idNumber","fourDigitsId","idSuffix","containsId","floor","random","same","BaseRenderer","Ids","componentsToPath","createLine","append","svgAppend","attr","svgAttr","classes","svgClasses","svgCreate","query","domQuery","isObject","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","manipulateInnerHTMLYLabel","attributes","nodeValue","offset","result","Number","drawGroup","rect","drawRect","applyColorToCustomSvgIcon","iconSvg","rest","base64Svg","svg","atob","coloredSvg","applyColorToIcon","encodedColoredSvg","btoa","match","some","it","replaceAll","index","indexOf","substring","getIconSvg","dataURL","drawActor","svgDynamicSizeAttributes","iconSRC","getTypeIconSRC","getIconId","actor","drawWorkObject","workObject","useColorForActivity","strokeWidth","strokeLinejoin","markerEnd","marker","drawActivity","p","adjustForTextOverlap","fixConnectionInHTML","parentElement","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","sequenceflowEnd","addMarker","ref","scale","strokeLinecap","viewBox","refX","refY","markerWidth","markerHeight","orient","defs","_svg","getWorkObjectPath","rectangle","getRectPath","getGroupPath","getActivityPath","map","original","activityPath","waypoint","getActorPath","canRender","drawShape","startsWith","search","pos","correctInitialize","getShapePath","drawConnection","every","reduce","RuleProvider","is","HIGH_PRIORITY","MIN_SIZE","isDomainStory","isDomainStoryGroup","isActor","isWorkObject","isActivity","isAnnotation","canConnect","canResize","newBounds","lowerLeft","lowerRight","upperRight","canAttach","Array","canConnectToAnnotation","DomainStoryRules","init","canCreate","addRule","host","s","undefined","hover","pick","CommandInterceptor","collectionAdd","remove","collectionRemove","reworkGroupElements","DomainStoryUpdater","bpmnjs","updateCustomElement","e","DOMAINSTORY","updateCustomConnection","newTarget","newSource","copyWaypoints","executed","ifDomainStoryElement","reverted","fn","DomainStoryPalette","CreateModule","ContextPadModule","CommandStack","UpdateLabelHandler","headlineAndDescriptionUpdateHandler","DSModeling","__depends__","__init__","domainStoryRenderer","paletteProvider","domainStoryRules","domainStoryUpdater","contextPadProvider","updateLabelHandler","svgRemove","MARKER_HIDDEN","MARKER_LABEL_HIDDEN","DSLabelEditingPreview","defaultLayer","getDefaultLayer","absoluteElementBBox","gfx","on","activeProvider","active","getAbsoluteBBox","labelTarget","dy","newElementHeight","max","removeMarker","autocomplete","getLabel","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","bbox","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","val","parentNode","toUpperCase","visibility","onkeydown","getElementById","keyCode","addActive","preventDefault","removeActive","classList","survivor","removeChild","ChangeSupportModule","DirectEditingModule","dSlabelEditingProvider","dSlabelEditingPreview","str","amountWaypoints","determinedPosition","xPos","yPos","labelPositionX","labelPositionY","offsetX","scaledAngle","offsetY","Modeling","_commandStack","updateNumber","oldShape","newShape","newData","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","isExpanded","shortType","initPalette","config","getCurrentIconConfigurationForBPMN","initTypeDictionaries","actorTypes","addCanvasObjectTypes","separator","workObjectTypes","activateSelection","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","getBusinessObject","NULL_DIMENSIONS","setText","postExecute","bo","getLayoutedBounds","resizeShape","numberTarget","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","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","constructor","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","_","ɵɵdirectiveInject","i1","SettingsService","i2","TitleService","i3","ExportService","i4","AutosaveService","ChangeDetectorRef","i5","MatSnackBar","i6","ReplayService","i7","ModelerService","_2","selectors","viewQuery","AppComponent_Query","rf","ɵɵelementStart","ɵɵtwoWayListener","AppComponent_Template_input_colorPickerChange_1_listener","$event","ɵɵtwoWayBindingSet","ɵɵlistener","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","DirtyFlagService","IconSetChangedService","WorkbenchModule","DomainModule","AutosaveModule","ExportModule","IconSetConfigModule","ImportModule","LabelDictionaryModule","ModelerModule","TitleModule","DragDirective","AppModule","ngDoBootstrap","app","componentElement","body","bootstrap","ɵɵinject","_3","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","IMPLICIT_ROOT_ID","Dictionary","size","isEmpty","has","Entry","putEntry","addEach","keys","addBuiltInIcons","builtInIcons","appendDict","dict","clear","filter","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","dirty","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","i8","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","i_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","display","svgData","createSVGData","downloadPNG","container","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","_asyncToGenerator","startReplay","saveSVG","fixActivityMarkersForEachSentence","getCurrentSentenceNumber","content","transition","err","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","parseInt","findMostOuterElements","xRight","yDown","sub","elXLeft","elXRight","elYUp","elYDown","transform","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","keyboard","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","error","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","img","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","i_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","i_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","iconDictionaryForBPMN","iconConfig","allTypes","getCustomIcons","initDictionary","selectedIconNames","dictionary","registerIconForBPMN","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","background","onDragOver","evt","onDragLeave","dataTransfer","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","importRepairService","importedConfiguration","importedConfigurationEmitter","getConfiguration","performImport","file","import","commandStackChanged","isSupportedFileEnding","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","configChanged","checkConfigForChanges","lastElement","importVersionNumber","handleVersionNumber","checkForUnreferencedElementsInActivitiesAndRepair","showBrokenImportDialog","adjustPositions","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","isFirst","findFirstElement","adjustElementPosition","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","selection","initializeDomainStoryModelerEventHandlers","initiateEventBusListeners","activityDoubleClick","renderedNumberRegistry","allActivities","htmlCanvas","transformX","transformY","zoomX","zoomY","clickX","originalEvent","clickY","parseFloat","currentNum","tx","ty","tNumber","elementX","elementY","pasteColor","pasteText","pasteHeight","descriptor","oldBusinessObject","elementsKey","shift","saveActivityInputLabel","activityData","hasNumber","initializerService","checkCurrentVersion","bindTo","additionalModules","bpmnSearch","exportArtifacts","debounce","window","startDebounce","onAction","restart","domainStory","currentStory","destroy","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","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","initialSource","targetObjects","actorTextAnnotations","parallelSentence","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","rgba","red","padStart","green","blue","alpha","round","isValidHex","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","isDirty","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/bpmn/index.js","./src/app/tools/modeler/bpmn/modeler/change-icon/replace.js","./src/app/tools/modeler/bpmn/modeler/change-icon/replaceMenuProvider.js","./src/app/tools/modeler/bpmn/modeler/change-icon/replaceOptions.js","./src/app/tools/modeler/bpmn/modeler/context-pad/domainStoryContextPadProvider.js","./src/app/tools/modeler/bpmn/modeler/domainStoryElementFactory.js","./src/app/tools/modeler/bpmn/modeler/domainStoryIdFactory.js","./src/app/tools/modeler/bpmn/modeler/domainStoryRenderer.js","./src/app/tools/modeler/bpmn/modeler/domainStoryRules.js","./src/app/tools/modeler/bpmn/modeler/domainStoryUpdater.js","./src/app/tools/modeler/bpmn/modeler/index.js","./src/app/tools/modeler/bpmn/modeler/labeling/dsLabelEditingPreview.js","./src/app/tools/modeler/bpmn/modeler/labeling/dsLabelEditingProvider.js","./src/app/tools/modeler/bpmn/modeler/labeling/dsLabelUtil.js","./src/app/tools/modeler/bpmn/modeler/labeling/index.js","./src/app/tools/modeler/bpmn/modeler/labeling/position.js","./src/app/tools/modeler/bpmn/modeler/modeling/dSModeling.js","./src/app/tools/modeler/bpmn/modeler/modeling/index.js","./src/app/tools/modeler/bpmn/modeler/numbering/numbering.js","./src/app/tools/modeler/bpmn/modeler/palette/domainStoryPalette.js","./src/app/tools/modeler/bpmn/modeler/updateHandler/activityUpdateHandlers.js","./src/app/tools/modeler/bpmn/modeler/updateHandler/elementUpdateHandler.js","./src/app/tools/modeler/bpmn/modeler/updateHandler/headlineAndDescriptionUpdateHandler.js","./src/app/tools/modeler/bpmn/modeler/updateHandler/massRenameHandler.js","./src/app/tools/modeler/bpmn/modeler/updateHandler/updateLabelHandler.js","./src/app/tools/modeler/bpmn/modeler/util.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/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 = createDescription(description, width);\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","import Modeler from \"bpmn-js/lib/Modeler\";\nimport ResizeModule from \"diagram-js/lib/features/resize\";\nimport { assign, isArray } from \"min-dash\";\nimport inherits from \"inherits\";\n\nimport DomainStoryModule from \"./modeler\";\nimport LabelEditingModule from \"./modeler/labeling\";\nimport ModelingModule from \"./modeler/modeling\";\nimport { ElementTypes } from \"../../../domain/entities/elementTypes\";\n\nexport default function DomainStoryModeler(options) {\n Modeler.call(this, options);\n\n this._customElements = [];\n this._groupElements = [];\n}\n\ninherits(DomainStoryModeler, Modeler);\n\nDomainStoryModeler.prototype._modules = [].concat(\n DomainStoryModeler.prototype._modules,\n [DomainStoryModule, LabelEditingModule, ModelingModule],\n [ResizeModule],\n);\n\n/**\n * add a single custom element to the underlying diagram\n *\n * @param {Object} customElement\n */\nDomainStoryModeler.prototype._addCustomShape = function (customElement) {\n let parentId = customElement.parent;\n delete customElement.children;\n delete customElement.parent;\n this._customElements.push(customElement);\n\n let canvas = this.get(\"canvas\"),\n elementFactory = this.get(\"elementFactory\");\n\n let customAttrs = assign({ businessObject: customElement }, customElement);\n let customShape = elementFactory.create(\"shape\", customAttrs);\n\n if (isGroup(customElement)) {\n this._groupElements[customElement.id] = customShape;\n }\n\n if (parentId) {\n let parentShape = this._groupElements[parentId];\n\n if (isGroup(parentShape)) {\n return canvas.addShape(customShape, parentShape, parentShape.id);\n }\n }\n return canvas.addShape(customShape);\n};\n\nDomainStoryModeler.prototype._addCustomConnection = function (customElement) {\n this._customElements.push(customElement);\n\n let canvas = this.get(\"canvas\"),\n elementFactory = this.get(\"elementFactory\"),\n elementRegistry = this.get(\"elementRegistry\");\n\n let customAttrs = assign({ businessObject: customElement }, customElement);\n\n let connection = elementFactory.create(\n \"connection\",\n assign(customAttrs, {\n source: elementRegistry.get(customElement.source),\n target: elementRegistry.get(customElement.target),\n }),\n elementRegistry.get(customElement.source).parent,\n );\n\n return canvas.addConnection(connection);\n};\n\n//** We import BusinessObjects, not the whole Canvas Object!!!!!!!!\nDomainStoryModeler.prototype.importCustomElements = function (elements) {\n this.get(\"eventBus\").fire(\"diagram.clear\", {});\n this._customElements = [];\n this._groupElements = [];\n\n this.addCustomElements(elements);\n};\n\n/**\n * add a number of custom elements and connections to the underlying diagram.\n *\n * @param {Array} customElements\n */\nDomainStoryModeler.prototype.addCustomElements = function (customElements) {\n if (!isArray(customElements)) {\n throw new Error(\"argument must be an array\");\n }\n\n let shapes = [],\n connections = [],\n groups = [];\n\n customElements.forEach(function (customElement) {\n if (isConnection(customElement)) {\n connections.push(customElement);\n } else if (isGroup(customElement)) {\n groups.push(customElement);\n } else {\n shapes.push(customElement);\n }\n });\n\n // add groups before shapes and shapes before connections so that connections\n // can already rely on the shapes being part of the diagram\n groups.forEach(this._addCustomShape, this);\n shapes.forEach(this._addCustomShape, this);\n connections.forEach(this._addCustomConnection, this);\n};\n\n/**\n * get custom elements with their current status.\n *\n * @return {Array} custom elements on the diagram\n */\nDomainStoryModeler.prototype.getCustomElements = function () {\n return this._customElements;\n};\n\n// override standard function to prevent default elements on canvas\nDomainStoryModeler.prototype.createDiagram = function (done) {};\n\nfunction isConnection(element) {\n return (\n element.type === ElementTypes.ACTIVITY ||\n element.type === ElementTypes.CONNECTION\n );\n}\n\nfunction isGroup(element) {\n return element && element.type === ElementTypes.GROUP;\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.getIconForBPMN(\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.getIconForBPMN(\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 inherits from \"inherits\";\n\nimport ContextPadProvider from \"bpmn-js/lib/features/context-pad/ContextPadProvider\";\n\nimport { assign, bind } 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\";\n\nlet dirtyFlagService;\nlet iconDictionaryService;\n\nexport function initializeContextPadProvider(dirtyFlag, iconDictionary) {\n dirtyFlagService = dirtyFlag;\n iconDictionaryService = iconDictionary;\n}\n\nexport default function DomainStoryContextPadProvider(\n injector,\n connect,\n translate,\n elementFactory,\n create,\n canvas,\n contextPad,\n popupMenu,\n replaceMenuProvider,\n commandStack,\n eventBus,\n modeling,\n) {\n let startConnect;\n let selectedElement;\n\n injector.invoke(ContextPadProvider, this);\n\n let cached = bind(this.getContextPadEntries, this);\n\n document.addEventListener(\"pickedColor\", (event) => {\n if (selectedElement) {\n executeCommandStack(event);\n }\n });\n\n popupMenu.registerProvider(\"ds-replace\", replaceMenuProvider);\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 = cached(element);\n\n startConnect = function (event, element, autoActivate) {\n connect.start(event, element, autoActivate);\n };\n\n if (element.type.includes(ElementTypes.WORKOBJECT)) {\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 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 delete actions.delete;\n addTextAnnotation(actions);\n assign(actions, {\n deleteGroup: {\n group: \"edit\",\n className: \"bpmn-icon-trash\",\n title: \"Remove Group without Child-Elements\",\n action: {\n click: function (event, element) {\n modeling.removeGroup(element);\n dirtyFlagService.makeDirty();\n },\n },\n },\n });\n addColorChange(actions);\n } else if (element.type.includes(ElementTypes.ACTIVITY)) {\n moveDeleteActionToEndOfArray(actions);\n\n addColorChange(actions);\n\n assign(actions, {\n delete: {\n group: \"edit\",\n className: \"bpmn-icon-trash\",\n title: \"Remove\",\n action: {\n click: function (event, element) {\n modeling.removeElements({ element });\n dirtyFlagService.makeDirty();\n },\n },\n },\n });\n } else if (element.type.includes(ElementTypes.TEXTANNOTATION)) {\n addColorChange(actions);\n }\n\n return actions;\n };\n\n function moveDeleteActionToEndOfArray(actions) {\n delete actions.delete;\n\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 },\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.getIconForBPMN(\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.getIconForBPMN(\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 /**\n * create an append action\n *\n * @param {String} type\n * @param {String} className\n * @param {String} [title]\n * @param {String} group\n * @param {Object} [options]\n *\n * @return {Object} descriptor\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\ninherits(DomainStoryContextPadProvider, ContextPadProvider);\n\nDomainStoryContextPadProvider.$inject = [\n \"injector\",\n \"connect\",\n \"translate\",\n \"elementFactory\",\n \"create\",\n \"canvas\",\n \"contextPad\",\n \"popupMenu\",\n \"replaceMenuProvider\",\n \"commandStack\",\n \"eventBus\",\n \"modeling\",\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 if (!attrs.businessObject.$type) {\n assign(attrs.businessObject, { $type: \"Element\" });\n }\n assign(attrs.businessObject, { di: {} });\n if (!attrs.businessObject.$descriptor) {\n assign(attrs.businessObject, { $descriptor: {} });\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: 525, height: 275 },\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\";\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/bpmn/modeler/labeling/dsLabelEditingProvider\";\nimport {\n addNumberToRegistry,\n generateAutomaticNumber,\n numberBoxDefinitions,\n} from \"src/app/tools/modeler/bpmn/modeler/numbering/numbering\";\n\nimport { calculateTextWidth } from \"src/app/tools/modeler/bpmn/modeler/labeling/dsLabelUtil\";\nimport {\n countLines,\n labelPosition,\n} from \"src/app/tools/modeler/bpmn/modeler/labeling/position\";\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { angleBetween } from \"../../../../utils/mathExtensions\";\nimport { isCustomIcon, isCustomSvgIcon, getScaledPath } from \"./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 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 sequenceflowEnd = svgCreate(\"path\");\n svgAttr(sequenceflowEnd, { d: \"M 1 5 L 11 10 L 1 15 Z\" });\n\n addMarker(id, {\n element: sequenceflowEnd,\n ref: { x: 11, y: 10 },\n scale: 0.5,\n attrs: {\n fill: stroke,\n stroke: stroke,\n },\n });\n }\n }\n\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\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\";\n\nconst HIGH_PRIORITY = 1500;\nconst MIN_SIZE = 125;\n\nfunction isDomainStory(element) {\n return element && /^domainStory:/.test(element.type);\n}\n\nfunction isDomainStoryGroup(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/**\n * can source and target be connected?\n */\nfunction canConnect(source, target) {\n // only judge about two custom elements\n if (\n isDomainStoryGroup(target) ||\n !isDomainStory(source) ||\n !isDomainStory(target)\n ) {\n return;\n }\n\n // do not allow a connection from one element to itself\n if (source === target) {\n return;\n }\n\n // do not allow a connection between two actors\n if (isActor(source) && isActor(target)) {\n return;\n }\n\n // do not allow a connection, where the source or target is an activity\n if (isActivity(source) || isActivity(target)) {\n return;\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;\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 canAttach(elements, target, source) {\n if (!Array.isArray(elements)) {\n elements = [elements];\n }\n\n // disallow appending as boundary event\n if (source) {\n return false;\n }\n\n // only (re-)attach one element at a time\n if (elements.length !== 1) {\n return false;\n }\n\n // allow default move operation\n if (!target) {\n return true;\n }\n\n // only allow drop on DomainStory Elements\n if (!isDomainStory(target)) {\n return false;\n }\n\n return \"attach\";\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 shape be created on target container?\n */\n function canCreate(shape, target) {\n // only judge about custom elements\n if (!isDomainStory(shape)) {\n return;\n }\n\n // allow creation just on groups\n return !isDomainStory(target) || isDomainStoryGroup(target);\n }\n\n this.addRule(\"elements.create\", function (context) {\n const elements = context.elements,\n position = context.position,\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 if (element.host) {\n return canAttach(element, element.host, null, position);\n }\n\n return canCreate(element, target, null, position);\n });\n });\n\n this.addRule(\"elements.move\", HIGH_PRIORITY, function (context) {\n let target = context.target,\n shapes = context.shapes;\n\n let type;\n\n // do not allow mixed movements of custom / BPMN shapes\n // if any shape cannot be moved, the group cannot be moved, too\n\n // reject, if we have at least one\n // custom element that cannot be moved\n return reduce(\n shapes,\n function (result, s) {\n if (type === undefined) {\n type = isDomainStory(s);\n }\n\n if (type !== isDomainStory(s) || result === false) {\n return false;\n }\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 // --------------------------------------------------------------\n let result = canConnectToAnnotation(source, target, connection);\n\n if (!result) {\n return;\n }\n\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\nDomainStoryRules.prototype.canConnect = canConnect;\nDomainStoryRules.prototype.canAttach = canAttach;\nDomainStoryRules.prototype.isDomainStory = isDomainStory;\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\";\nimport { ElementTypes } from \"../../../../domain/entities/elementTypes\";\n\n/**\n * a handler responsible for updating the custom element's businessObject\n * once changes on the diagram happen.\n */\nexport default function DomainStoryUpdater(eventBus, bpmnjs) {\n CommandInterceptor.call(this, eventBus);\n\n function updateCustomElement(e) {\n let context = e.context,\n shape = context.shape,\n businessObject = shape.businessObject;\n\n if (!shape || !shape.type.includes(ElementTypes.DOMAINSTORY)) {\n return;\n }\n\n let parent = shape.parent;\n let customElements = bpmnjs._customElements;\n\n // make sure element is added / removed from bpmnjs.customElements\n if (!parent) {\n collectionRemove(customElements, businessObject);\n } else {\n collectionAdd(customElements, businessObject);\n }\n\n // save custom element position\n assign(businessObject, pick(shape, [\"x\", \"y\"]));\n\n // save custom 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 updateCustomConnection(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 customElements = bpmnjs._customElements;\n\n // make sure element is added / removed from bpmnjs.customElements\n if (!parent) {\n collectionRemove(customElements, businessObject);\n } else {\n collectionAdd(customElements, 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 this.executed(\n [\n \"shape.create\",\n \"shape.move\",\n \"shape.delete\",\n \"shape.resize\",\n \"shape.removeGroupWithChildren\",\n ],\n ifDomainStoryElement(updateCustomElement),\n );\n\n this.reverted(\n [\n \"shape.create\",\n \"shape.move\",\n \"shape.delete\",\n \"shape.resize\",\n \"shape.removeGroupWithChildren\",\n ],\n ifDomainStoryElement(updateCustomElement),\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(updateCustomConnection),\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(updateCustomConnection),\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\", \"bpmnjs\"];\n","\"use strict\";\n\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\";\n\nexport default {\n __depends__: [CreateModule, ContextPadModule],\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 {\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\";\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 { is } from \"../util\";\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 (element.id === \"__implicitrootbase\") {\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 bpmn-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(element, newLabel, newBounds);\n};\n","\"use strict\";\n\nimport { ElementTypes } from \"src/app/domain/entities/elementTypes\";\nimport { is } from \"../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 \"bpmn-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 ContextPadModule from \"diagram-js/lib/features/context-pad\";\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],\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 if (options) {\n shape.businessObject.di.isExpanded = options.isExpanded;\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?.getCurrentIconConfigurationForBPMN();\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.getIconForBPMN(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","\"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\";\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","export 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 ctx.newTitle,\n 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\";\n\nconst NULL_DIMENSIONS = {\n width: 0,\n height: 0,\n};\n\n/**\n * a handler that updates the text of a BPMN 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","// 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: '2.3.1-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","Modeler","ResizeModule","assign","isArray","inherits","DomainStoryModule","LabelEditingModule","ModelingModule","ElementTypes","DomainStoryModeler","options","call","_customElements","_groupElements","prototype","_modules","concat","_addCustomShape","customElement","parentId","parent","children","push","canvas","get","elementFactory","customAttrs","businessObject","customShape","create","isGroup","id","parentShape","addShape","_addCustomConnection","elementRegistry","connection","source","target","addConnection","importCustomElements","elements","fire","addCustomElements","customElements","Error","shapes","connections","groups","forEach","isConnection","getCustomElements","createDiagram","done","element","type","ACTIVITY","CONNECTION","GROUP","Replace","modeling","_modeling","replaceElement","oldElement","newElementData","newElement","setCenterOfElement","outgoingActivities","outgoing","incomingActivities","incoming","x","Math","ceil","y","height","name","replaceShape","replaceOptions","ReplaceMenuProvider","_dsReplace","$inject","getEntries","entries","includes","ACTOR","actorReplaceOptions","WORKOBJECT","workObjectReplaceOptions","_createEntries","menuEntries","self","definition","entry","_createMenuEntry","action","replaceAction","label","className","actionName","iconDictionaryService","initializeReplaceOptions","iconDictionary","actors","getIconsAssignedAs","replaceOption","keysArray","actorType","typeName","toLowerCase","getIconForBPMN","workObjects","workObjectType","ContextPadProvider","bind","generateAutomaticNumber","hexToRGBA","isHexWithAlpha","rgbaToHex","dirtyFlagService","initializeContextPadProvider","dirtyFlag","DomainStoryContextPadProvider","injector","connect","translate","contextPad","popupMenu","replaceMenuProvider","commandStack","eventBus","startConnect","selectedElement","invoke","cached","getContextPadEntries","addEventListener","event","executeCommandStack","registerProvider","pickedColor","dispatchEvent","CustomEvent","detail","color","actions","autoActivate","start","addColorChange","addConnectWithActivity","addTextAnnotation","addActors","appendAction","addWorkObjects","addChangeWorkObjectTypeMenu","addChangeActorTypeMenu","delete","deleteGroup","group","click","removeGroup","makeDirty","moveDeleteActionToEndOfArray","removeElements","TEXTANNOTATION","changeDirection","position","getReplaceMenuPosition","cursor","open","colorChange","dragstart","icon","context","newNumber","execute","Y_OFFSET","diagramContainer","getContainer","pad","getPad","html","diagramRect","getBoundingClientRect","padRect","top","left","appendStart","shape","createShape","hints","getSelectedBusinessObject","oldColor","newColor","selectedBusinessObject","BaseElementFactory","DomainStoryIdFactory","DEFAULT_LABEL_SIZE","DomainStoryElementFactory","domainStoryIdFactory","elementType","attrs","baseCreate","test","registerId","getId","key","set","value","$type","di","$descriptor","_getCustomElementSize","Object","defineProperty","__default","Dimensions","idList","generateId","idNumber","fourDigitsId","idSuffix","containsId","floor","random","same","BaseRenderer","Ids","componentsToPath","createLine","append","svgAppend","attr","svgAttr","classes","svgClasses","svgCreate","query","domQuery","isObject","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","manipulateInnerHTMLYLabel","attributes","nodeValue","offset","result","Number","drawGroup","rect","drawRect","applyColorToCustomSvgIcon","iconSvg","rest","base64Svg","svg","atob","coloredSvg","applyColorToIcon","encodedColoredSvg","btoa","match","some","it","replaceAll","index","indexOf","substring","getIconSvg","dataURL","drawActor","svgDynamicSizeAttributes","iconSRC","getTypeIconSRC","getIconId","actor","drawWorkObject","workObject","useColorForActivity","strokeWidth","strokeLinejoin","markerEnd","marker","drawActivity","p","adjustForTextOverlap","fixConnectionInHTML","parentElement","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","sequenceflowEnd","addMarker","ref","scale","strokeLinecap","viewBox","refX","refY","markerWidth","markerHeight","orient","defs","_svg","getWorkObjectPath","rectangle","getRectPath","getGroupPath","getActivityPath","map","original","activityPath","waypoint","getActorPath","canRender","drawShape","startsWith","search","pos","correctInitialize","getShapePath","drawConnection","every","reduce","RuleProvider","is","HIGH_PRIORITY","MIN_SIZE","isDomainStory","isDomainStoryGroup","isActor","isWorkObject","isActivity","isAnnotation","canConnect","canResize","newBounds","lowerLeft","lowerRight","upperRight","canAttach","Array","canConnectToAnnotation","DomainStoryRules","init","canCreate","addRule","host","s","undefined","hover","pick","CommandInterceptor","collectionAdd","remove","collectionRemove","reworkGroupElements","DomainStoryUpdater","bpmnjs","updateCustomElement","e","DOMAINSTORY","updateCustomConnection","newTarget","newSource","copyWaypoints","executed","ifDomainStoryElement","reverted","fn","DomainStoryPalette","CreateModule","ContextPadModule","CommandStack","UpdateLabelHandler","headlineAndDescriptionUpdateHandler","DSModeling","__depends__","__init__","domainStoryRenderer","paletteProvider","domainStoryRules","domainStoryUpdater","contextPadProvider","updateLabelHandler","svgRemove","MARKER_HIDDEN","MARKER_LABEL_HIDDEN","DSLabelEditingPreview","defaultLayer","getDefaultLayer","absoluteElementBBox","gfx","on","activeProvider","active","getAbsoluteBBox","labelTarget","dy","newElementHeight","max","removeMarker","autocomplete","getLabel","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","bbox","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","val","parentNode","toUpperCase","visibility","onkeydown","getElementById","keyCode","addActive","preventDefault","removeActive","classList","survivor","removeChild","ChangeSupportModule","DirectEditingModule","dSlabelEditingProvider","dSlabelEditingPreview","str","amountWaypoints","determinedPosition","xPos","yPos","labelPositionX","labelPositionY","offsetX","scaledAngle","offsetY","Modeling","_commandStack","updateNumber","oldShape","newShape","newData","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","isExpanded","shortType","initPalette","config","getCurrentIconConfigurationForBPMN","initTypeDictionaries","actorTypes","addCanvasObjectTypes","separator","workObjectTypes","activateSelection","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","getBusinessObject","NULL_DIMENSIONS","setText","postExecute","bo","getLayoutedBounds","resizeShape","numberTarget","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","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","constructor","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","_","ɵɵdirectiveInject","i1","SettingsService","i2","TitleService","i3","ExportService","i4","AutosaveService","ChangeDetectorRef","i5","MatSnackBar","i6","ReplayService","i7","ModelerService","_2","selectors","viewQuery","AppComponent_Query","rf","ɵɵelementStart","ɵɵtwoWayListener","AppComponent_Template_input_colorPickerChange_1_listener","$event","ɵɵtwoWayBindingSet","ɵɵlistener","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","DirtyFlagService","IconSetChangedService","WorkbenchModule","DomainModule","AutosaveModule","ExportModule","IconSetConfigModule","ImportModule","LabelDictionaryModule","ModelerModule","TitleModule","DragDirective","AppModule","ngDoBootstrap","app","componentElement","body","bootstrap","ɵɵinject","_3","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","IMPLICIT_ROOT_ID","Dictionary","size","isEmpty","has","Entry","putEntry","addEach","keys","addBuiltInIcons","builtInIcons","appendDict","dict","clear","filter","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","dirty","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","i8","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","i_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","display","svgData","createSVGData","downloadPNG","container","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","_asyncToGenerator","startReplay","saveSVG","fixActivityMarkersForEachSentence","getCurrentSentenceNumber","content","transition","err","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","parseInt","findMostOuterElements","xRight","yDown","sub","elXLeft","elXRight","elYUp","elYDown","transform","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","keyboard","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","error","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","img","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","i_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","i_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","iconDictionaryForBPMN","iconConfig","allTypes","getCustomIcons","initDictionary","selectedIconNames","dictionary","registerIconForBPMN","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","background","onDragOver","evt","onDragLeave","dataTransfer","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","importRepairService","importedConfiguration","importedConfigurationEmitter","getConfiguration","performImport","file","import","commandStackChanged","isSupportedFileEnding","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","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","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","selection","initializeDomainStoryModelerEventHandlers","initiateEventBusListeners","activityDoubleClick","renderedNumberRegistry","allActivities","htmlCanvas","transformX","transformY","zoomX","zoomY","clickX","originalEvent","clickY","parseFloat","currentNum","tx","ty","tNumber","elementX","elementY","pasteColor","pasteText","pasteHeight","descriptor","oldBusinessObject","elementsKey","shift","saveActivityInputLabel","activityData","hasNumber","initializerService","checkCurrentVersion","bindTo","additionalModules","bpmnSearch","exportArtifacts","debounce","window","startDebounce","onAction","restart","domainStory","currentStory","destroy","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","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","initialSource","targetObjects","actorTextAnnotations","parallelSentence","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","rgba","red","padStart","green","blue","alpha","round","isValidHex","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","isDirty","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