markdown-flow-ui
Version:
A React UI library for rendering markdown with interactive flow components, typewriter effects, and plugin support
122 lines (102 loc) • 91.2 kB
JavaScript
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const et=require("./chunk-OMD6QJNC-B6-0-Cao.js"),ae=require("./chunk-FHKO5MBM-BuLyrkEy.js"),a=require("./index-CbHAb2u0.js");var Pt=(function(){var e=a.__name(function(nt,b,w,L){for(w=w||{},L=nt.length;L--;w[nt[L]]=b);return w},"o"),t=[1,2],l=[1,3],s=[1,4],i=[2,4],n=[1,9],o=[1,11],d=[1,13],p=[1,14],r=[1,16],f=[1,17],T=[1,18],g=[1,24],x=[1,25],y=[1,26],v=[1,27],P=[1,28],D=[1,29],N=[1,30],O=[1,31],R=[1,32],Y=[1,33],F=[1,34],K=[1,35],Q=[1,36],W=[1,37],q=[1,38],V=[1,39],S=[1,41],U=[1,42],z=[1,43],G=[1,44],Z=[1,45],k=[1,46],_=[1,4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,48,49,50,52,53,54,59,60,61,62,70],I=[4,5,16,50,52,53],X=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],$=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,49,50,52,53,54,59,60,61,62,70],A=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,48,50,52,53,54,59,60,61,62,70],Mt=[4,5,13,14,16,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,47,50,52,53,54,59,60,61,62,70],at=[68,69,70],it=[1,122],bt={trace:a.__name(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,box_section:10,box_line:11,participant_statement:12,create:13,box:14,restOfLine:15,end:16,signal:17,autonumber:18,NUM:19,off:20,activate:21,actor:22,deactivate:23,note_statement:24,links_statement:25,link_statement:26,properties_statement:27,details_statement:28,title:29,legacy_title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,loop:36,rect:37,opt:38,alt:39,else_sections:40,par:41,par_sections:42,par_over:43,critical:44,option_sections:45,break:46,option:47,and:48,else:49,participant:50,AS:51,participant_actor:52,destroy:53,note:54,placement:55,text2:56,over:57,actor_pair:58,links:59,link:60,properties:61,details:62,spaceList:63,",":64,left_of:65,right_of:66,signaltype:67,"+":68,"-":69,ACTOR:70,SOLID_OPEN_ARROW:71,DOTTED_OPEN_ARROW:72,SOLID_ARROW:73,BIDIRECTIONAL_SOLID_ARROW:74,DOTTED_ARROW:75,BIDIRECTIONAL_DOTTED_ARROW:76,SOLID_CROSS:77,DOTTED_CROSS:78,SOLID_POINT:79,DOTTED_POINT:80,TXT:81,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",13:"create",14:"box",15:"restOfLine",16:"end",18:"autonumber",19:"NUM",20:"off",21:"activate",23:"deactivate",29:"title",30:"legacy_title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"loop",37:"rect",38:"opt",39:"alt",41:"par",43:"par_over",44:"critical",46:"break",47:"option",48:"and",49:"else",50:"participant",51:"AS",52:"participant_actor",53:"destroy",54:"note",57:"over",59:"links",60:"link",61:"properties",62:"details",64:",",65:"left_of",66:"right_of",68:"+",69:"-",70:"ACTOR",71:"SOLID_OPEN_ARROW",72:"DOTTED_OPEN_ARROW",73:"SOLID_ARROW",74:"BIDIRECTIONAL_SOLID_ARROW",75:"DOTTED_ARROW",76:"BIDIRECTIONAL_DOTTED_ARROW",77:"SOLID_CROSS",78:"DOTTED_CROSS",79:"SOLID_POINT",80:"DOTTED_POINT",81:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[10,0],[10,2],[11,2],[11,1],[11,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[45,1],[45,4],[42,1],[42,4],[40,1],[40,4],[12,5],[12,3],[12,5],[12,3],[12,3],[24,4],[24,4],[25,3],[26,3],[27,3],[28,3],[63,2],[63,1],[58,3],[58,1],[55,1],[55,1],[17,5],[17,5],[17,4],[22,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[67,1],[56,1]],performAction:a.__name(function(b,w,L,E,M,h,ft){var u=h.length-1;switch(M){case 3:return E.apply(h[u]),h[u];case 4:case 9:this.$=[];break;case 5:case 10:h[u-1].push(h[u]),this.$=h[u-1];break;case 6:case 7:case 11:case 12:this.$=h[u];break;case 8:case 13:this.$=[];break;case 15:h[u].type="createParticipant",this.$=h[u];break;case 16:h[u-1].unshift({type:"boxStart",boxData:E.parseBoxData(h[u-2])}),h[u-1].push({type:"boxEnd",boxText:h[u-2]}),this.$=h[u-1];break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(h[u-2]),sequenceIndexStep:Number(h[u-1]),sequenceVisible:!0,signalType:E.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(h[u-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:E.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:E.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:E.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"activeStart",signalType:E.LINETYPE.ACTIVE_START,actor:h[u-1].actor};break;case 23:this.$={type:"activeEnd",signalType:E.LINETYPE.ACTIVE_END,actor:h[u-1].actor};break;case 29:E.setDiagramTitle(h[u].substring(6)),this.$=h[u].substring(6);break;case 30:E.setDiagramTitle(h[u].substring(7)),this.$=h[u].substring(7);break;case 31:this.$=h[u].trim(),E.setAccTitle(this.$);break;case 32:case 33:this.$=h[u].trim(),E.setAccDescription(this.$);break;case 34:h[u-1].unshift({type:"loopStart",loopText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.LOOP_START}),h[u-1].push({type:"loopEnd",loopText:h[u-2],signalType:E.LINETYPE.LOOP_END}),this.$=h[u-1];break;case 35:h[u-1].unshift({type:"rectStart",color:E.parseMessage(h[u-2]),signalType:E.LINETYPE.RECT_START}),h[u-1].push({type:"rectEnd",color:E.parseMessage(h[u-2]),signalType:E.LINETYPE.RECT_END}),this.$=h[u-1];break;case 36:h[u-1].unshift({type:"optStart",optText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.OPT_START}),h[u-1].push({type:"optEnd",optText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.OPT_END}),this.$=h[u-1];break;case 37:h[u-1].unshift({type:"altStart",altText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.ALT_START}),h[u-1].push({type:"altEnd",signalType:E.LINETYPE.ALT_END}),this.$=h[u-1];break;case 38:h[u-1].unshift({type:"parStart",parText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.PAR_START}),h[u-1].push({type:"parEnd",signalType:E.LINETYPE.PAR_END}),this.$=h[u-1];break;case 39:h[u-1].unshift({type:"parStart",parText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.PAR_OVER_START}),h[u-1].push({type:"parEnd",signalType:E.LINETYPE.PAR_END}),this.$=h[u-1];break;case 40:h[u-1].unshift({type:"criticalStart",criticalText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.CRITICAL_START}),h[u-1].push({type:"criticalEnd",signalType:E.LINETYPE.CRITICAL_END}),this.$=h[u-1];break;case 41:h[u-1].unshift({type:"breakStart",breakText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.BREAK_START}),h[u-1].push({type:"breakEnd",optText:E.parseMessage(h[u-2]),signalType:E.LINETYPE.BREAK_END}),this.$=h[u-1];break;case 43:this.$=h[u-3].concat([{type:"option",optionText:E.parseMessage(h[u-1]),signalType:E.LINETYPE.CRITICAL_OPTION},h[u]]);break;case 45:this.$=h[u-3].concat([{type:"and",parText:E.parseMessage(h[u-1]),signalType:E.LINETYPE.PAR_AND},h[u]]);break;case 47:this.$=h[u-3].concat([{type:"else",altText:E.parseMessage(h[u-1]),signalType:E.LINETYPE.ALT_ELSE},h[u]]);break;case 48:h[u-3].draw="participant",h[u-3].type="addParticipant",h[u-3].description=E.parseMessage(h[u-1]),this.$=h[u-3];break;case 49:h[u-1].draw="participant",h[u-1].type="addParticipant",this.$=h[u-1];break;case 50:h[u-3].draw="actor",h[u-3].type="addParticipant",h[u-3].description=E.parseMessage(h[u-1]),this.$=h[u-3];break;case 51:h[u-1].draw="actor",h[u-1].type="addParticipant",this.$=h[u-1];break;case 52:h[u-1].type="destroyParticipant",this.$=h[u-1];break;case 53:this.$=[h[u-1],{type:"addNote",placement:h[u-2],actor:h[u-1].actor,text:h[u]}];break;case 54:h[u-2]=[].concat(h[u-1],h[u-1]).slice(0,2),h[u-2][0]=h[u-2][0].actor,h[u-2][1]=h[u-2][1].actor,this.$=[h[u-1],{type:"addNote",placement:E.PLACEMENT.OVER,actor:h[u-2].slice(0,2),text:h[u]}];break;case 55:this.$=[h[u-1],{type:"addLinks",actor:h[u-1].actor,text:h[u]}];break;case 56:this.$=[h[u-1],{type:"addALink",actor:h[u-1].actor,text:h[u]}];break;case 57:this.$=[h[u-1],{type:"addProperties",actor:h[u-1].actor,text:h[u]}];break;case 58:this.$=[h[u-1],{type:"addDetails",actor:h[u-1].actor,text:h[u]}];break;case 61:this.$=[h[u-2],h[u]];break;case 62:this.$=h[u];break;case 63:this.$=E.PLACEMENT.LEFTOF;break;case 64:this.$=E.PLACEMENT.RIGHTOF;break;case 65:this.$=[h[u-4],h[u-1],{type:"addMessage",from:h[u-4].actor,to:h[u-1].actor,signalType:h[u-3],msg:h[u],activate:!0},{type:"activeStart",signalType:E.LINETYPE.ACTIVE_START,actor:h[u-1].actor}];break;case 66:this.$=[h[u-4],h[u-1],{type:"addMessage",from:h[u-4].actor,to:h[u-1].actor,signalType:h[u-3],msg:h[u]},{type:"activeEnd",signalType:E.LINETYPE.ACTIVE_END,actor:h[u-4].actor}];break;case 67:this.$=[h[u-3],h[u-1],{type:"addMessage",from:h[u-3].actor,to:h[u-1].actor,signalType:h[u-2],msg:h[u]}];break;case 68:this.$={type:"addParticipant",actor:h[u]};break;case 69:this.$=E.LINETYPE.SOLID_OPEN;break;case 70:this.$=E.LINETYPE.DOTTED_OPEN;break;case 71:this.$=E.LINETYPE.SOLID;break;case 72:this.$=E.LINETYPE.BIDIRECTIONAL_SOLID;break;case 73:this.$=E.LINETYPE.DOTTED;break;case 74:this.$=E.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 75:this.$=E.LINETYPE.SOLID_CROSS;break;case 76:this.$=E.LINETYPE.DOTTED_CROSS;break;case 77:this.$=E.LINETYPE.SOLID_POINT;break;case 78:this.$=E.LINETYPE.DOTTED_POINT;break;case 79:this.$=E.parseMessage(h[u].trim().substring(1));break}},"anonymous"),table:[{3:1,4:t,5:l,6:s},{1:[3]},{3:5,4:t,5:l,6:s},{3:6,4:t,5:l,6:s},e([1,4,5,13,14,18,21,23,29,30,31,33,35,36,37,38,39,41,43,44,46,50,52,53,54,59,60,61,62,70],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:n,5:o,8:8,9:10,12:12,13:d,14:p,17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},e(_,[2,5]),{9:47,12:12,13:d,14:p,17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},e(_,[2,7]),e(_,[2,8]),e(_,[2,14]),{12:48,50:W,52:q,53:V},{15:[1,49]},{5:[1,50]},{5:[1,53],19:[1,51],20:[1,52]},{22:54,70:k},{22:55,70:k},{5:[1,56]},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},e(_,[2,29]),e(_,[2,30]),{32:[1,61]},{34:[1,62]},e(_,[2,33]),{15:[1,63]},{15:[1,64]},{15:[1,65]},{15:[1,66]},{15:[1,67]},{15:[1,68]},{15:[1,69]},{15:[1,70]},{22:71,70:k},{22:72,70:k},{22:73,70:k},{67:74,71:[1,75],72:[1,76],73:[1,77],74:[1,78],75:[1,79],76:[1,80],77:[1,81],78:[1,82],79:[1,83],80:[1,84]},{55:85,57:[1,86],65:[1,87],66:[1,88]},{22:89,70:k},{22:90,70:k},{22:91,70:k},{22:92,70:k},e([5,51,64,71,72,73,74,75,76,77,78,79,80,81],[2,68]),e(_,[2,6]),e(_,[2,15]),e(I,[2,9],{10:93}),e(_,[2,17]),{5:[1,95],19:[1,94]},{5:[1,96]},e(_,[2,21]),{5:[1,97]},{5:[1,98]},e(_,[2,24]),e(_,[2,25]),e(_,[2,26]),e(_,[2,27]),e(_,[2,28]),e(_,[2,31]),e(_,[2,32]),e(X,i,{7:99}),e(X,i,{7:100}),e(X,i,{7:101}),e($,i,{40:102,7:103}),e(A,i,{42:104,7:105}),e(A,i,{7:105,42:106}),e(Mt,i,{45:107,7:108}),e(X,i,{7:109}),{5:[1,111],51:[1,110]},{5:[1,113],51:[1,112]},{5:[1,114]},{22:117,68:[1,115],69:[1,116],70:k},e(at,[2,69]),e(at,[2,70]),e(at,[2,71]),e(at,[2,72]),e(at,[2,73]),e(at,[2,74]),e(at,[2,75]),e(at,[2,76]),e(at,[2,77]),e(at,[2,78]),{22:118,70:k},{22:120,58:119,70:k},{70:[2,63]},{70:[2,64]},{56:121,81:it},{56:123,81:it},{56:124,81:it},{56:125,81:it},{4:[1,128],5:[1,130],11:127,12:129,16:[1,126],50:W,52:q,53:V},{5:[1,131]},e(_,[2,19]),e(_,[2,20]),e(_,[2,22]),e(_,[2,23]),{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[1,132],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[1,133],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[1,134],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{16:[1,135]},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[2,46],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,49:[1,136],50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{16:[1,137]},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[2,44],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,48:[1,138],50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{16:[1,139]},{16:[1,140]},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[2,42],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,47:[1,141],50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{4:n,5:o,8:8,9:10,12:12,13:d,14:p,16:[1,142],17:15,18:r,21:f,22:40,23:T,24:19,25:20,26:21,27:22,28:23,29:g,30:x,31:y,33:v,35:P,36:D,37:N,38:O,39:R,41:Y,43:F,44:K,46:Q,50:W,52:q,53:V,54:S,59:U,60:z,61:G,62:Z,70:k},{15:[1,143]},e(_,[2,49]),{15:[1,144]},e(_,[2,51]),e(_,[2,52]),{22:145,70:k},{22:146,70:k},{56:147,81:it},{56:148,81:it},{56:149,81:it},{64:[1,150],81:[2,62]},{5:[2,55]},{5:[2,79]},{5:[2,56]},{5:[2,57]},{5:[2,58]},e(_,[2,16]),e(I,[2,10]),{12:151,50:W,52:q,53:V},e(I,[2,12]),e(I,[2,13]),e(_,[2,18]),e(_,[2,34]),e(_,[2,35]),e(_,[2,36]),e(_,[2,37]),{15:[1,152]},e(_,[2,38]),{15:[1,153]},e(_,[2,39]),e(_,[2,40]),{15:[1,154]},e(_,[2,41]),{5:[1,155]},{5:[1,156]},{56:157,81:it},{56:158,81:it},{5:[2,67]},{5:[2,53]},{5:[2,54]},{22:159,70:k},e(I,[2,11]),e($,i,{7:103,40:160}),e(A,i,{7:105,42:161}),e(Mt,i,{7:108,45:162}),e(_,[2,48]),e(_,[2,50]),{5:[2,65]},{5:[2,66]},{81:[2,61]},{16:[2,47]},{16:[2,45]},{16:[2,43]}],defaultActions:{5:[2,1],6:[2,2],87:[2,63],88:[2,64],121:[2,55],122:[2,79],123:[2,56],124:[2,57],125:[2,58],147:[2,67],148:[2,53],149:[2,54],157:[2,65],158:[2,66],159:[2,61],160:[2,47],161:[2,45],162:[2,43]},parseError:a.__name(function(b,w){if(w.recoverable)this.trace(b);else{var L=new Error(b);throw L.hash=w,L}},"parseError"),parse:a.__name(function(b){var w=this,L=[0],E=[],M=[null],h=[],ft=this.table,u="",xt=0,Rt=0,jt=2,Dt=1,$t=h.slice.call(arguments,1),B=Object.create(this.lexer),ot={yy:{}};for(var wt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,wt)&&(ot.yy[wt]=this.yy[wt]);B.setInput(b,ot.yy),ot.yy.lexer=B,ot.yy.parser=this,typeof B.yylloc>"u"&&(B.yylloc={});var vt=B.yylloc;h.push(vt);var te=B.options&&B.options.ranges;typeof ot.yy.parseError=="function"?this.parseError=ot.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ee(J){L.length=L.length-2*J,M.length=M.length-J,h.length=h.length-J}a.__name(ee,"popStack");function Ct(){var J;return J=E.pop()||B.lex()||Dt,typeof J!="number"&&(J instanceof Array&&(E=J,J=E.pop()),J=w.symbols_[J]||J),J}a.__name(Ct,"lex");for(var H,ct,j,It,dt={},_t,rt,Ot,Tt;;){if(ct=L[L.length-1],this.defaultActions[ct]?j=this.defaultActions[ct]:((H===null||typeof H>"u")&&(H=Ct()),j=ft[ct]&&ft[ct][H]),typeof j>"u"||!j.length||!j[0]){var Lt="";Tt=[];for(_t in ft[ct])this.terminals_[_t]&&_t>jt&&Tt.push("'"+this.terminals_[_t]+"'");B.showPosition?Lt="Parse error on line "+(xt+1)+`:
`+B.showPosition()+`
Expecting `+Tt.join(", ")+", got '"+(this.terminals_[H]||H)+"'":Lt="Parse error on line "+(xt+1)+": Unexpected "+(H==Dt?"end of input":"'"+(this.terminals_[H]||H)+"'"),this.parseError(Lt,{text:B.match,token:this.terminals_[H]||H,line:B.yylineno,loc:vt,expected:Tt})}if(j[0]instanceof Array&&j.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ct+", token: "+H);switch(j[0]){case 1:L.push(H),M.push(B.yytext),h.push(B.yylloc),L.push(j[1]),H=null,Rt=B.yyleng,u=B.yytext,xt=B.yylineno,vt=B.yylloc;break;case 2:if(rt=this.productions_[j[1]][1],dt.$=M[M.length-rt],dt._$={first_line:h[h.length-(rt||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(rt||1)].first_column,last_column:h[h.length-1].last_column},te&&(dt._$.range=[h[h.length-(rt||1)].range[0],h[h.length-1].range[1]]),It=this.performAction.apply(dt,[u,Rt,xt,ot.yy,j[1],M,h].concat($t)),typeof It<"u")return It;rt&&(L=L.slice(0,-1*rt*2),M=M.slice(0,-1*rt),h=h.slice(0,-1*rt)),L.push(this.productions_[j[1]][0]),M.push(dt.$),h.push(dt._$),Ot=ft[L[L.length-2]][L[L.length-1]],L.push(Ot);break;case 3:return!0}}return!0},"parse")},Zt=(function(){var nt={EOF:1,parseError:a.__name(function(w,L){if(this.yy.parser)this.yy.parser.parseError(w,L);else throw new Error(w)},"parseError"),setInput:a.__name(function(b,w){return this.yy=w||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:a.__name(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var w=b.match(/(?:\r\n?|\n).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),b},"input"),unput:a.__name(function(b){var w=b.length,L=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var E=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),L.length-1&&(this.yylineno-=L.length-1);var M=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:L?(L.length===E.length?this.yylloc.first_column:0)+E[E.length-L.length].length-L[0].length:this.yylloc.first_column-w},this.options.ranges&&(this.yylloc.range=[M[0],M[0]+this.yyleng-w]),this.yyleng=this.yytext.length,this},"unput"),more:a.__name(function(){return this._more=!0,this},"more"),reject:a.__name(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:a.__name(function(b){this.unput(this.match.slice(b))},"less"),pastInput:a.__name(function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:a.__name(function(){var b=this.match;return b.length<20&&(b+=this._input.substr(0,20-b.length)),(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:a.__name(function(){var b=this.pastInput(),w=new Array(b.length+1).join("-");return b+this.upcomingInput()+`
`+w+"^"},"showPosition"),test_match:a.__name(function(b,w){var L,E,M;if(this.options.backtrack_lexer&&(M={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(M.yylloc.range=this.yylloc.range.slice(0))),E=b[0].match(/(?:\r\n?|\n).*/g),E&&(this.yylineno+=E.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:E?E[E.length-1].length-E[E.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],L=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),L)return L;if(this._backtrack){for(var h in M)this[h]=M[h];return!1}return!1},"test_match"),next:a.__name(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var b,w,L,E;this._more||(this.yytext="",this.match="");for(var M=this._currentRules(),h=0;h<M.length;h++)if(L=this._input.match(this.rules[M[h]]),L&&(!w||L[0].length>w[0].length)){if(w=L,E=h,this.options.backtrack_lexer){if(b=this.test_match(L,M[h]),b!==!1)return b;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(b=this.test_match(w,M[E]),b!==!1?b:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:a.__name(function(){var w=this.next();return w||this.lex()},"lex"),begin:a.__name(function(w){this.conditionStack.push(w)},"begin"),popState:a.__name(function(){var w=this.conditionStack.length-1;return w>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:a.__name(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:a.__name(function(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},"topState"),pushState:a.__name(function(w){this.begin(w)},"pushState"),stateStackSize:a.__name(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:a.__name(function(w,L,E,M){switch(E){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 19;case 7:return this.begin("LINE"),14;case 8:return this.begin("ID"),50;case 9:return this.begin("ID"),52;case 10:return 13;case 11:return this.begin("ID"),53;case 12:return L.yytext=L.yytext.trim(),this.begin("ALIAS"),70;case 13:return this.popState(),this.popState(),this.begin("LINE"),51;case 14:return this.popState(),this.popState(),5;case 15:return this.begin("LINE"),36;case 16:return this.begin("LINE"),37;case 17:return this.begin("LINE"),38;case 18:return this.begin("LINE"),39;case 19:return this.begin("LINE"),49;case 20:return this.begin("LINE"),41;case 21:return this.begin("LINE"),43;case 22:return this.begin("LINE"),48;case 23:return this.begin("LINE"),44;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),46;case 26:return this.popState(),15;case 27:return 16;case 28:return 65;case 29:return 66;case 30:return 59;case 31:return 60;case 32:return 61;case 33:return 62;case 34:return 57;case 35:return 54;case 36:return this.begin("ID"),21;case 37:return this.begin("ID"),23;case 38:return 29;case 39:return 30;case 40:return this.begin("acc_title"),31;case 41:return this.popState(),"acc_title_value";case 42:return this.begin("acc_descr"),33;case 43:return this.popState(),"acc_descr_value";case 44:this.begin("acc_descr_multiline");break;case 45:this.popState();break;case 46:return"acc_descr_multiline_value";case 47:return 6;case 48:return 18;case 49:return 20;case 50:return 64;case 51:return 5;case 52:return L.yytext=L.yytext.trim(),70;case 53:return 73;case 54:return 74;case 55:return 75;case 56:return 76;case 57:return 71;case 58:return 72;case 59:return 77;case 60:return 78;case 61:return 79;case 62:return 80;case 63:return 81;case 64:return 81;case 65:return 68;case 66:return 69;case 67:return 5;case 68:return"INVALID"}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:[^<\->\->:\n,;]+?([\-]*[^<\->\->:\n,;]+?)*?(?=((?!\n)\s)+as(?!\n)\s|[#\n;]|$))/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[45,46],inclusive:!1},acc_descr:{rules:[43],inclusive:!1},acc_title:{rules:[41],inclusive:!1},ID:{rules:[2,3,12],inclusive:!1},ALIAS:{rules:[2,3,13,14],inclusive:!1},LINE:{rules:[2,3,26],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,7,8,9,10,11,15,16,17,18,19,20,21,22,23,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,42,44,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68],inclusive:!0}}};return nt})();bt.lexer=Zt;function mt(){this.yy={}}return a.__name(mt,"Parser"),mt.prototype=bt,bt.Parser=mt,new mt})();Pt.parser=Pt;var se=Pt,ie={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34},re={FILLED:0,OPEN:1},ne={LEFTOF:0,RIGHTOF:1,OVER:2},ut,oe=(ut=class{constructor(){this.state=new ae.ImperativeState(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),this.setAccTitle=a.setAccTitle,this.setAccDescription=a.setAccDescription,this.setDiagramTitle=a.setDiagramTitle,this.getAccTitle=a.getAccTitle,this.getAccDescription=a.getAccDescription,this.getDiagramTitle=a.getDiagramTitle,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(a.getConfig2().wrap),this.LINETYPE=ie,this.ARROWTYPE=re,this.PLACEMENT=ne}addBox(t){this.state.records.boxes.push({name:t.text,wrap:t.wrap??this.autoWrap(),fill:t.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(t,l,s,i){let n=this.state.records.currentBox;const o=this.state.records.actors.get(t);if(o){if(this.state.records.currentBox&&o.box&&this.state.records.currentBox!==o.box)throw new Error(`A same participant should only be defined in one Box: ${o.name} can't be in '${o.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(n=o.box?o.box:this.state.records.currentBox,o.box=n,o&&l===o.name&&s==null)return}if(s?.text==null&&(s={text:l,type:i}),(i==null||s.text==null)&&(s={text:l,type:i}),this.state.records.actors.set(t,{box:n,name:l,description:s.text,wrap:s.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:i??"participant"}),this.state.records.prevActor){const d=this.state.records.actors.get(this.state.records.prevActor);d&&(d.nextActor=t)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(t),this.state.records.prevActor=t}activationCount(t){let l,s=0;if(!t)return 0;for(l=0;l<this.state.records.messages.length;l++)this.state.records.messages[l].type===this.LINETYPE.ACTIVE_START&&this.state.records.messages[l].from===t&&s++,this.state.records.messages[l].type===this.LINETYPE.ACTIVE_END&&this.state.records.messages[l].from===t&&s--;return s}addMessage(t,l,s,i){this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:t,to:l,message:s.text,wrap:s.wrap??this.autoWrap(),answer:i})}addSignal(t,l,s,i,n=!1){if(i===this.LINETYPE.ACTIVE_END&&this.activationCount(t??"")<1){const d=new Error("Trying to inactivate an inactive participant ("+t+")");throw d.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},d}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:t,to:l,message:s?.text??"",wrap:s?.wrap??this.autoWrap(),type:i,activate:n}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(t=>t.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(t){return this.state.records.actors.get(t)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(t){this.state.records.wrapEnabled=t}extractWrap(t){if(t===void 0)return{};t=t.trim();const l=/^:?wrap:/.exec(t)!==null?!0:/^:?nowrap:/.exec(t)!==null?!1:void 0;return{cleanedText:(l===void 0?t:t.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:l}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:a.getConfig2().sequence?.wrap??!1}clear(){this.state.reset(),a.clear()}parseMessage(t){const l=t.trim(),{wrap:s,cleanedText:i}=this.extractWrap(l),n={text:i,wrap:s};return a.log.debug(`parseMessage: ${JSON.stringify(n)}`),n}parseBoxData(t){const l=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(t);let s=l?.[1]?l[1].trim():"transparent",i=l?.[2]?l[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",s)||(s="transparent",i=t.trim());else{const d=new Option().style;d.color=s,d.color!==s&&(s="transparent",i=t.trim())}const{wrap:n,cleanedText:o}=this.extractWrap(i);return{text:o?a.sanitizeText(o,a.getConfig2()):void 0,color:s,wrap:n}}addNote(t,l,s){const i={actor:t,placement:l,message:s.text,wrap:s.wrap??this.autoWrap()},n=[].concat(t,t);this.state.records.notes.push(i),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:n[0],to:n[1],message:s.text,wrap:s.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:l})}addLinks(t,l){const s=this.getActor(t);try{let i=a.sanitizeText(l.text,a.getConfig2());i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");const n=JSON.parse(i);this.insertLinks(s,n)}catch(i){a.log.error("error while parsing actor link text",i)}}addALink(t,l){const s=this.getActor(t);try{const i={};let n=a.sanitizeText(l.text,a.getConfig2());const o=n.indexOf("@");n=n.replace(/=/g,"="),n=n.replace(/&/g,"&");const d=n.slice(0,o-1).trim(),p=n.slice(o+1).trim();i[d]=p,this.insertLinks(s,i)}catch(i){a.log.error("error while parsing actor link text",i)}}insertLinks(t,l){if(t.links==null)t.links=l;else for(const s in l)t.links[s]=l[s]}addProperties(t,l){const s=this.getActor(t);try{const i=a.sanitizeText(l.text,a.getConfig2()),n=JSON.parse(i);this.insertProperties(s,n)}catch(i){a.log.error("error while parsing actor properties text",i)}}insertProperties(t,l){if(t.properties==null)t.properties=l;else for(const s in l)t.properties[s]=l[s]}boxEnd(){this.state.records.currentBox=void 0}addDetails(t,l){const s=this.getActor(t),i=document.getElementById(l.text);try{const n=i.innerHTML,o=JSON.parse(n);o.properties&&this.insertProperties(s,o.properties),o.links&&this.insertLinks(s,o.links)}catch(n){a.log.error("error while parsing actor details text",n)}}getActorProperty(t,l){if(t?.properties!==void 0)return t.properties[l]}apply(t){if(Array.isArray(t))t.forEach(l=>{this.apply(l)});else switch(t.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:t.sequenceIndex,step:t.sequenceIndexStep,visible:t.sequenceVisible},wrap:!1,type:t.signalType});break;case"addParticipant":this.addActor(t.actor,t.actor,t.description,t.draw);break;case"createParticipant":if(this.state.records.actors.has(t.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=t.actor,this.addActor(t.actor,t.actor,t.description,t.draw),this.state.records.createdActors.set(t.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=t.actor,this.state.records.destroyedActors.set(t.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(t.actor,void 0,void 0,t.signalType);break;case"activeEnd":this.addSignal(t.actor,void 0,void 0,t.signalType);break;case"addNote":this.addNote(t.actor,t.placement,t.text);break;case"addLinks":this.addLinks(t.actor,t.text);break;case"addALink":this.addALink(t.actor,t.text);break;case"addProperties":this.addProperties(t.actor,t.text);break;case"addDetails":this.addDetails(t.actor,t.text);break;case"addMessage":if(this.state.records.lastCreated){if(t.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(t.to!==this.state.records.lastDestroyed&&t.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(t.from,t.to,t.msg,t.signalType,t.activate);break;case"boxStart":this.addBox(t.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,t.loopText,t.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"rectStart":this.addSignal(void 0,void 0,t.color,t.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"optStart":this.addSignal(void 0,void 0,t.optText,t.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"altStart":this.addSignal(void 0,void 0,t.altText,t.signalType);break;case"else":this.addSignal(void 0,void 0,t.altText,t.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"setAccTitle":a.setAccTitle(t.text);break;case"parStart":this.addSignal(void 0,void 0,t.parText,t.signalType);break;case"and":this.addSignal(void 0,void 0,t.parText,t.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,t.criticalText,t.signalType);break;case"option":this.addSignal(void 0,void 0,t.optionText,t.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break;case"breakStart":this.addSignal(void 0,void 0,t.breakText,t.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,t.signalType);break}}getConfig(){return a.getConfig2().sequence}},a.__name(ut,"SequenceDB"),ut),ce=a.__name(e=>`.actor {
stroke: ${e.actorBorder};
fill: ${e.actorBkg};
}
text.actor > tspan {
fill: ${e.actorTextColor};
stroke: none;
}
.actor-line {
stroke: ${e.actorLineColor};
}
.messageLine0 {
stroke-width: 1.5;
stroke-dasharray: none;
stroke: ${e.signalColor};
}
.messageLine1 {
stroke-width: 1.5;
stroke-dasharray: 2, 2;
stroke: ${e.signalColor};
}
#arrowhead path {
fill: ${e.signalColor};
stroke: ${e.signalColor};
}
.sequenceNumber {
fill: ${e.sequenceNumberColor};
}
#sequencenumber {
fill: ${e.signalColor};
}
#crosshead path {
fill: ${e.signalColor};
stroke: ${e.signalColor};
}
.messageText {
fill: ${e.signalTextColor};
stroke: none;
}
.labelBox {
stroke: ${e.labelBoxBorderColor};
fill: ${e.labelBoxBkgColor};
}
.labelText, .labelText > tspan {
fill: ${e.labelTextColor};
stroke: none;
}
.loopText, .loopText > tspan {
fill: ${e.loopTextColor};
stroke: none;
}
.loopLine {
stroke-width: 2px;
stroke-dasharray: 2, 2;
stroke: ${e.labelBoxBorderColor};
fill: ${e.labelBoxBorderColor};
}
.note {
//stroke: #decc93;
stroke: ${e.noteBorderColor};
fill: ${e.noteBkgColor};
}
.noteText, .noteText > tspan {
fill: ${e.noteTextColor};
stroke: none;
}
.activation0 {
fill: ${e.activationBkgColor};
stroke: ${e.activationBorderColor};
}
.activation1 {
fill: ${e.activationBkgColor};
stroke: ${e.activationBorderColor};
}
.activation2 {
fill: ${e.activationBkgColor};
stroke: ${e.activationBorderColor};
}
.actorPopupMenu {
position: absolute;
}
.actorPopupMenuPanel {
position: absolute;
fill: ${e.actorBkg};
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}
.actor-man line {
stroke: ${e.actorBorder};
fill: ${e.actorBkg};
}
.actor-man circle, line {
stroke: ${e.actorBorder};
fill: ${e.actorBkg};
stroke-width: 2px;
}
`,"getStyles"),le=ce,lt=36,Yt="actor-top",Ft="actor-bottom",he="actor-box",Bt="actor-man",Nt=a.__name(function(e,t){return et.drawRect(e,t)},"drawRect"),de=a.__name(function(e,t,l,s,i){if(t.links===void 0||t.links===null||Object.keys(t.links).length===0)return{height:0,width:0};const n=t.links,o=t.actorCnt,d=t.rectData;var p="none";i&&(p="block !important");const r=e.append("g");r.attr("id","actor"+o+"_popup"),r.attr("class","actorPopupMenu"),r.attr("display",p);var f="";d.class!==void 0&&(f=" "+d.class);let T=d.width>l?d.width:l;const g=r.append("rect");if(g.attr("class","actorPopupMenuPanel"+f),g.attr("x",d.x),g.attr("y",d.height),g.attr("fill",d.fill),g.attr("stroke",d.stroke),g.attr("width",T),g.attr("height",d.height),g.attr("rx",d.rx),g.attr("ry",d.ry),n!=null){var x=20;for(let P in n){var y=r.append("a"),v=a.distExports.sanitizeUrl(n[P]);y.attr("xlink:href",v),y.attr("target","_blank"),Ae(s)(P,y,d.x+10,d.height+x,T,20,{class:"actor"},s),x+=30}}return g.attr("height",x),{height:d.height+x,width:T}},"drawPopup"),pe=a.__name(function(e){return"var pu = document.getElementById('"+e+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Et=a.__name(async function(e,t,l=null){let s=e.append("foreignObject");const i=await a.renderKatexSanitized(t.text,a.getConfig()),o=s.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(s.attr("height",Math.round(o.height)).attr("width",Math.round(o.width)),t.class==="noteText"){const d=e.node().firstChild;d.setAttribute("height",o.height+2*t.textMargin);const p=d.getBBox();s.attr("x",Math.round(p.x+p.width/2-o.width/2)).attr("y",Math.round(p.y+p.height/2-o.height/2))}else if(l){let{startx:d,stopx:p,starty:r}=l;if(d>p){const f=d;d=p,p=f}s.attr("x",Math.round(d+Math.abs(d-p)/2-o.width/2)),t.class==="loopText"?s.attr("y",Math.round(r)):s.attr("y",Math.round(r-o.height))}return[s]},"drawKatex"),gt=a.__name(function(e,t){let l=0,s=0;const i=t.text.split(a.common_default.lineBreakRegex),[n,o]=a.parseFontSize(t.fontSize);let d=[],p=0,r=a.__name(()=>t.y,"yfunc");if(t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0)switch(t.valign){case"top":case"start":r=a.__name(()=>Math.round(t.y+t.textMargin),"yfunc");break;case"middle":case"center":r=a.__name(()=>Math.round(t.y+(l+s+t.textMargin)/2),"yfunc");break;case"bottom":case"end":r=a.__name(()=>Math.round(t.y+(l+s+2*t.textMargin)-t.textMargin),"yfunc");break}if(t.anchor!==void 0&&t.textMargin!==void 0&&t.width!==void 0)switch(t.anchor){case"left":case"start":t.x=Math.round(t.x+t.textMargin),t.anchor="start",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"middle":case"center":t.x=Math.round(t.x+t.width/2),t.anchor="middle",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"right":case"end":t.x=Math.round(t.x+t.width-t.textMargin),t.anchor="end",t.dominantBaseline="middle",t.alignmentBaseline="middle";break}for(let[f,T]of i.entries()){t.textMargin!==void 0&&t.textMargin===0&&n!==void 0&&(p=f*n);const g=e.append("text");g.attr("x",t.x),g.attr("y",r()),t.anchor!==void 0&&g.attr("text-anchor",t.anchor).attr("dominant-baseline",t.dominantBaseline).attr("alignment-baseline",t.alignmentBaseline),t.fontFamily!==void 0&&g.style("font-family",t.fontFamily),o!==void 0&&g.style("font-size",o),t.fontWeight!==void 0&&g.style("font-weight",t.fontWeight),t.fill!==void 0&&g.attr("fill",t.fill),t.class!==void 0&&g.attr("class",t.class),t.dy!==void 0?g.attr("dy",t.dy):p!==0&&g.attr("dy",p);const x=T||a.ZERO_WIDTH_SPACE;if(t.tspan){const y=g.append("tspan");y.attr("x",t.x),t.fill!==void 0&&y.attr("fill",t.fill),y.text(x)}else g.text(x);t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0&&(s+=(g._groups||g)[0][0].getBBox().height,l=s),d.push(g)}return d},"drawText"),Wt=a.__name(function(e,t){function l(i,n,o,d,p){return i+","+n+" "+(i+o)+","+n+" "+(i+o)+","+(n+d-p)+" "+(i+o-p*1.2)+","+(n+d)+" "+i+","+(n+d)}a.__name(l,"genPoints");const s=e.append("polygon");return s.attr("points",l(t.x,t.y,t.width,t.height,7)),s.attr("class","labelBox"),t.y=t.y+t.height/2,gt(e,t),s},"drawLabel"),st=-1,qt=a.__name((e,t,l,s)=>{e.select&&l.forEach(i=>{const n=t.get(i),o=e.select("#actor"+n.actorCnt);!s.mirrorActors&&n.stopy?o.attr("y2",n.stopy+n.height/2):s.mirrorActors&&o.attr("y2",n.stopy)})},"fixLifeLineHeights"),ue=a.__name(function(e,t,l,s){const i=s?t.stopy:t.starty,n=t.x+t.width/2,o=i+t.height,d=e.append("g").lower();var p=d;s||(st++,Object.keys(t.links||{}).length&&!l.forceMenus&&p.attr("onclick",pe(`actor${st}_popup`)).attr("cursor","pointer"),p.append("line").attr("id","actor"+st).attr("x1",n).attr("y1",o).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),p=d.append("g"),t.actorCnt=st,t.links!=null&&p.attr("id","root-"+st));const r=et.getNoteRect();var f="actor";t.properties?.class?f=t.properties.class:r.fill="#eaeaea",s?f+=` ${Ft}`:f+=` ${Yt}`,r.x=t.x,r.y=i,r.width=t.width,r.height=t.height,r.class=f,r.rx=3,r.ry=3,r.name=t.name;const T=Nt(p,r);if(t.rectData=r,t.properties?.icon){const x=t.properties.icon.trim();x.charAt(0)==="@"?et.drawEmbeddedImage(p,r.x+r.width-20,r.y+10,x.substr(1)):et.drawImage(p,r.x+r.width-20,r.y+10,x)}St(l,a.hasKatex(t.description))(t.description,p,r.x,r.y,r.width,r.height,{class:`actor ${he}`},l);let g=t.height;if(T.node){const x=T.node().getBBox();t.height=x.height,g=x.height}return g},"drawActorTypeParticipant"),ge=a.__name(function(e,t,l,s){const i=s?t.stopy:t.starty,n=t.x+t.width/2,o=i+80,d=e.append("g").lower();s||(st++,d.append("line").attr("id","actor"+st).attr("x1",n).attr("y1",o).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=st);const p=e.append("g");let r=Bt;s?r+=` ${Ft}`:r+=` ${Yt}`,p.attr("class",r),p.attr("name",t.name);const f=et.getNoteRect();f.x=t.x,f.y=i,f.fill="#eaeaea",f.width=t.width,f.height=t.height,f.class="actor",f.rx=3,f.ry=3,p.append("line").attr("id","actor-man-torso"+st).attr("x1",n).attr("y1",i+25).attr("x2",n).attr("y2",i+45),p.append("line").attr("id","actor-man-arms"+st).attr("x1",n-lt/2).attr("y1",i+33).attr("x2",n+lt/2).attr("y2",i+33),p.append("line").attr("x1",n-lt/2).attr("y1",i+60).attr("x2",n).attr("y2",i+45),p.append("line").attr("x1",n).attr("y1",i+45).attr("x2",n+lt/2-2).attr("y2",i+60);const T=p.append("circle");T.attr("cx",t.x+t.width/2),T.attr("cy",i+10),T.attr("r",15),T.attr("width",t.width),T.attr("height",t.height);const g=p.node().getBBox();return t.height=g.height,St(l,a.hasKatex(t.description))(t.description,p,f.x,f.y+35,f.width,f.height,{class:`actor ${Bt}`},l),t.height},"drawActorTypeActor"),fe=a.__name(async function(e,t,l,s){switch(t.type){case"actor":return await ge(e,t,l,s);case"participant":return await ue(e,t,l,s)}},"drawActor"),me=a.__name(function(e,t,l){const i=e.append("g");zt(i,t),t.name&&St(l)(t.name,i,t.x,t.y+l.boxTextMargin+(t.textMaxHeight||0)/2,t.width,0,{class:"text"},l),i.lower()},"drawBox"),xe=a.__name(function(e){return e.append("g")},"anchorElement"),_e=a.__name(function(e,t,l,s,i){const n=et.getNoteRect(),o=t.anchored;n.x=t.startx,n.y=t.starty,n.class="activation"+i%3,n.width=t.stopx-t.startx,n.height=l-t.starty,Nt(o,n)},"drawActivation"),Te=a.__name(async function(e,t,l,s){const{boxMargin:i,boxTextMargin:n,labelBoxHeight:o,labelBoxWidth:d,messageFontFamily:p,messageFontSize:r,messageFontWeight:f}=s,T=e.append("g"),g=a.__name(function(v,P,D,N){return T.append("line").attr("x1",v).attr("y1",P).attr("x2",D).attr("y2",N).attr("class","loopLine")},"drawLoopLine");g(t.startx,t.starty,t.stopx,t.starty),g(t.stopx,t.starty,t.stopx,t.stopy),g(t.startx,t.stopy,t.stopx,t.stopy),g(t.startx,t.starty,t.startx,t.stopy),t.sections!==void 0&&t.sections.forEach(function(v){g(t.startx,v.y,t.stopx,v.y).style("stroke-dasharray","3, 3")});let x=et.getTextObj();x.text=l,x.x=t.startx,x.y=t.starty,x.fontFamily=p,x.fontSize=r,x.fontWeight=f,x.anchor="middle",x.valign="middle",x.tspan=!1,x.width=d||50,x.height=o||20,x.textMargin=n,x.class="labelText",Wt(T,x),x=Ht(),x.text=t.title,x.x=t.startx+d/2+(t.stopx-t.startx)/2,x.y=t.starty+i+n,x.anchor="middle",x.valign="middle",x.textMargin=n,x.class="loopText",x.fontFamily=p,x.fontSize=r,x.fontWeight=f,x.wrap=!0;let y=a.hasKatex(x.text)?await Et(T,x,t):gt(T,x);if(t.sectionTitles!==void 0){for(const[v,P]of Object.entries(t.sectionTitles))if(P.message){x.text=P.message,x.x=t.startx+(t.stopx-t.startx)/2,x.y=t.sections[v].y+i+n,x.class="loopText",x.anchor="middle",x.valign="middle",x.tspan=!1,x.fontFamily=p,x.fontSize=r,x.fontWeight=f,x.wrap=t.wrap,a.hasKatex(x.text)?(t.starty=t.sections[v].y,await Et(T,x,t)):gt(T,x);let D=Math.round(y.map(N=>(N._groups||N)[0][0].getBBox().height).reduce((N,O)=>N+O));t.sections[v].height+=D-(i+n)}}return t.height=Math.round(t.stopy-t.starty),T},"drawLoop"),zt=a.__name(function(e,t){et.drawBackgroundRect(e,t)},"drawBackgroundRect"),Ee=a.__name(function(e){e.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06