@render-harness/ui 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/static/assets/{architectureDiagram-3BPJPVTR-DLNRxqTW.js → architectureDiagram-3BPJPVTR-CFD3Y1kc.js} +2 -2
- package/dist/static/assets/{architectureDiagram-3BPJPVTR-DLNRxqTW.js.map → architectureDiagram-3BPJPVTR-CFD3Y1kc.js.map} +1 -1
- package/dist/static/assets/{blockDiagram-GPEHLZMM-CCWTkWe6.js → blockDiagram-GPEHLZMM-Elf3j5Yp.js} +3 -3
- package/dist/static/assets/{blockDiagram-GPEHLZMM-CCWTkWe6.js.map → blockDiagram-GPEHLZMM-Elf3j5Yp.js.map} +1 -1
- package/dist/static/assets/{c4Diagram-AAUBKEIU-qO0tZRXO.js → c4Diagram-AAUBKEIU-COPyA4Y2.js} +2 -2
- package/dist/static/assets/{c4Diagram-AAUBKEIU-qO0tZRXO.js.map → c4Diagram-AAUBKEIU-COPyA4Y2.js.map} +1 -1
- package/dist/static/assets/{chunk-3OPIFGDE-xcRWDOrg.js → chunk-3OPIFGDE-P0oLihOV.js} +2 -2
- package/dist/static/assets/{chunk-3OPIFGDE-xcRWDOrg.js.map → chunk-3OPIFGDE-P0oLihOV.js.map} +1 -1
- package/dist/static/assets/{chunk-5ZQYHXKU-B_3UEJ_q.js → chunk-5ZQYHXKU-CCVDVWrS.js} +2 -2
- package/dist/static/assets/{chunk-5ZQYHXKU-B_3UEJ_q.js.map → chunk-5ZQYHXKU-CCVDVWrS.js.map} +1 -1
- package/dist/static/assets/{chunk-727SXJPM-c1bbIj6N.js → chunk-727SXJPM-CNNkFQDE.js} +2 -2
- package/dist/static/assets/{chunk-727SXJPM-c1bbIj6N.js.map → chunk-727SXJPM-CNNkFQDE.js.map} +1 -1
- package/dist/static/assets/{chunk-AQP2D5EJ-Wv0w6wvH.js → chunk-AQP2D5EJ-BmW_1ljM.js} +2 -2
- package/dist/static/assets/{chunk-AQP2D5EJ-Wv0w6wvH.js.map → chunk-AQP2D5EJ-BmW_1ljM.js.map} +1 -1
- package/dist/static/assets/{chunk-KSCS5N6A-BZrceHGX.js → chunk-KSCS5N6A-B2emJsw5.js} +3 -3
- package/dist/static/assets/{chunk-KSCS5N6A-BZrceHGX.js.map → chunk-KSCS5N6A-B2emJsw5.js.map} +1 -1
- package/dist/static/assets/{chunk-L5ZTLDWV-BAcjEn3C.js → chunk-L5ZTLDWV-DZfwPtSD.js} +2 -2
- package/dist/static/assets/{chunk-L5ZTLDWV-BAcjEn3C.js.map → chunk-L5ZTLDWV-DZfwPtSD.js.map} +1 -1
- package/dist/static/assets/{chunk-O5CBEL6O-KRO56hHQ.js → chunk-O5CBEL6O-CNfA3Ek9.js} +2 -2
- package/dist/static/assets/{chunk-O5CBEL6O-KRO56hHQ.js.map → chunk-O5CBEL6O-CNfA3Ek9.js.map} +1 -1
- package/dist/static/assets/classDiagram-4FO5ZUOK-BRBJdDvt.js +2 -0
- package/dist/static/assets/{classDiagram-4FO5ZUOK-oexPF7ww.js.map → classDiagram-4FO5ZUOK-BRBJdDvt.js.map} +1 -1
- package/dist/static/assets/classDiagram-v2-Q7XG4LA2-CQjk9kLc.js +2 -0
- package/dist/static/assets/{classDiagram-v2-Q7XG4LA2-Dc4jeSLj.js.map → classDiagram-v2-Q7XG4LA2-CQjk9kLc.js.map} +1 -1
- package/dist/static/assets/{dagre-BM42HDAG-au4dCVgC.js → dagre-BM42HDAG-DovnSGTF.js} +2 -2
- package/dist/static/assets/{dagre-BM42HDAG-au4dCVgC.js.map → dagre-BM42HDAG-DovnSGTF.js.map} +1 -1
- package/dist/static/assets/{diagram-2AECGRRQ-rJMnDhBW.js → diagram-2AECGRRQ-DL9VAGtd.js} +2 -2
- package/dist/static/assets/{diagram-2AECGRRQ-rJMnDhBW.js.map → diagram-2AECGRRQ-DL9VAGtd.js.map} +1 -1
- package/dist/static/assets/{diagram-5GNKFQAL-diIxjA-v.js → diagram-5GNKFQAL-Crr9YjF6.js} +2 -2
- package/dist/static/assets/{diagram-5GNKFQAL-diIxjA-v.js.map → diagram-5GNKFQAL-Crr9YjF6.js.map} +1 -1
- package/dist/static/assets/{diagram-KO2AKTUF-D9IYocVR.js → diagram-KO2AKTUF-B3yOnGTs.js} +2 -2
- package/dist/static/assets/{diagram-KO2AKTUF-D9IYocVR.js.map → diagram-KO2AKTUF-B3yOnGTs.js.map} +1 -1
- package/dist/static/assets/{diagram-LMA3HP47-BtdvpqaH.js → diagram-LMA3HP47-KALO7OjG.js} +2 -2
- package/dist/static/assets/{diagram-LMA3HP47-BtdvpqaH.js.map → diagram-LMA3HP47-KALO7OjG.js.map} +1 -1
- package/dist/static/assets/{diagram-OG6HWLK6-CaRkxDoj.js → diagram-OG6HWLK6-D0GPjAxV.js} +2 -2
- package/dist/static/assets/{diagram-OG6HWLK6-CaRkxDoj.js.map → diagram-OG6HWLK6-D0GPjAxV.js.map} +1 -1
- package/dist/static/assets/{erDiagram-TEJ5UH35-CgifrqeZ.js → erDiagram-TEJ5UH35-ksCvepnP.js} +2 -2
- package/dist/static/assets/{erDiagram-TEJ5UH35-CgifrqeZ.js.map → erDiagram-TEJ5UH35-ksCvepnP.js.map} +1 -1
- package/dist/static/assets/{flowDiagram-I6XJVG4X-DaguIeM_.js → flowDiagram-I6XJVG4X-BT1bpfq2.js} +2 -2
- package/dist/static/assets/{flowDiagram-I6XJVG4X-DaguIeM_.js.map → flowDiagram-I6XJVG4X-BT1bpfq2.js.map} +1 -1
- package/dist/static/assets/ganttDiagram-6RSMTGT7-Cg3QTIl7.js +293 -0
- package/dist/static/assets/ganttDiagram-6RSMTGT7-Cg3QTIl7.js.map +1 -0
- package/dist/static/assets/{gitGraphDiagram-PVQCEYII-Ht-SDjxh.js → gitGraphDiagram-PVQCEYII-AW-DbGHw.js} +2 -2
- package/dist/static/assets/{gitGraphDiagram-PVQCEYII-Ht-SDjxh.js.map → gitGraphDiagram-PVQCEYII-AW-DbGHw.js.map} +1 -1
- package/dist/static/assets/index-B1CSiQFH.js +260 -0
- package/dist/static/assets/index-B1CSiQFH.js.map +1 -0
- package/dist/static/assets/{index-luXiT-gK.css → index-BJZaWHUt.css} +1 -1
- package/dist/static/assets/{infoDiagram-5YYISTIA-CwLGA7Zu.js → infoDiagram-5YYISTIA-DZzRjoNy.js} +2 -2
- package/dist/static/assets/{infoDiagram-5YYISTIA-CwLGA7Zu.js.map → infoDiagram-5YYISTIA-DZzRjoNy.js.map} +1 -1
- package/dist/static/assets/init-D6CV0rqX.js +2 -0
- package/dist/static/assets/{init-Dfd1k18d.js.map → init-D6CV0rqX.js.map} +1 -1
- package/dist/static/assets/{ishikawaDiagram-YF4QCWOH-CaZCrUUR.js → ishikawaDiagram-YF4QCWOH-A-bX4Zu0.js} +2 -2
- package/dist/static/assets/{ishikawaDiagram-YF4QCWOH-CaZCrUUR.js.map → ishikawaDiagram-YF4QCWOH-A-bX4Zu0.js.map} +1 -1
- package/dist/static/assets/{kanban-definition-UN3LZRKU-DlYha85J.js → kanban-definition-UN3LZRKU-ibATe6sx.js} +2 -2
- package/dist/static/assets/{kanban-definition-UN3LZRKU-DlYha85J.js.map → kanban-definition-UN3LZRKU-ibATe6sx.js.map} +1 -1
- package/dist/static/assets/{line-GCwXS1Fi.js → line-DvIoplHa.js} +2 -2
- package/dist/static/assets/{line-GCwXS1Fi.js.map → line-DvIoplHa.js.map} +1 -1
- package/dist/static/assets/linear-D0P02-YR.js +2 -0
- package/dist/static/assets/{linear-CTnL8jvu.js.map → linear-D0P02-YR.js.map} +1 -1
- package/dist/static/assets/{mindmap-definition-RKZ34NQL-CPJIWJdQ.js → mindmap-definition-RKZ34NQL-BYhA5Frb.js} +2 -2
- package/dist/static/assets/{mindmap-definition-RKZ34NQL-CPJIWJdQ.js.map → mindmap-definition-RKZ34NQL-BYhA5Frb.js.map} +1 -1
- package/dist/static/assets/{ordinal-DjeI0KOh.js → ordinal-D-PEDSg4.js} +2 -2
- package/dist/static/assets/{ordinal-DjeI0KOh.js.map → ordinal-D-PEDSg4.js.map} +1 -1
- package/dist/static/assets/{pieDiagram-4H26LBE5-DTVmF_CH.js → pieDiagram-4H26LBE5-qud9ZeDs.js} +2 -2
- package/dist/static/assets/{pieDiagram-4H26LBE5-DTVmF_CH.js.map → pieDiagram-4H26LBE5-qud9ZeDs.js.map} +1 -1
- package/dist/static/assets/{quadrantDiagram-W4KKPZXB-Bho6zy_y.js → quadrantDiagram-W4KKPZXB-B5lPA7rJ.js} +2 -2
- package/dist/static/assets/{quadrantDiagram-W4KKPZXB-Bho6zy_y.js.map → quadrantDiagram-W4KKPZXB-B5lPA7rJ.js.map} +1 -1
- package/dist/static/assets/{requirementDiagram-4Y6WPE33-CLyoVwlh.js → requirementDiagram-4Y6WPE33-C0mLADne.js} +2 -2
- package/dist/static/assets/{requirementDiagram-4Y6WPE33-CLyoVwlh.js.map → requirementDiagram-4Y6WPE33-C0mLADne.js.map} +1 -1
- package/dist/static/assets/{sankeyDiagram-5OEKKPKP-V2yvk-0Z.js → sankeyDiagram-5OEKKPKP-vwfoPxTH.js} +2 -2
- package/dist/static/assets/{sankeyDiagram-5OEKKPKP-V2yvk-0Z.js.map → sankeyDiagram-5OEKKPKP-vwfoPxTH.js.map} +1 -1
- package/dist/static/assets/{sequenceDiagram-3UESZ5HK-Dp03aXVk.js → sequenceDiagram-3UESZ5HK-DtPUE6ba.js} +2 -2
- package/dist/static/assets/{sequenceDiagram-3UESZ5HK-Dp03aXVk.js.map → sequenceDiagram-3UESZ5HK-DtPUE6ba.js.map} +1 -1
- package/dist/static/assets/{stateDiagram-AJRCARHV-BEJW-_HK.js → stateDiagram-AJRCARHV-BaeNtGLJ.js} +2 -2
- package/dist/static/assets/{stateDiagram-AJRCARHV-BEJW-_HK.js.map → stateDiagram-AJRCARHV-BaeNtGLJ.js.map} +1 -1
- package/dist/static/assets/stateDiagram-v2-BHNVJYJU-DbTX_m6G.js +2 -0
- package/dist/static/assets/{stateDiagram-v2-BHNVJYJU-Bo19-vKE.js.map → stateDiagram-v2-BHNVJYJU-DbTX_m6G.js.map} +1 -1
- package/dist/static/assets/{timeline-definition-PNZ67QCA-C4KTq0mQ.js → timeline-definition-PNZ67QCA-C9H1UzNY.js} +2 -2
- package/dist/static/assets/{timeline-definition-PNZ67QCA-C4KTq0mQ.js.map → timeline-definition-PNZ67QCA-C9H1UzNY.js.map} +1 -1
- package/dist/static/assets/{vennDiagram-CIIHVFJN-1jmBZPSZ.js → vennDiagram-CIIHVFJN-BpQ2qCN5.js} +2 -2
- package/dist/static/assets/{vennDiagram-CIIHVFJN-1jmBZPSZ.js.map → vennDiagram-CIIHVFJN-BpQ2qCN5.js.map} +1 -1
- package/dist/static/assets/{wardleyDiagram-YWT4CUSO-A8XYzYTW.js → wardleyDiagram-YWT4CUSO-CQ8dLujr.js} +2 -2
- package/dist/static/assets/{wardleyDiagram-YWT4CUSO-A8XYzYTW.js.map → wardleyDiagram-YWT4CUSO-CQ8dLujr.js.map} +1 -1
- package/dist/static/assets/{xychartDiagram-2RQKCTM6-CuyUQvFt.js → xychartDiagram-2RQKCTM6-BCRK_Cs-.js} +4 -4
- package/dist/static/assets/xychartDiagram-2RQKCTM6-BCRK_Cs-.js.map +1 -0
- package/dist/static/index.html +14 -10
- package/package.json +14 -13
- package/dist/static/assets/classDiagram-4FO5ZUOK-oexPF7ww.js +0 -2
- package/dist/static/assets/classDiagram-v2-Q7XG4LA2-Dc4jeSLj.js +0 -2
- package/dist/static/assets/ganttDiagram-6RSMTGT7-DIFubQTa.js +0 -293
- package/dist/static/assets/ganttDiagram-6RSMTGT7-DIFubQTa.js.map +0 -1
- package/dist/static/assets/index-D5tmHkO_.js +0 -228
- package/dist/static/assets/index-D5tmHkO_.js.map +0 -1
- package/dist/static/assets/init-Dfd1k18d.js +0 -2
- package/dist/static/assets/linear-CTnL8jvu.js +0 -2
- package/dist/static/assets/stateDiagram-v2-BHNVJYJU-Bo19-vKE.js +0 -2
- package/dist/static/assets/xychartDiagram-2RQKCTM6-CuyUQvFt.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{g as e,h as t}from"./src-DoMhBUqV.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-CSCIHK7Q-BBzr5U3o.js";import{t as m}from"./linear-
|
|
1
|
+
import{g as e,h as t}from"./src-DoMhBUqV.js";import{D as n,H as r,K as i,U as a,a as o,b as s,c,f as l,v as u,w as d,y as f,z as p}from"./chunk-CSCIHK7Q-BBzr5U3o.js";import{t as m}from"./linear-D0P02-YR.js";import{i as h}from"./chunk-5ZQYHXKU-CCVDVWrS.js";import{t as g}from"./line-DvIoplHa.js";import{t as _}from"./chunk-O5CBEL6O-CNfA3Ek9.js";import{a as v,x as y}from"./index-B1CSiQFH.js";var b=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[1,10,12,14,16,18,19,21,23],r=[2,6],i=[1,3],a=[1,5],o=[1,6],s=[1,7],c=[1,5,10,12,14,16,18,19,21,23,34,35,36],l=[1,25],u=[1,26],d=[1,28],f=[1,29],p=[1,30],m=[1,31],h=[1,32],g=[1,33],_=[1,34],v=[1,35],y=[1,36],b=[1,37],x=[1,43],S=[1,42],C=[1,47],w=[1,50],T=[1,10,12,14,16,18,19,21,23,34,35,36],E=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],D=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],O=[1,64],k={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:`error`,5:`XYCHART`,8:`CHART_ORIENTATION`,10:`title`,12:`X_AXIS`,14:`Y_AXIS`,16:`LINE`,18:`BAR`,19:`acc_title`,20:`acc_title_value`,21:`acc_descr`,22:`acc_descr_value`,23:`acc_descr_multiline_value`,24:`SQUARE_BRACES_START`,26:`SQUARE_BRACES_END`,27:`NUMBER_WITH_DECIMAL`,28:`COMMA`,31:`ARROW_DELIMITER`,34:`NEWLINE`,35:`SEMI`,36:`EOF`,38:`STR`,39:`MD_STR`,41:`AMP`,42:`NUM`,43:`ALPHA`,44:`PLUS`,45:`EQUALS`,46:`MULT`,47:`DOT`,48:`BRKT`,49:`MINUS`,50:`UNDERSCORE`},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setOrientation(a[s]);break;case 9:r.setDiagramTitle(a[s].text.trim());break;case 12:r.setLineData({text:``,type:`text`},a[s]);break;case 13:r.setLineData(a[s-1],a[s]);break;case 14:r.setBarData({text:``,type:`text`},a[s]);break;case 15:r.setBarData(a[s-1],a[s]);break;case 16:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 17:case 18:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 19:this.$=a[s-1];break;case 20:this.$=[Number(a[s-2]),...a[s]];break;case 21:this.$=[Number(a[s])];break;case 22:r.setXAxisTitle(a[s]);break;case 23:r.setXAxisTitle(a[s-1]);break;case 24:r.setXAxisTitle({type:`text`,text:``});break;case 25:r.setXAxisBand(a[s]);break;case 26:r.setXAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 27:this.$=a[s-1];break;case 28:this.$=[a[s-2],...a[s]];break;case 29:this.$=[a[s]];break;case 30:r.setYAxisTitle(a[s]);break;case 31:r.setYAxisTitle(a[s-1]);break;case 32:r.setYAxisTitle({type:`text`,text:``});break;case 33:r.setYAxisRangeData(Number(a[s-2]),Number(a[s]));break;case 37:this.$={text:a[s],type:`text`};break;case 38:this.$={text:a[s],type:`text`};break;case 39:this.$={text:a[s],type:`markdown`};break;case 40:this.$=a[s];break;case 41:this.$=a[s-1]+``+a[s];break}},`anonymous`),table:[e(n,r,{3:1,4:2,7:4,5:i,34:a,35:o,36:s}),{1:[3]},e(n,r,{4:2,7:4,3:8,5:i,34:a,35:o,36:s}),e(n,r,{4:2,7:4,6:9,3:10,5:i,8:[1,11],34:a,35:o,36:s}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},e(c,[2,34]),e(c,[2,35]),e(c,[2,36]),{1:[2,1]},e(n,r,{4:2,7:4,3:21,5:i,34:a,35:o,36:s}),{1:[2,3]},e(c,[2,5]),e(n,[2,7],{4:22,34:a,35:o,36:s}),{11:23,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:39,13:38,24:x,27:S,29:40,30:41,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:45,15:44,27:C,33:46,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:49,17:48,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{11:52,17:51,24:w,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},{20:[1,53]},{22:[1,54]},e(T,[2,18]),{1:[2,2]},e(T,[2,8]),e(T,[2,9]),e(E,[2,37],{40:55,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b}),e(E,[2,38]),e(E,[2,39]),e(D,[2,40]),e(D,[2,42]),e(D,[2,43]),e(D,[2,44]),e(D,[2,45]),e(D,[2,46]),e(D,[2,47]),e(D,[2,48]),e(D,[2,49]),e(D,[2,50]),e(D,[2,51]),e(T,[2,10]),e(T,[2,22],{30:41,29:56,24:x,27:S}),e(T,[2,24]),e(T,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,11]),e(T,[2,30],{33:60,27:C}),e(T,[2,32]),{31:[1,61]},e(T,[2,12]),{17:62,24:w},{25:63,27:O},e(T,[2,14]),{17:65,24:w},e(T,[2,16]),e(T,[2,17]),e(D,[2,41]),e(T,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},e(T,[2,31]),{27:[1,69]},e(T,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},e(T,[2,15]),e(T,[2,26]),e(T,[2,27]),{11:59,32:72,37:24,38:l,39:u,40:27,41:d,42:f,43:p,44:m,45:h,46:g,47:_,48:v,49:y,50:b},e(T,[2,33]),e(T,[2,19]),{25:73,27:O},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
|
|
2
2
|
`+h.showPosition()+`
|
|
3
3
|
Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};k.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(function(e,t){return this.yy=t||this.yy||{},this._input=e,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:t(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:t(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=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),n.length-1&&(this.yylineno-=n.length-1);var i=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:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:t(function(){return this._more=!0,this},`more`),reject:t(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).
|
|
4
4
|
`+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:t(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
|
|
5
5
|
`+t+`^`},`showPosition`),test_match:t(function(e,t){var n,r,i;if(this.options.backtrack_lexer&&(i={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&&(i.yylloc.range=this.yylloc.range.slice(0))),r=e[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,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(e[0].length),this.matched+=e[0],n=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},`test_match`),next:t(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r;this._more||(this.yytext=``,this.match=``);for(var i=this._currentRules(),a=0;a<i.length;a++)if(n=this._input.match(this.rules[i[a]]),n&&(!t||n[0].length>t[0].length)){if(t=n,r=a,this.options.backtrack_lexer){if(e=this.test_match(n,i[a]),e!==!1)return e;if(this._backtrack){t=!1;continue}else return!1}else if(!this.options.flex)break}return t?(e=this.test_match(t,i[r]),e===!1?!1:e):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
-
`+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:t(function(){return this.next()||this.lex()},`lex`),begin:t(function(e){this.conditionStack.push(e)},`begin`),popState:t(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:t(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:t(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:t(function(e){this.begin(e)},`pushState`),stateStackSize:t(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:t(function(e,t,n,r){switch(n){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState(`acc_title`),19;case 8:return this.popState(),`acc_title_value`;case 9:return this.pushState(`acc_descr`),21;case 10:return this.popState(),`acc_descr_value`;case 11:this.pushState(`acc_descr_multiline`);break;case 12:this.popState();break;case 13:return`acc_descr_multiline_value`;case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState(`axis_data`),`X_AXIS`;case 18:return this.pushState(`axis_data`),`Y_AXIS`;case 19:return this.pushState(`axis_band_data`),24;case 20:return 31;case 21:return this.pushState(`data`),16;case 22:return this.pushState(`data`),18;case 23:return this.pushState(`data_inner`),24;case 24:return 27;case 25:return this.popState(),26;case 26:this.popState();break;case 27:this.pushState(`string`);break;case 28:this.popState();break;case 29:return`STR`;case 30:return 24;case 31:return 26;case 32:return 43;case 33:return`COLON`;case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},`anonymous`),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}}})();function A(){this.yy={}}return t(A,`Parser`),A.prototype=k,k.Parser=A,new A})();C.parser=C;var w=C;function T(e){return e.type===`bar`}t(T,`isBarPlot`);function E(e){return e.type===`band`}t(E,`isBandAxisData`);function D(e){return e.type===`linear`}t(D,`isLinearAxisData`);var O=class{constructor(e){this.parentGroup=e}static{t(this,`TextDimensionCalculatorWithFont`)}getMaxDimension(e,t){if(!this.parentGroup)return{width:e.reduce((e,t)=>Math.max(t.length,e),0)*t,height:t};let n={width:0,height:0},r=this.parentGroup.append(`g`).attr(`visibility`,`hidden`).attr(`font-size`,t);for(let i of e){let e=y(r,1,i),a=e?e.width:i.length*t,o=e?e.height:t;n.width=Math.max(n.width,a),n.height=Math.max(n.height,o)}return r.remove(),n}},k=.7,A=.2,j=class{constructor(e,t,n,r){this.axisConfig=e,this.title=t,this.textDimensionCalculator=n,this.axisThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`,this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`}static{t(this,`BaseAxis`)}setRange(e){this.range=e,this.axisPosition===`left`||this.axisPosition===`right`?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){k*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(k*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let t=e.height;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=A*e.width;this.outerPadding=Math.min(n.width/2,r);let i=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-t}calculateSpaceIfDrawnVertical(e){let t=e.width;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=A*e.height;this.outerPadding=Math.min(n.height/2,r);let i=n.width+this.axisConfig.labelPadding*2;i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width-t,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition===`left`||this.axisPosition===`right`?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`left-axis`,`axisl-line`],data:[{path:`M ${t},${this.boundingRect.y} L ${t},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`left-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(e),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`middle`,horizontalPos:`right`}))}),this.showTick){let t=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`left-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${t},${this.getScaleValue(e)} L ${t-this.axisConfig.tickLength},${this.getScaleValue(e)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`left-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`bottom-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`bottom-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`bottom-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t} L ${this.getScaleValue(e)},${t+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`bottom-axis`,`title`],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`top-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`top-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y;e.push({type:`path`,groupTexts:[`top-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(e)},${t+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`top-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElements(){if(this.axisPosition===`left`)return this.getDrawableElementsForLeftAxis();if(this.axisPosition===`right`)throw Error(`Drawing of right axis is not implemented`);return this.axisPosition===`bottom`?this.getDrawableElementsForBottomAxis():this.axisPosition===`top`?this.getDrawableElementsForTopAxis():[]}},M=class extends j{static{t(this,`BandAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.categories=n,this.scale=S().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=S().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),e.trace(`BandAxis axis final categories, range: `,this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}},ee=class extends j{static{t(this,`LinearAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.domain=n,this.scale=m().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition===`left`&&e.reverse(),this.scale=m().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}};function N(e,t,n,r){let i=new O(r);return E(e)?new M(t,n,e.categories,e.title,i):new ee(t,n,[e.min,e.max],e.title,i)}t(N,`getAxis`);var te=class{constructor(e,t,n,r){this.textDimensionCalculator=e,this.chartConfig=t,this.chartData=n,this.chartThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{t(this,`ChartTitle`)}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let t=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(t.width,e.width),r=t.height+2*this.chartConfig.titlePadding;return t.width<=n&&t.height<=r&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=r,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:[`chart-title`],type:`text`,data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:`middle`,horizontalPos:`center`,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};function ne(e,t,n,r){return new te(new O(r),e,t,n)}t(ne,`getChartTitleComponent`);var re=class{constructor(e,t,n,r,i){this.plotData=e,this.xAxis=t,this.yAxis=n,this.orientation=r,this.plotIndex=i}static{t(this,`LinePlot`)}getDrawableElement(){let e=this.plotData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t;return t=this.orientation===`horizontal`?v().y(e=>e[0]).x(e=>e[1])(e):v().x(e=>e[0]).y(e=>e[1])(e),t?[{groupTexts:[`plot`,`line-plot-${this.plotIndex}`],type:`path`,data:[{path:t,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},ie=class{constructor(e,t,n,r,i,a){this.barData=e,this.boundingRect=t,this.xAxis=n,this.yAxis=r,this.orientation=i,this.plotIndex=a}static{t(this,`BarPlot`)}getDrawableElement(){let e=this.barData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*.95,n=t/2;return this.orientation===`horizontal`?[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:this.boundingRect.x,y:e[0]-n,height:t,width:e[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:e[0]-n,y:e[1],width:t,height:this.boundingRect.y+this.boundingRect.height-e[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},ae=class{constructor(e,t,n){this.chartConfig=e,this.chartData=t,this.chartThemeConfig=n,this.boundingRect={x:0,y:0,width:0,height:0}}static{t(this,`BasePlot`)}setAxes(e,t){this.xAxis=e,this.yAxis=t}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error(`Axes must be passed to render Plots`);let e=[];for(let[t,n]of this.chartData.plots.entries())switch(n.type){case`line`:{let r=new re(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}break;case`bar`:{let r=new ie(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}break}return e}};function P(e,t,n){return new ae(e,t,n)}t(P,`getPlotComponent`);var oe=class{constructor(e,t,n,r){this.chartConfig=e,this.chartData=t,this.componentStore={title:ne(e,t,n,r),plot:P(e,t,n),xAxis:N(t.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},r),yAxis:N(t.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},r)}}static{t(this,`Orchestrator`)}calculateVerticalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),o=this.componentStore.plot.calculateSpace({width:i,height:a});e-=o.width,t-=o.height,o=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),r=o.height,t-=o.height,this.componentStore.xAxis.setAxisPosition(`bottom`),o=this.componentStore.xAxis.calculateSpace({width:e,height:t}),t-=o.height,this.componentStore.yAxis.setAxisPosition(`left`),o=this.componentStore.yAxis.calculateSpace({width:e,height:t}),n=o.width,e-=o.width,e>0&&(i+=e,e=0),t>0&&(a+=t,t=0),this.componentStore.plot.calculateSpace({width:i,height:a}),this.componentStore.plot.setBoundingBoxXY({x:n,y:r}),this.componentStore.xAxis.setRange([n,n+i]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:r+a}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some(e=>T(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),o=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),s=this.componentStore.plot.calculateSpace({width:a,height:o});e-=s.width,t-=s.height,s=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),n=s.height,t-=s.height,this.componentStore.xAxis.setAxisPosition(`left`),s=this.componentStore.xAxis.calculateSpace({width:e,height:t}),e-=s.width,r=s.width,this.componentStore.yAxis.setAxisPosition(`top`),s=this.componentStore.yAxis.calculateSpace({width:e,height:t}),t-=s.height,i=n+s.height,e>0&&(a+=e,e=0),t>0&&(o+=t,t=0),this.componentStore.plot.calculateSpace({width:a,height:o}),this.componentStore.plot.setBoundingBoxXY({x:r,y:i}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:r,y:n}),this.componentStore.xAxis.setRange([i,i+o]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(e=>T(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation===`horizontal`?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let t of Object.values(this.componentStore))e.push(...t.getDrawableElements());return e}},se=class{static{t(this,`XYChartBuilder`)}static build(e,t,n,r){return new oe(e,t,n,r).getDrawableElement()}},F=0,I,L=W(),R=U(),z=G(),B=R.plotColorPalette.split(`,`).map(e=>e.trim()),V=!1,H=!1;function U(){let e=n(),t=s();return _(e.xyChart,t.themeVariables.xyChart)}t(U,`getChartDefaultThemeConfig`);function W(){let e=s();return _(l.xyChart,e.xyChart)}t(W,`getChartDefaultConfig`);function G(){return{yAxis:{type:`linear`,title:``,min:1/0,max:-1/0},xAxis:{type:`band`,title:``,categories:[]},title:``,plots:[]}}t(G,`getChartDefaultData`);function K(e){let t=s();return p(e.trim(),t)}t(K,`textSanitizer`);function q(e){I=e}t(q,`setTmpSVGG`);function J(e){e===`horizontal`?L.chartOrientation=`horizontal`:L.chartOrientation=`vertical`}t(J,`setOrientation`);function Y(e){z.xAxis.title=K(e.text)}t(Y,`setXAxisTitle`);function X(e,t){z.xAxis={type:`linear`,title:z.xAxis.title,min:e,max:t},V=!0}t(X,`setXAxisRangeData`);function ce(e){z.xAxis={type:`band`,title:z.xAxis.title,categories:e.map(e=>K(e.text))},V=!0}t(ce,`setXAxisBand`);function le(e){z.yAxis.title=K(e.text)}t(le,`setYAxisTitle`);function ue(e,t){z.yAxis={type:`linear`,title:z.yAxis.title,min:e,max:t},H=!0}t(ue,`setYAxisRangeData`);function de(e){let t=Math.min(...e),n=Math.max(...e),r=D(z.yAxis)?z.yAxis.min:1/0,i=D(z.yAxis)?z.yAxis.max:-1/0;z.yAxis={type:`linear`,title:z.yAxis.title,min:Math.min(r,t),max:Math.max(i,n)}}t(de,`setYAxisRangeFromPlotData`);function Z(e){let t=[];if(e.length===0)return t;if(!V){let t=D(z.xAxis)?z.xAxis.min:1/0,n=D(z.xAxis)?z.xAxis.max:-1/0;X(Math.min(t,1),Math.max(n,e.length))}if(H||de(e),E(z.xAxis)&&(t=z.xAxis.categories.map((t,n)=>[t,e[n]])),D(z.xAxis)){let n=z.xAxis.min,r=z.xAxis.max,i=(r-n)/(e.length-1),a=[];for(let e=n;e<=r;e+=i)a.push(`${e}`);t=a.map((t,n)=>[t,e[n]])}return t}t(Z,`transformDataWithoutCategory`);function Q(e){return B[e===0?0:e%B.length]}t(Q,`getPlotColorFromPalette`);function fe(e,t){let n=Z(t);z.plots.push({type:`line`,strokeFill:Q(F),strokeWidth:2,data:n}),F++}t(fe,`setLineData`);function pe(e,t){let n=Z(t);z.plots.push({type:`bar`,fill:Q(F),data:n}),F++}t(pe,`setBarData`);function me(){if(z.plots.length===0)throw Error(`No Plot to render, please provide a plot with some data`);return z.title=d(),se.build(L,z,R,I)}t(me,`getDrawableElem`);function he(){return R}t(he,`getChartThemeConfig`);function ge(){return L}t(ge,`getChartConfig`);function $(){return z}t($,`getXYChartData`);var _e={parser:w,db:{getDrawableElem:me,clear:t(function(){o(),F=0,L=W(),z=G(),R=U(),B=R.plotColorPalette.split(`,`).map(e=>e.trim()),V=!1,H=!1},`clear`),setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:d,getAccDescription:u,setAccDescription:r,setOrientation:J,setXAxisTitle:Y,setXAxisRangeData:X,setXAxisBand:ce,setYAxisTitle:le,setYAxisRangeData:ue,setLineData:fe,setBarData:pe,setTmpSVGG:q,getChartThemeConfig:he,getChartConfig:ge,getXYChartData:$},renderer:{draw:t((n,r,i,a)=>{let o=a.db,s=o.getChartThemeConfig(),l=o.getChartConfig(),u=o.getXYChartData().plots[0].data.map(e=>e[1]);function d(e){return e===`top`?`text-before-edge`:`middle`}t(d,`getDominantBaseLine`);function f(e){return e===`left`?`start`:e===`right`?`end`:`middle`}t(f,`getTextAnchor`);function p(e){return`translate(${e.x}, ${e.y}) rotate(${e.rotation||0})`}t(p,`getTextTransformation`),e.debug(`Rendering xychart chart
|
|
7
|
-
`+n);let m=
|
|
8
|
-
//# sourceMappingURL=xychartDiagram-2RQKCTM6-
|
|
6
|
+
`+this.showPosition(),{text:``,token:null,line:this.yylineno})},`next`),lex:t(function(){return this.next()||this.lex()},`lex`),begin:t(function(e){this.conditionStack.push(e)},`begin`),popState:t(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},`popState`),_currentRules:t(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:t(function(e){return e=this.conditionStack.length-1-Math.abs(e||0),e>=0?this.conditionStack[e]:`INITIAL`},`topState`),pushState:t(function(e){this.begin(e)},`pushState`),stateStackSize:t(function(){return this.conditionStack.length},`stateStackSize`),options:{"case-insensitive":!0},performAction:t(function(e,t,n,r){switch(n){case 0:break;case 1:break;case 2:return this.popState(),34;case 3:return this.popState(),34;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState(`acc_title`),19;case 8:return this.popState(),`acc_title_value`;case 9:return this.pushState(`acc_descr`),21;case 10:return this.popState(),`acc_descr_value`;case 11:this.pushState(`acc_descr_multiline`);break;case 12:this.popState();break;case 13:return`acc_descr_multiline_value`;case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState(`axis_data`),`X_AXIS`;case 18:return this.pushState(`axis_data`),`Y_AXIS`;case 19:return this.pushState(`axis_band_data`),24;case 20:return 31;case 21:return this.pushState(`data`),16;case 22:return this.pushState(`data`),18;case 23:return this.pushState(`data_inner`),24;case 24:return 27;case 25:return this.popState(),26;case 26:this.popState();break;case 27:this.pushState(`string`);break;case 28:this.popState();break;case 29:return`STR`;case 30:return 24;case 31:return 26;case 32:return 43;case 33:return`COLON`;case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},`anonymous`),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}}})();function A(){this.yy={}}return t(A,`Parser`),A.prototype=k,k.Parser=A,new A})();b.parser=b;var x=b;function S(e){return e.type===`bar`}t(S,`isBarPlot`);function C(e){return e.type===`band`}t(C,`isBandAxisData`);function w(e){return e.type===`linear`}t(w,`isLinearAxisData`);var T=class{constructor(e){this.parentGroup=e}static{t(this,`TextDimensionCalculatorWithFont`)}getMaxDimension(e,t){if(!this.parentGroup)return{width:e.reduce((e,t)=>Math.max(t.length,e),0)*t,height:t};let n={width:0,height:0},r=this.parentGroup.append(`g`).attr(`visibility`,`hidden`).attr(`font-size`,t);for(let i of e){let e=_(r,1,i),a=e?e.width:i.length*t,o=e?e.height:t;n.width=Math.max(n.width,a),n.height=Math.max(n.height,o)}return r.remove(),n}},E=.7,D=.2,O=class{constructor(e,t,n,r){this.axisConfig=e,this.title=t,this.textDimensionCalculator=n,this.axisThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`,this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition=`left`}static{t(this,`BaseAxis`)}setRange(e){this.range=e,this.axisPosition===`left`||this.axisPosition===`right`?this.boundingRect.height=e[1]-e[0]:this.boundingRect.width=e[1]-e[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(e){this.axisPosition=e,this.setRange(this.range)}getTickDistance(){let e=this.getRange();return Math.abs(e[0]-e[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(e=>e.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){E*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor(E*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(e){let t=e.height;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=D*e.width;this.outerPadding=Math.min(n.width/2,r);let i=n.height+this.axisConfig.labelPadding*2;this.labelTextHeight=n.height,i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width,this.boundingRect.height=e.height-t}calculateSpaceIfDrawnVertical(e){let t=e.width;if(this.axisConfig.showAxisLine&&t>this.axisConfig.axisLineWidth&&(t-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let n=this.getLabelDimension(),r=D*e.height;this.outerPadding=Math.min(n.height/2,r);let i=n.width+this.axisConfig.labelPadding*2;i<=t&&(t-=i,this.showLabel=!0)}if(this.axisConfig.showTick&&t>=this.axisConfig.tickLength&&(this.showTick=!0,t-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),n=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,n<=t&&(t-=n,this.showTitle=!0)}this.boundingRect.width=e.width-t,this.boundingRect.height=e.height}calculateSpace(e){return this.axisPosition===`left`||this.axisPosition===`right`?this.calculateSpaceIfDrawnVertical(e):this.calculateSpaceIfDrawnHorizontally(e),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}getDrawableElementsForLeftAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`left-axis`,`axisl-line`],data:[{path:`M ${t},${this.boundingRect.y} L ${t},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`left-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(e),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`middle`,horizontalPos:`right`}))}),this.showTick){let t=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`left-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${t},${this.getScaleValue(e)} L ${t-this.axisConfig.tickLength},${this.getScaleValue(e)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`left-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForBottomAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`bottom-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`bottom-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);e.push({type:`path`,groupTexts:[`bottom-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t} L ${this.getScaleValue(e)},${t+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`bottom-axis`,`title`],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElementsForTopAxis(){let e=[];if(this.showAxisLine){let t=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;e.push({type:`path`,groupTexts:[`top-axis`,`axis-line`],data:[{path:`M ${this.boundingRect.x},${t} L ${this.boundingRect.x+this.boundingRect.width},${t}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&e.push({type:`text`,groupTexts:[`top-axis`,`label`],data:this.getTickValues().map(e=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}))}),this.showTick){let t=this.boundingRect.y;e.push({type:`path`,groupTexts:[`top-axis`,`ticks`],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${t+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(e)},${t+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&e.push({type:`text`,groupTexts:[`top-axis`,`title`],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:`top`,horizontalPos:`center`}]}),e}getDrawableElements(){if(this.axisPosition===`left`)return this.getDrawableElementsForLeftAxis();if(this.axisPosition===`right`)throw Error(`Drawing of right axis is not implemented`);return this.axisPosition===`bottom`?this.getDrawableElementsForBottomAxis():this.axisPosition===`top`?this.getDrawableElementsForTopAxis():[]}},k=class extends O{static{t(this,`BandAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.categories=n,this.scale=y().domain(this.categories).range(this.getRange())}setRange(e){super.setRange(e)}recalculateScale(){this.scale=y().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),e.trace(`BandAxis axis final categories, range: `,this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(e){return this.scale(e)??this.getRange()[0]}},A=class extends O{static{t(this,`LinearAxis`)}constructor(e,t,n,r,i){super(e,r,i,t),this.domain=n,this.scale=m().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let e=[...this.domain];this.axisPosition===`left`&&e.reverse(),this.scale=m().domain(e).range(this.getRange())}getScaleValue(e){return this.scale(e)}};function j(e,t,n,r){let i=new T(r);return C(e)?new k(t,n,e.categories,e.title,i):new A(t,n,[e.min,e.max],e.title,i)}t(j,`getAxis`);var M=class{constructor(e,t,n,r){this.textDimensionCalculator=e,this.chartConfig=t,this.chartData=n,this.chartThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{t(this,`ChartTitle`)}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){let t=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),n=Math.max(t.width,e.width),r=t.height+2*this.chartConfig.titlePadding;return t.width<=n&&t.height<=r&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=n,this.boundingRect.height=r,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let e=[];return this.showChartTitle&&e.push({groupTexts:[`chart-title`],type:`text`,data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:`middle`,horizontalPos:`center`,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),e}};function N(e,t,n,r){return new M(new T(r),e,t,n)}t(N,`getChartTitleComponent`);var ee=class{constructor(e,t,n,r,i){this.plotData=e,this.xAxis=t,this.yAxis=n,this.orientation=r,this.plotIndex=i}static{t(this,`LinePlot`)}getDrawableElement(){let e=this.plotData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t;return t=this.orientation===`horizontal`?g().y(e=>e[0]).x(e=>e[1])(e):g().x(e=>e[0]).y(e=>e[1])(e),t?[{groupTexts:[`plot`,`line-plot-${this.plotIndex}`],type:`path`,data:[{path:t,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},te=class{constructor(e,t,n,r,i,a){this.barData=e,this.boundingRect=t,this.xAxis=n,this.yAxis=r,this.orientation=i,this.plotIndex=a}static{t(this,`BarPlot`)}getDrawableElement(){let e=this.barData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),t=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*.95,n=t/2;return this.orientation===`horizontal`?[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:this.boundingRect.x,y:e[0]-n,height:t,width:e[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:[`plot`,`bar-plot-${this.plotIndex}`],type:`rect`,data:e.map(e=>({x:e[0]-n,y:e[1],width:t,height:this.boundingRect.y+this.boundingRect.height-e[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},ne=class{constructor(e,t,n){this.chartConfig=e,this.chartData=t,this.chartThemeConfig=n,this.boundingRect={x:0,y:0,width:0,height:0}}static{t(this,`BasePlot`)}setAxes(e,t){this.xAxis=e,this.yAxis=t}setBoundingBoxXY(e){this.boundingRect.x=e.x,this.boundingRect.y=e.y}calculateSpace(e){return this.boundingRect.width=e.width,this.boundingRect.height=e.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error(`Axes must be passed to render Plots`);let e=[];for(let[t,n]of this.chartData.plots.entries())switch(n.type){case`line`:{let r=new ee(n,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}break;case`bar`:{let r=new te(n,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,t);e.push(...r.getDrawableElement())}break}return e}};function re(e,t,n){return new ne(e,t,n)}t(re,`getPlotComponent`);var ie=class{constructor(e,t,n,r){this.chartConfig=e,this.chartData=t,this.componentStore={title:N(e,t,n,r),plot:re(e,t,n),xAxis:j(t.xAxis,e.xAxis,{titleColor:n.xAxisTitleColor,labelColor:n.xAxisLabelColor,tickColor:n.xAxisTickColor,axisLineColor:n.xAxisLineColor},r),yAxis:j(t.yAxis,e.yAxis,{titleColor:n.yAxisTitleColor,labelColor:n.yAxisLabelColor,tickColor:n.yAxisTickColor,axisLineColor:n.yAxisLineColor},r)}}static{t(this,`Orchestrator`)}calculateVerticalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),o=this.componentStore.plot.calculateSpace({width:i,height:a});e-=o.width,t-=o.height,o=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),r=o.height,t-=o.height,this.componentStore.xAxis.setAxisPosition(`bottom`),o=this.componentStore.xAxis.calculateSpace({width:e,height:t}),t-=o.height,this.componentStore.yAxis.setAxisPosition(`left`),o=this.componentStore.yAxis.calculateSpace({width:e,height:t}),n=o.width,e-=o.width,e>0&&(i+=e,e=0),t>0&&(a+=t,t=0),this.componentStore.plot.calculateSpace({width:i,height:a}),this.componentStore.plot.setBoundingBoxXY({x:n,y:r}),this.componentStore.xAxis.setRange([n,n+i]),this.componentStore.xAxis.setBoundingBoxXY({x:n,y:r+a}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some(e=>S(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let e=this.chartConfig.width,t=this.chartConfig.height,n=0,r=0,i=0,a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),o=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),s=this.componentStore.plot.calculateSpace({width:a,height:o});e-=s.width,t-=s.height,s=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:t}),n=s.height,t-=s.height,this.componentStore.xAxis.setAxisPosition(`left`),s=this.componentStore.xAxis.calculateSpace({width:e,height:t}),e-=s.width,r=s.width,this.componentStore.yAxis.setAxisPosition(`top`),s=this.componentStore.yAxis.calculateSpace({width:e,height:t}),t-=s.height,i=n+s.height,e>0&&(a+=e,e=0),t>0&&(o+=t,t=0),this.componentStore.plot.calculateSpace({width:a,height:o}),this.componentStore.plot.setBoundingBoxXY({x:r,y:i}),this.componentStore.yAxis.setRange([r,r+a]),this.componentStore.yAxis.setBoundingBoxXY({x:r,y:n}),this.componentStore.xAxis.setRange([i,i+o]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some(e=>S(e))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation===`horizontal`?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let e=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let t of Object.values(this.componentStore))e.push(...t.getDrawableElements());return e}},ae=class{static{t(this,`XYChartBuilder`)}static build(e,t,n,r){return new ie(e,t,n,r).getDrawableElement()}},P=0,F,I=U(),L=H(),R=W(),z=L.plotColorPalette.split(`,`).map(e=>e.trim()),B=!1,V=!1;function H(){let e=n(),t=s();return h(e.xyChart,t.themeVariables.xyChart)}t(H,`getChartDefaultThemeConfig`);function U(){let e=s();return h(l.xyChart,e.xyChart)}t(U,`getChartDefaultConfig`);function W(){return{yAxis:{type:`linear`,title:``,min:1/0,max:-1/0},xAxis:{type:`band`,title:``,categories:[]},title:``,plots:[]}}t(W,`getChartDefaultData`);function G(e){let t=s();return p(e.trim(),t)}t(G,`textSanitizer`);function K(e){F=e}t(K,`setTmpSVGG`);function q(e){e===`horizontal`?I.chartOrientation=`horizontal`:I.chartOrientation=`vertical`}t(q,`setOrientation`);function J(e){R.xAxis.title=G(e.text)}t(J,`setXAxisTitle`);function Y(e,t){R.xAxis={type:`linear`,title:R.xAxis.title,min:e,max:t},B=!0}t(Y,`setXAxisRangeData`);function X(e){R.xAxis={type:`band`,title:R.xAxis.title,categories:e.map(e=>G(e.text))},B=!0}t(X,`setXAxisBand`);function oe(e){R.yAxis.title=G(e.text)}t(oe,`setYAxisTitle`);function se(e,t){R.yAxis={type:`linear`,title:R.yAxis.title,min:e,max:t},V=!0}t(se,`setYAxisRangeData`);function ce(e){let t=Math.min(...e),n=Math.max(...e),r=w(R.yAxis)?R.yAxis.min:1/0,i=w(R.yAxis)?R.yAxis.max:-1/0;R.yAxis={type:`linear`,title:R.yAxis.title,min:Math.min(r,t),max:Math.max(i,n)}}t(ce,`setYAxisRangeFromPlotData`);function Z(e){let t=[];if(e.length===0)return t;if(!B){let t=w(R.xAxis)?R.xAxis.min:1/0,n=w(R.xAxis)?R.xAxis.max:-1/0;Y(Math.min(t,1),Math.max(n,e.length))}if(V||ce(e),C(R.xAxis)&&(t=R.xAxis.categories.map((t,n)=>[t,e[n]])),w(R.xAxis)){let n=R.xAxis.min,r=R.xAxis.max,i=(r-n)/(e.length-1),a=[];for(let e=n;e<=r;e+=i)a.push(`${e}`);t=a.map((t,n)=>[t,e[n]])}return t}t(Z,`transformDataWithoutCategory`);function Q(e){return z[e===0?0:e%z.length]}t(Q,`getPlotColorFromPalette`);function le(e,t){let n=Z(t);R.plots.push({type:`line`,strokeFill:Q(P),strokeWidth:2,data:n}),P++}t(le,`setLineData`);function $(e,t){let n=Z(t);R.plots.push({type:`bar`,fill:Q(P),data:n}),P++}t($,`setBarData`);function ue(){if(R.plots.length===0)throw Error(`No Plot to render, please provide a plot with some data`);return R.title=d(),ae.build(I,R,L,F)}t(ue,`getDrawableElem`);function de(){return L}t(de,`getChartThemeConfig`);function fe(){return I}t(fe,`getChartConfig`);function pe(){return R}t(pe,`getXYChartData`);var me={parser:x,db:{getDrawableElem:ue,clear:t(function(){o(),P=0,I=U(),R=W(),L=H(),z=L.plotColorPalette.split(`,`).map(e=>e.trim()),B=!1,V=!1},`clear`),setAccTitle:a,getAccTitle:f,setDiagramTitle:i,getDiagramTitle:d,getAccDescription:u,setAccDescription:r,setOrientation:q,setXAxisTitle:J,setXAxisRangeData:Y,setXAxisBand:X,setYAxisTitle:oe,setYAxisRangeData:se,setLineData:le,setBarData:$,setTmpSVGG:K,getChartThemeConfig:de,getChartConfig:fe,getXYChartData:pe},renderer:{draw:t((n,r,i,a)=>{let o=a.db,s=o.getChartThemeConfig(),l=o.getChartConfig(),u=o.getXYChartData().plots[0].data.map(e=>e[1]);function d(e){return e===`top`?`text-before-edge`:`middle`}t(d,`getDominantBaseLine`);function f(e){return e===`left`?`start`:e===`right`?`end`:`middle`}t(f,`getTextAnchor`);function p(e){return`translate(${e.x}, ${e.y}) rotate(${e.rotation||0})`}t(p,`getTextTransformation`),e.debug(`Rendering xychart chart
|
|
7
|
+
`+n);let m=v(r),h=m.append(`g`).attr(`class`,`main`),g=h.append(`rect`).attr(`width`,l.width).attr(`height`,l.height).attr(`class`,`background`);c(m,l.height,l.width,!0),m.attr(`viewBox`,`0 0 ${l.width} ${l.height}`),g.attr(`fill`,s.backgroundColor),o.setTmpSVGG(m.append(`g`).attr(`class`,`mermaid-tmp-group`));let _=o.getDrawableElem(),y={};function b(e){let t=h,n=``;for(let[r]of e.entries()){let i=h;r>0&&y[n]&&(i=y[n]),n+=e[r],t=y[n],t||=y[n]=i.append(`g`).attr(`class`,e[r])}return t}t(b,`getGroup`);for(let e of _){if(e.data.length===0)continue;let n=b(e.groupTexts);switch(e.type){case`rect`:if(n.selectAll(`rect`).data(e.data).enter().append(`rect`).attr(`x`,e=>e.x).attr(`y`,e=>e.y).attr(`width`,e=>e.width).attr(`height`,e=>e.height).attr(`fill`,e=>e.fill).attr(`stroke`,e=>e.strokeFill).attr(`stroke-width`,e=>e.strokeWidth),l.showDataLabel){let r=l.showDataLabelOutsideBar;if(l.chartOrientation===`horizontal`){let i=function(e,t){let{data:n,label:r}=e;return t*r.length*a<=n.width-o};t(i,`fitsHorizontally`);let a=.7,o=10,c=e.data.map((e,t)=>({data:e,label:u[t].toString()})).filter(e=>e.data.width>0&&e.data.height>0),l=c.map(e=>{let{data:t}=e,n=t.height*.7;for(;!i(e,n)&&n>0;)--n;return n}),d=Math.floor(Math.min(...l)),f=t(e=>r?e.data.x+e.data.width+10:e.data.x+e.data.width-10,`determineLabelXPosition`);n.selectAll(`text`).data(c).enter().append(`text`).attr(`x`,f).attr(`y`,e=>e.data.y+e.data.height/2).attr(`text-anchor`,r?`start`:`end`).attr(`dominant-baseline`,`middle`).attr(`fill`,s.dataLabelColor).attr(`font-size`,`${d}px`).text(e=>e.label)}else{let i=function(e,t,n){let{data:r,label:i}=e,a=t*i.length*.7,o=r.x+r.width/2,s=o-a/2,c=o+a/2,l=s>=r.x&&c<=r.x+r.width,u=r.y+n+t<=r.y+r.height;return l&&u};t(i,`fitsInBar`);let a=e.data.map((e,t)=>({data:e,label:u[t].toString()})).filter(e=>e.data.width>0&&e.data.height>0),o=a.map(e=>{let{data:t,label:n}=e,r=t.width/(n.length*.7);for(;!i(e,r,10)&&r>0;)--r;return r}),c=Math.floor(Math.min(...o)),l=t(e=>r?e.data.y-10:e.data.y+10,`determineLabelYPosition`);n.selectAll(`text`).data(a).enter().append(`text`).attr(`x`,e=>e.data.x+e.data.width/2).attr(`y`,l).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,r?`auto`:`hanging`).attr(`fill`,s.dataLabelColor).attr(`font-size`,`${c}px`).text(e=>e.label)}}break;case`text`:n.selectAll(`text`).data(e.data).enter().append(`text`).attr(`x`,0).attr(`y`,0).attr(`fill`,e=>e.fill).attr(`font-size`,e=>e.fontSize).attr(`dominant-baseline`,e=>d(e.verticalPos)).attr(`text-anchor`,e=>f(e.horizontalPos)).attr(`transform`,e=>p(e)).text(e=>e.text);break;case`path`:n.selectAll(`path`).data(e.data).enter().append(`path`).attr(`d`,e=>e.path).attr(`fill`,e=>e.fill?e.fill:`none`).attr(`stroke`,e=>e.strokeFill).attr(`stroke-width`,e=>e.strokeWidth);break}}},`draw`)}};export{me as diagram};
|
|
8
|
+
//# sourceMappingURL=xychartDiagram-2RQKCTM6-BCRK_Cs-.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xychartDiagram-2RQKCTM6-BCRK_Cs-.js","names":["scaleBand","scaleLinear","line","getThemeVariables"],"sources":["../../../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-2RQKCTM6.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-WU5MYG2G.mjs\";\nimport {\n computeDimensionOfText\n} from \"./chunk-O5CBEL6O.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n sanitizeText,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/xychart/parser/xychart.jison\nvar parser = (function() {\n var o = /* @__PURE__ */ __name(function(k, v, o2, l) {\n for (o2 = o2 || {}, l = k.length; l--; o2[k[l]] = v) ;\n return o2;\n }, \"o\"), $V0 = [1, 10, 12, 14, 16, 18, 19, 21, 23], $V1 = [2, 6], $V2 = [1, 3], $V3 = [1, 5], $V4 = [1, 6], $V5 = [1, 7], $V6 = [1, 5, 10, 12, 14, 16, 18, 19, 21, 23, 34, 35, 36], $V7 = [1, 25], $V8 = [1, 26], $V9 = [1, 28], $Va = [1, 29], $Vb = [1, 30], $Vc = [1, 31], $Vd = [1, 32], $Ve = [1, 33], $Vf = [1, 34], $Vg = [1, 35], $Vh = [1, 36], $Vi = [1, 37], $Vj = [1, 43], $Vk = [1, 42], $Vl = [1, 47], $Vm = [1, 50], $Vn = [1, 10, 12, 14, 16, 18, 19, 21, 23, 34, 35, 36], $Vo = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 27, 28, 34, 35, 36], $Vp = [1, 10, 12, 14, 16, 18, 19, 21, 23, 24, 26, 27, 28, 34, 35, 36, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], $Vq = [1, 64];\n var parser2 = {\n trace: /* @__PURE__ */ __name(function trace() {\n }, \"trace\"),\n yy: {},\n symbols_: { \"error\": 2, \"start\": 3, \"eol\": 4, \"XYCHART\": 5, \"chartConfig\": 6, \"document\": 7, \"CHART_ORIENTATION\": 8, \"statement\": 9, \"title\": 10, \"text\": 11, \"X_AXIS\": 12, \"parseXAxis\": 13, \"Y_AXIS\": 14, \"parseYAxis\": 15, \"LINE\": 16, \"plotData\": 17, \"BAR\": 18, \"acc_title\": 19, \"acc_title_value\": 20, \"acc_descr\": 21, \"acc_descr_value\": 22, \"acc_descr_multiline_value\": 23, \"SQUARE_BRACES_START\": 24, \"commaSeparatedNumbers\": 25, \"SQUARE_BRACES_END\": 26, \"NUMBER_WITH_DECIMAL\": 27, \"COMMA\": 28, \"xAxisData\": 29, \"bandData\": 30, \"ARROW_DELIMITER\": 31, \"commaSeparatedTexts\": 32, \"yAxisData\": 33, \"NEWLINE\": 34, \"SEMI\": 35, \"EOF\": 36, \"alphaNum\": 37, \"STR\": 38, \"MD_STR\": 39, \"alphaNumToken\": 40, \"AMP\": 41, \"NUM\": 42, \"ALPHA\": 43, \"PLUS\": 44, \"EQUALS\": 45, \"MULT\": 46, \"DOT\": 47, \"BRKT\": 48, \"MINUS\": 49, \"UNDERSCORE\": 50, \"$accept\": 0, \"$end\": 1 },\n terminals_: { 2: \"error\", 5: \"XYCHART\", 8: \"CHART_ORIENTATION\", 10: \"title\", 12: \"X_AXIS\", 14: \"Y_AXIS\", 16: \"LINE\", 18: \"BAR\", 19: \"acc_title\", 20: \"acc_title_value\", 21: \"acc_descr\", 22: \"acc_descr_value\", 23: \"acc_descr_multiline_value\", 24: \"SQUARE_BRACES_START\", 26: \"SQUARE_BRACES_END\", 27: \"NUMBER_WITH_DECIMAL\", 28: \"COMMA\", 31: \"ARROW_DELIMITER\", 34: \"NEWLINE\", 35: \"SEMI\", 36: \"EOF\", 38: \"STR\", 39: \"MD_STR\", 41: \"AMP\", 42: \"NUM\", 43: \"ALPHA\", 44: \"PLUS\", 45: \"EQUALS\", 46: \"MULT\", 47: \"DOT\", 48: \"BRKT\", 49: \"MINUS\", 50: \"UNDERSCORE\" },\n productions_: [0, [3, 2], [3, 3], [3, 2], [3, 1], [6, 1], [7, 0], [7, 2], [9, 2], [9, 2], [9, 2], [9, 2], [9, 2], [9, 3], [9, 2], [9, 3], [9, 2], [9, 2], [9, 1], [17, 3], [25, 3], [25, 1], [13, 1], [13, 2], [13, 1], [29, 1], [29, 3], [30, 3], [32, 3], [32, 1], [15, 1], [15, 2], [15, 1], [33, 3], [4, 1], [4, 1], [4, 1], [11, 1], [11, 1], [11, 1], [37, 1], [37, 2], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1], [40, 1]],\n performAction: /* @__PURE__ */ __name(function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$) {\n var $0 = $$.length - 1;\n switch (yystate) {\n case 5:\n yy.setOrientation($$[$0]);\n break;\n case 9:\n yy.setDiagramTitle($$[$0].text.trim());\n break;\n case 12:\n yy.setLineData({ text: \"\", type: \"text\" }, $$[$0]);\n break;\n case 13:\n yy.setLineData($$[$0 - 1], $$[$0]);\n break;\n case 14:\n yy.setBarData({ text: \"\", type: \"text\" }, $$[$0]);\n break;\n case 15:\n yy.setBarData($$[$0 - 1], $$[$0]);\n break;\n case 16:\n this.$ = $$[$0].trim();\n yy.setAccTitle(this.$);\n break;\n case 17:\n case 18:\n this.$ = $$[$0].trim();\n yy.setAccDescription(this.$);\n break;\n case 19:\n this.$ = $$[$0 - 1];\n break;\n case 20:\n this.$ = [Number($$[$0 - 2]), ...$$[$0]];\n break;\n case 21:\n this.$ = [Number($$[$0])];\n break;\n case 22:\n yy.setXAxisTitle($$[$0]);\n break;\n case 23:\n yy.setXAxisTitle($$[$0 - 1]);\n break;\n case 24:\n yy.setXAxisTitle({ type: \"text\", text: \"\" });\n break;\n case 25:\n yy.setXAxisBand($$[$0]);\n break;\n case 26:\n yy.setXAxisRangeData(Number($$[$0 - 2]), Number($$[$0]));\n break;\n case 27:\n this.$ = $$[$0 - 1];\n break;\n case 28:\n this.$ = [$$[$0 - 2], ...$$[$0]];\n break;\n case 29:\n this.$ = [$$[$0]];\n break;\n case 30:\n yy.setYAxisTitle($$[$0]);\n break;\n case 31:\n yy.setYAxisTitle($$[$0 - 1]);\n break;\n case 32:\n yy.setYAxisTitle({ type: \"text\", text: \"\" });\n break;\n case 33:\n yy.setYAxisRangeData(Number($$[$0 - 2]), Number($$[$0]));\n break;\n case 37:\n this.$ = { text: $$[$0], type: \"text\" };\n break;\n case 38:\n this.$ = { text: $$[$0], type: \"text\" };\n break;\n case 39:\n this.$ = { text: $$[$0], type: \"markdown\" };\n break;\n case 40:\n this.$ = $$[$0];\n break;\n case 41:\n this.$ = $$[$0 - 1] + \"\" + $$[$0];\n break;\n }\n }, \"anonymous\"),\n table: [o($V0, $V1, { 3: 1, 4: 2, 7: 4, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), { 1: [3] }, o($V0, $V1, { 4: 2, 7: 4, 3: 8, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), o($V0, $V1, { 4: 2, 7: 4, 6: 9, 3: 10, 5: $V2, 8: [1, 11], 34: $V3, 35: $V4, 36: $V5 }), { 1: [2, 4], 9: 12, 10: [1, 13], 12: [1, 14], 14: [1, 15], 16: [1, 16], 18: [1, 17], 19: [1, 18], 21: [1, 19], 23: [1, 20] }, o($V6, [2, 34]), o($V6, [2, 35]), o($V6, [2, 36]), { 1: [2, 1] }, o($V0, $V1, { 4: 2, 7: 4, 3: 21, 5: $V2, 34: $V3, 35: $V4, 36: $V5 }), { 1: [2, 3] }, o($V6, [2, 5]), o($V0, [2, 7], { 4: 22, 34: $V3, 35: $V4, 36: $V5 }), { 11: 23, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 39, 13: 38, 24: $Vj, 27: $Vk, 29: 40, 30: 41, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 45, 15: 44, 27: $Vl, 33: 46, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 49, 17: 48, 24: $Vm, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 11: 52, 17: 51, 24: $Vm, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, { 20: [1, 53] }, { 22: [1, 54] }, o($Vn, [2, 18]), { 1: [2, 2] }, o($Vn, [2, 8]), o($Vn, [2, 9]), o($Vo, [2, 37], { 40: 55, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }), o($Vo, [2, 38]), o($Vo, [2, 39]), o($Vp, [2, 40]), o($Vp, [2, 42]), o($Vp, [2, 43]), o($Vp, [2, 44]), o($Vp, [2, 45]), o($Vp, [2, 46]), o($Vp, [2, 47]), o($Vp, [2, 48]), o($Vp, [2, 49]), o($Vp, [2, 50]), o($Vp, [2, 51]), o($Vn, [2, 10]), o($Vn, [2, 22], { 30: 41, 29: 56, 24: $Vj, 27: $Vk }), o($Vn, [2, 24]), o($Vn, [2, 25]), { 31: [1, 57] }, { 11: 59, 32: 58, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, o($Vn, [2, 11]), o($Vn, [2, 30], { 33: 60, 27: $Vl }), o($Vn, [2, 32]), { 31: [1, 61] }, o($Vn, [2, 12]), { 17: 62, 24: $Vm }, { 25: 63, 27: $Vq }, o($Vn, [2, 14]), { 17: 65, 24: $Vm }, o($Vn, [2, 16]), o($Vn, [2, 17]), o($Vp, [2, 41]), o($Vn, [2, 23]), { 27: [1, 66] }, { 26: [1, 67] }, { 26: [2, 29], 28: [1, 68] }, o($Vn, [2, 31]), { 27: [1, 69] }, o($Vn, [2, 13]), { 26: [1, 70] }, { 26: [2, 21], 28: [1, 71] }, o($Vn, [2, 15]), o($Vn, [2, 26]), o($Vn, [2, 27]), { 11: 59, 32: 72, 37: 24, 38: $V7, 39: $V8, 40: 27, 41: $V9, 42: $Va, 43: $Vb, 44: $Vc, 45: $Vd, 46: $Ve, 47: $Vf, 48: $Vg, 49: $Vh, 50: $Vi }, o($Vn, [2, 33]), o($Vn, [2, 19]), { 25: 73, 27: $Vq }, { 26: [2, 28] }, { 26: [2, 20] }],\n defaultActions: { 8: [2, 1], 10: [2, 3], 21: [2, 2], 72: [2, 28], 73: [2, 20] },\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (hash.recoverable) {\n this.trace(str);\n } else {\n var error = new Error(str);\n error.hash = hash;\n throw error;\n }\n }, \"parseError\"),\n parse: /* @__PURE__ */ __name(function parse(input) {\n var self = this, stack = [0], tstack = [], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n var args = lstack.slice.call(arguments, 1);\n var lexer2 = Object.create(this.lexer);\n var sharedState = { yy: {} };\n for (var k in this.yy) {\n if (Object.prototype.hasOwnProperty.call(this.yy, k)) {\n sharedState.yy[k] = this.yy[k];\n }\n }\n lexer2.setInput(input, sharedState.yy);\n sharedState.yy.lexer = lexer2;\n sharedState.yy.parser = this;\n if (typeof lexer2.yylloc == \"undefined\") {\n lexer2.yylloc = {};\n }\n var yyloc = lexer2.yylloc;\n lstack.push(yyloc);\n var ranges = lexer2.options && lexer2.options.ranges;\n if (typeof sharedState.yy.parseError === \"function\") {\n this.parseError = sharedState.yy.parseError;\n } else {\n this.parseError = Object.getPrototypeOf(this).parseError;\n }\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n __name(popStack, \"popStack\");\n function lex() {\n var token;\n token = tstack.pop() || lexer2.lex() || EOF;\n if (typeof token !== \"number\") {\n if (token instanceof Array) {\n tstack = token;\n token = tstack.pop();\n }\n token = self.symbols_[token] || token;\n }\n return token;\n }\n __name(lex, \"lex\");\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n expected = [];\n for (p in table[state]) {\n if (this.terminals_[p] && p > TERROR) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n }\n if (lexer2.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + lexer2.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == EOF ? \"end of input\" : \"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {\n text: lexer2.match,\n token: this.terminals_[symbol] || symbol,\n line: lexer2.yylineno,\n loc: yyloc,\n expected\n });\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(lexer2.yytext);\n lstack.push(lexer2.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = lexer2.yyleng;\n yytext = lexer2.yytext;\n yylineno = lexer2.yylineno;\n yyloc = lexer2.yylloc;\n if (recovering > 0) {\n recovering--;\n }\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {\n first_line: lstack[lstack.length - (len || 1)].first_line,\n last_line: lstack[lstack.length - 1].last_line,\n first_column: lstack[lstack.length - (len || 1)].first_column,\n last_column: lstack[lstack.length - 1].last_column\n };\n if (ranges) {\n yyval._$.range = [\n lstack[lstack.length - (len || 1)].range[0],\n lstack[lstack.length - 1].range[1]\n ];\n }\n r = this.performAction.apply(yyval, [\n yytext,\n yyleng,\n yylineno,\n sharedState.yy,\n action[1],\n vstack,\n lstack\n ].concat(args));\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n }, \"parse\")\n };\n var lexer = /* @__PURE__ */ (function() {\n var lexer2 = {\n EOF: 1,\n parseError: /* @__PURE__ */ __name(function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n }, \"parseError\"),\n // resets the lexer, sets new input\n setInput: /* @__PURE__ */ __name(function(input, yy) {\n this.yy = yy || this.yy || {};\n this._input = input;\n this._more = this._backtrack = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = \"\";\n this.conditionStack = [\"INITIAL\"];\n this.yylloc = {\n first_line: 1,\n first_column: 0,\n last_line: 1,\n last_column: 0\n };\n if (this.options.ranges) {\n this.yylloc.range = [0, 0];\n }\n this.offset = 0;\n return this;\n }, \"setInput\"),\n // consumes and returns one char from the input\n input: /* @__PURE__ */ __name(function() {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) {\n this.yylloc.range[1]++;\n }\n this._input = this._input.slice(1);\n return ch;\n }, \"input\"),\n // unshifts one char (or a string) into the input\n unput: /* @__PURE__ */ __name(function(ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length - len);\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length - 1);\n this.matched = this.matched.substr(0, this.matched.length - 1);\n if (lines.length - 1) {\n this.yylineno -= lines.length - 1;\n }\n var r = this.yylloc.range;\n this.yylloc = {\n first_line: this.yylloc.first_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.first_column,\n last_column: lines ? (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length : this.yylloc.first_column - len\n };\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n this.yyleng = this.yytext.length;\n return this;\n }, \"unput\"),\n // When called from action, caches matched text and appends it on next action\n more: /* @__PURE__ */ __name(function() {\n this._more = true;\n return this;\n }, \"more\"),\n // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.\n reject: /* @__PURE__ */ __name(function() {\n if (this.options.backtrack_lexer) {\n this._backtrack = true;\n } else {\n 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).\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n return this;\n }, \"reject\"),\n // retain first n characters of the match\n less: /* @__PURE__ */ __name(function(n) {\n this.unput(this.match.slice(n));\n }, \"less\"),\n // displays already matched input, i.e. for error messages\n pastInput: /* @__PURE__ */ __name(function() {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? \"...\" : \"\") + past.substr(-20).replace(/\\n/g, \"\");\n }, \"pastInput\"),\n // displays upcoming input, i.e. for error messages\n upcomingInput: /* @__PURE__ */ __name(function() {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20 - next.length);\n }\n return (next.substr(0, 20) + (next.length > 20 ? \"...\" : \"\")).replace(/\\n/g, \"\");\n }, \"upcomingInput\"),\n // displays the character position where the lexing error occurred, i.e. for error messages\n showPosition: /* @__PURE__ */ __name(function() {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c + \"^\";\n }, \"showPosition\"),\n // test the lexed token: return FALSE when not a match, otherwise return token\n test_match: /* @__PURE__ */ __name(function(match, indexed_rule) {\n var token, lines, backup;\n if (this.options.backtrack_lexer) {\n backup = {\n yylineno: this.yylineno,\n yylloc: {\n first_line: this.yylloc.first_line,\n last_line: this.last_line,\n first_column: this.yylloc.first_column,\n last_column: this.yylloc.last_column\n },\n yytext: this.yytext,\n match: this.match,\n matches: this.matches,\n matched: this.matched,\n yyleng: this.yyleng,\n offset: this.offset,\n _more: this._more,\n _input: this._input,\n yy: this.yy,\n conditionStack: this.conditionStack.slice(0),\n done: this.done\n };\n if (this.options.ranges) {\n backup.yylloc.range = this.yylloc.range.slice(0);\n }\n }\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno += lines.length;\n }\n this.yylloc = {\n first_line: this.yylloc.last_line,\n last_line: this.yylineno + 1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length - 1].length - lines[lines.length - 1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length\n };\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._backtrack = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, indexed_rule, this.conditionStack[this.conditionStack.length - 1]);\n if (this.done && this._input) {\n this.done = false;\n }\n if (token) {\n return token;\n } else if (this._backtrack) {\n for (var k in backup) {\n this[k] = backup[k];\n }\n return false;\n }\n return false;\n }, \"test_match\"),\n // return next match in input\n next: /* @__PURE__ */ __name(function() {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) {\n this.done = true;\n }\n var token, match, tempMatch, index;\n if (!this._more) {\n this.yytext = \"\";\n this.match = \"\";\n }\n var rules = this._currentRules();\n for (var i = 0; i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (this.options.backtrack_lexer) {\n token = this.test_match(tempMatch, rules[i]);\n if (token !== false) {\n return token;\n } else if (this._backtrack) {\n match = false;\n continue;\n } else {\n return false;\n }\n } else if (!this.options.flex) {\n break;\n }\n }\n }\n if (match) {\n token = this.test_match(match, rules[index]);\n if (token !== false) {\n return token;\n }\n return false;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError(\"Lexical error on line \" + (this.yylineno + 1) + \". Unrecognized text.\\n\" + this.showPosition(), {\n text: \"\",\n token: null,\n line: this.yylineno\n });\n }\n }, \"next\"),\n // return next match that has a token\n lex: /* @__PURE__ */ __name(function lex() {\n var r = this.next();\n if (r) {\n return r;\n } else {\n return this.lex();\n }\n }, \"lex\"),\n // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)\n begin: /* @__PURE__ */ __name(function begin(condition) {\n this.conditionStack.push(condition);\n }, \"begin\"),\n // pop the previously active lexer condition state off the condition stack\n popState: /* @__PURE__ */ __name(function popState() {\n var n = this.conditionStack.length - 1;\n if (n > 0) {\n return this.conditionStack.pop();\n } else {\n return this.conditionStack[0];\n }\n }, \"popState\"),\n // produce the lexer rule set which is active for the currently active lexer condition state\n _currentRules: /* @__PURE__ */ __name(function _currentRules() {\n if (this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1]) {\n return this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules;\n } else {\n return this.conditions[\"INITIAL\"].rules;\n }\n }, \"_currentRules\"),\n // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available\n topState: /* @__PURE__ */ __name(function topState(n) {\n n = this.conditionStack.length - 1 - Math.abs(n || 0);\n if (n >= 0) {\n return this.conditionStack[n];\n } else {\n return \"INITIAL\";\n }\n }, \"topState\"),\n // alias for begin(condition)\n pushState: /* @__PURE__ */ __name(function pushState(condition) {\n this.begin(condition);\n }, \"pushState\"),\n // return the number of states currently on the stack\n stateStackSize: /* @__PURE__ */ __name(function stateStackSize() {\n return this.conditionStack.length;\n }, \"stateStackSize\"),\n options: { \"case-insensitive\": true },\n performAction: /* @__PURE__ */ __name(function anonymous(yy, yy_, $avoiding_name_collisions, YY_START) {\n var YYSTATE = YY_START;\n switch ($avoiding_name_collisions) {\n case 0:\n break;\n case 1:\n break;\n case 2:\n this.popState();\n return 34;\n break;\n case 3:\n this.popState();\n return 34;\n break;\n case 4:\n return 34;\n break;\n case 5:\n break;\n case 6:\n return 10;\n break;\n case 7:\n this.pushState(\"acc_title\");\n return 19;\n break;\n case 8:\n this.popState();\n return \"acc_title_value\";\n break;\n case 9:\n this.pushState(\"acc_descr\");\n return 21;\n break;\n case 10:\n this.popState();\n return \"acc_descr_value\";\n break;\n case 11:\n this.pushState(\"acc_descr_multiline\");\n break;\n case 12:\n this.popState();\n break;\n case 13:\n return \"acc_descr_multiline_value\";\n break;\n case 14:\n return 5;\n break;\n case 15:\n return 5;\n break;\n case 16:\n return 8;\n break;\n case 17:\n this.pushState(\"axis_data\");\n return \"X_AXIS\";\n break;\n case 18:\n this.pushState(\"axis_data\");\n return \"Y_AXIS\";\n break;\n case 19:\n this.pushState(\"axis_band_data\");\n return 24;\n break;\n case 20:\n return 31;\n break;\n case 21:\n this.pushState(\"data\");\n return 16;\n break;\n case 22:\n this.pushState(\"data\");\n return 18;\n break;\n case 23:\n this.pushState(\"data_inner\");\n return 24;\n break;\n case 24:\n return 27;\n break;\n case 25:\n this.popState();\n return 26;\n break;\n case 26:\n this.popState();\n break;\n case 27:\n this.pushState(\"string\");\n break;\n case 28:\n this.popState();\n break;\n case 29:\n return \"STR\";\n break;\n case 30:\n return 24;\n break;\n case 31:\n return 26;\n break;\n case 32:\n return 43;\n break;\n case 33:\n return \"COLON\";\n break;\n case 34:\n return 44;\n break;\n case 35:\n return 28;\n break;\n case 36:\n return 45;\n break;\n case 37:\n return 46;\n break;\n case 38:\n return 48;\n break;\n case 39:\n return 50;\n break;\n case 40:\n return 47;\n break;\n case 41:\n return 41;\n break;\n case 42:\n return 49;\n break;\n case 43:\n return 42;\n break;\n case 44:\n break;\n case 45:\n return 35;\n break;\n case 46:\n return 36;\n break;\n }\n }, \"anonymous\"),\n rules: [/^(?:%%(?!\\{)[^\\n]*)/i, /^(?:[^\\}]%%[^\\n]*)/i, /^(?:(\\r?\\n))/i, /^(?:(\\r?\\n))/i, /^(?:[\\n\\r]+)/i, /^(?:%%[^\\n]*)/i, /^(?:title\\b)/i, /^(?:accTitle\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*:\\s*)/i, /^(?:(?!\\n||)*[^\\n]*)/i, /^(?:accDescr\\s*\\{\\s*)/i, /^(?:\\})/i, /^(?:[^\\}]*)/i, /^(?:xychart-beta\\b)/i, /^(?:xychart\\b)/i, /^(?:(?:vertical|horizontal))/i, /^(?:x-axis\\b)/i, /^(?:y-axis\\b)/i, /^(?:\\[)/i, /^(?:-->)/i, /^(?:line\\b)/i, /^(?:bar\\b)/i, /^(?:\\[)/i, /^(?:[+-]?(?:\\d+(?:\\.\\d+)?|\\.\\d+))/i, /^(?:\\])/i, /^(?:(?:`\\) \\{ this\\.pushState\\(md_string\\); \\}\\n<md_string>\\(\\?:\\(\\?!`\"\\)\\.\\)\\+ \\{ return MD_STR; \\}\\n<md_string>\\(\\?:`))/i, /^(?:[\"])/i, /^(?:[\"])/i, /^(?:[^\"]*)/i, /^(?:\\[)/i, /^(?:\\])/i, /^(?:[A-Za-z]+)/i, /^(?::)/i, /^(?:\\+)/i, /^(?:,)/i, /^(?:=)/i, /^(?:\\*)/i, /^(?:#)/i, /^(?:[\\_])/i, /^(?:\\.)/i, /^(?:&)/i, /^(?:-)/i, /^(?:[0-9]+)/i, /^(?:\\s+)/i, /^(?:;)/i, /^(?:$)/i],\n conditions: { \"data_inner\": { \"rules\": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 21, 22, 24, 25, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], \"inclusive\": true }, \"data\": { \"rules\": [0, 1, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 21, 22, 23, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], \"inclusive\": true }, \"axis_band_data\": { \"rules\": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 21, 22, 25, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], \"inclusive\": true }, \"axis_data\": { \"rules\": [0, 1, 2, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], \"inclusive\": true }, \"acc_descr_multiline\": { \"rules\": [12, 13], \"inclusive\": false }, \"acc_descr\": { \"rules\": [10], \"inclusive\": false }, \"acc_title\": { \"rules\": [8], \"inclusive\": false }, \"title\": { \"rules\": [], \"inclusive\": false }, \"md_string\": { \"rules\": [], \"inclusive\": false }, \"string\": { \"rules\": [28, 29], \"inclusive\": false }, \"INITIAL\": { \"rules\": [0, 1, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 21, 22, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46], \"inclusive\": true } }\n };\n return lexer2;\n })();\n parser2.lexer = lexer;\n function Parser() {\n this.yy = {};\n }\n __name(Parser, \"Parser\");\n Parser.prototype = parser2;\n parser2.Parser = Parser;\n return new Parser();\n})();\nparser.parser = parser;\nvar xychart_default = parser;\n\n// src/diagrams/xychart/chartBuilder/interfaces.ts\nfunction isBarPlot(data) {\n return data.type === \"bar\";\n}\n__name(isBarPlot, \"isBarPlot\");\nfunction isBandAxisData(data) {\n return data.type === \"band\";\n}\n__name(isBandAxisData, \"isBandAxisData\");\nfunction isLinearAxisData(data) {\n return data.type === \"linear\";\n}\n__name(isLinearAxisData, \"isLinearAxisData\");\n\n// src/diagrams/xychart/chartBuilder/textDimensionCalculator.ts\nvar TextDimensionCalculatorWithFont = class {\n constructor(parentGroup) {\n this.parentGroup = parentGroup;\n }\n static {\n __name(this, \"TextDimensionCalculatorWithFont\");\n }\n getMaxDimension(texts, fontSize) {\n if (!this.parentGroup) {\n return {\n width: texts.reduce((acc, cur) => Math.max(cur.length, acc), 0) * fontSize,\n height: fontSize\n };\n }\n const dimension = {\n width: 0,\n height: 0\n };\n const elem = this.parentGroup.append(\"g\").attr(\"visibility\", \"hidden\").attr(\"font-size\", fontSize);\n for (const t of texts) {\n const bbox = computeDimensionOfText(elem, 1, t);\n const width = bbox ? bbox.width : t.length * fontSize;\n const height = bbox ? bbox.height : fontSize;\n dimension.width = Math.max(dimension.width, width);\n dimension.height = Math.max(dimension.height, height);\n }\n elem.remove();\n return dimension;\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/axis/bandAxis.ts\nimport { scaleBand } from \"d3\";\n\n// src/diagrams/xychart/chartBuilder/components/axis/baseAxis.ts\nvar BAR_WIDTH_TO_TICK_WIDTH_RATIO = 0.7;\nvar MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL = 0.2;\nvar BaseAxis = class {\n constructor(axisConfig, title, textDimensionCalculator, axisThemeConfig) {\n this.axisConfig = axisConfig;\n this.title = title;\n this.textDimensionCalculator = textDimensionCalculator;\n this.axisThemeConfig = axisThemeConfig;\n this.boundingRect = { x: 0, y: 0, width: 0, height: 0 };\n this.axisPosition = \"left\";\n this.showTitle = false;\n this.showLabel = false;\n this.showTick = false;\n this.showAxisLine = false;\n this.outerPadding = 0;\n this.titleTextHeight = 0;\n this.labelTextHeight = 0;\n this.range = [0, 10];\n this.boundingRect = { x: 0, y: 0, width: 0, height: 0 };\n this.axisPosition = \"left\";\n }\n static {\n __name(this, \"BaseAxis\");\n }\n setRange(range) {\n this.range = range;\n if (this.axisPosition === \"left\" || this.axisPosition === \"right\") {\n this.boundingRect.height = range[1] - range[0];\n } else {\n this.boundingRect.width = range[1] - range[0];\n }\n this.recalculateScale();\n }\n getRange() {\n return [this.range[0] + this.outerPadding, this.range[1] - this.outerPadding];\n }\n setAxisPosition(axisPosition) {\n this.axisPosition = axisPosition;\n this.setRange(this.range);\n }\n getTickDistance() {\n const range = this.getRange();\n return Math.abs(range[0] - range[1]) / this.getTickValues().length;\n }\n getAxisOuterPadding() {\n return this.outerPadding;\n }\n getLabelDimension() {\n return this.textDimensionCalculator.getMaxDimension(\n this.getTickValues().map((tick) => tick.toString()),\n this.axisConfig.labelFontSize\n );\n }\n recalculateOuterPaddingToDrawBar() {\n if (BAR_WIDTH_TO_TICK_WIDTH_RATIO * this.getTickDistance() > this.outerPadding * 2) {\n this.outerPadding = Math.floor(BAR_WIDTH_TO_TICK_WIDTH_RATIO * this.getTickDistance() / 2);\n }\n this.recalculateScale();\n }\n calculateSpaceIfDrawnHorizontally(availableSpace) {\n let availableHeight = availableSpace.height;\n if (this.axisConfig.showAxisLine && availableHeight > this.axisConfig.axisLineWidth) {\n availableHeight -= this.axisConfig.axisLineWidth;\n this.showAxisLine = true;\n }\n if (this.axisConfig.showLabel) {\n const spaceRequired = this.getLabelDimension();\n const maxPadding = MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL * availableSpace.width;\n this.outerPadding = Math.min(spaceRequired.width / 2, maxPadding);\n const heightRequired = spaceRequired.height + this.axisConfig.labelPadding * 2;\n this.labelTextHeight = spaceRequired.height;\n if (heightRequired <= availableHeight) {\n availableHeight -= heightRequired;\n this.showLabel = true;\n }\n }\n if (this.axisConfig.showTick && availableHeight >= this.axisConfig.tickLength) {\n this.showTick = true;\n availableHeight -= this.axisConfig.tickLength;\n }\n if (this.axisConfig.showTitle && this.title) {\n const spaceRequired = this.textDimensionCalculator.getMaxDimension(\n [this.title],\n this.axisConfig.titleFontSize\n );\n const heightRequired = spaceRequired.height + this.axisConfig.titlePadding * 2;\n this.titleTextHeight = spaceRequired.height;\n if (heightRequired <= availableHeight) {\n availableHeight -= heightRequired;\n this.showTitle = true;\n }\n }\n this.boundingRect.width = availableSpace.width;\n this.boundingRect.height = availableSpace.height - availableHeight;\n }\n calculateSpaceIfDrawnVertical(availableSpace) {\n let availableWidth = availableSpace.width;\n if (this.axisConfig.showAxisLine && availableWidth > this.axisConfig.axisLineWidth) {\n availableWidth -= this.axisConfig.axisLineWidth;\n this.showAxisLine = true;\n }\n if (this.axisConfig.showLabel) {\n const spaceRequired = this.getLabelDimension();\n const maxPadding = MAX_OUTER_PADDING_PERCENT_FOR_WRT_LABEL * availableSpace.height;\n this.outerPadding = Math.min(spaceRequired.height / 2, maxPadding);\n const widthRequired = spaceRequired.width + this.axisConfig.labelPadding * 2;\n if (widthRequired <= availableWidth) {\n availableWidth -= widthRequired;\n this.showLabel = true;\n }\n }\n if (this.axisConfig.showTick && availableWidth >= this.axisConfig.tickLength) {\n this.showTick = true;\n availableWidth -= this.axisConfig.tickLength;\n }\n if (this.axisConfig.showTitle && this.title) {\n const spaceRequired = this.textDimensionCalculator.getMaxDimension(\n [this.title],\n this.axisConfig.titleFontSize\n );\n const widthRequired = spaceRequired.height + this.axisConfig.titlePadding * 2;\n this.titleTextHeight = spaceRequired.height;\n if (widthRequired <= availableWidth) {\n availableWidth -= widthRequired;\n this.showTitle = true;\n }\n }\n this.boundingRect.width = availableSpace.width - availableWidth;\n this.boundingRect.height = availableSpace.height;\n }\n calculateSpace(availableSpace) {\n if (this.axisPosition === \"left\" || this.axisPosition === \"right\") {\n this.calculateSpaceIfDrawnVertical(availableSpace);\n } else {\n this.calculateSpaceIfDrawnHorizontally(availableSpace);\n }\n this.recalculateScale();\n return {\n width: this.boundingRect.width,\n height: this.boundingRect.height\n };\n }\n setBoundingBoxXY(point) {\n this.boundingRect.x = point.x;\n this.boundingRect.y = point.y;\n }\n getDrawableElementsForLeftAxis() {\n const drawableElement = [];\n if (this.showAxisLine) {\n const x = this.boundingRect.x + this.boundingRect.width - this.axisConfig.axisLineWidth / 2;\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"left-axis\", \"axisl-line\"],\n data: [\n {\n path: `M ${x},${this.boundingRect.y} L ${x},${this.boundingRect.y + this.boundingRect.height} `,\n strokeFill: this.axisThemeConfig.axisLineColor,\n strokeWidth: this.axisConfig.axisLineWidth\n }\n ]\n });\n }\n if (this.showLabel) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"left-axis\", \"label\"],\n data: this.getTickValues().map((tick) => ({\n text: tick.toString(),\n x: this.boundingRect.x + this.boundingRect.width - (this.showLabel ? this.axisConfig.labelPadding : 0) - (this.showTick ? this.axisConfig.tickLength : 0) - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0),\n y: this.getScaleValue(tick),\n fill: this.axisThemeConfig.labelColor,\n fontSize: this.axisConfig.labelFontSize,\n rotation: 0,\n verticalPos: \"middle\",\n horizontalPos: \"right\"\n }))\n });\n }\n if (this.showTick) {\n const x = this.boundingRect.x + this.boundingRect.width - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0);\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"left-axis\", \"ticks\"],\n data: this.getTickValues().map((tick) => ({\n path: `M ${x},${this.getScaleValue(tick)} L ${x - this.axisConfig.tickLength},${this.getScaleValue(tick)}`,\n strokeFill: this.axisThemeConfig.tickColor,\n strokeWidth: this.axisConfig.tickWidth\n }))\n });\n }\n if (this.showTitle) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"left-axis\", \"title\"],\n data: [\n {\n text: this.title,\n x: this.boundingRect.x + this.axisConfig.titlePadding,\n y: this.boundingRect.y + this.boundingRect.height / 2,\n fill: this.axisThemeConfig.titleColor,\n fontSize: this.axisConfig.titleFontSize,\n rotation: 270,\n verticalPos: \"top\",\n horizontalPos: \"center\"\n }\n ]\n });\n }\n return drawableElement;\n }\n getDrawableElementsForBottomAxis() {\n const drawableElement = [];\n if (this.showAxisLine) {\n const y = this.boundingRect.y + this.axisConfig.axisLineWidth / 2;\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"bottom-axis\", \"axis-line\"],\n data: [\n {\n path: `M ${this.boundingRect.x},${y} L ${this.boundingRect.x + this.boundingRect.width},${y}`,\n strokeFill: this.axisThemeConfig.axisLineColor,\n strokeWidth: this.axisConfig.axisLineWidth\n }\n ]\n });\n }\n if (this.showLabel) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"bottom-axis\", \"label\"],\n data: this.getTickValues().map((tick) => ({\n text: tick.toString(),\n x: this.getScaleValue(tick),\n y: this.boundingRect.y + this.axisConfig.labelPadding + (this.showTick ? this.axisConfig.tickLength : 0) + (this.showAxisLine ? this.axisConfig.axisLineWidth : 0),\n fill: this.axisThemeConfig.labelColor,\n fontSize: this.axisConfig.labelFontSize,\n rotation: 0,\n verticalPos: \"top\",\n horizontalPos: \"center\"\n }))\n });\n }\n if (this.showTick) {\n const y = this.boundingRect.y + (this.showAxisLine ? this.axisConfig.axisLineWidth : 0);\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"bottom-axis\", \"ticks\"],\n data: this.getTickValues().map((tick) => ({\n path: `M ${this.getScaleValue(tick)},${y} L ${this.getScaleValue(tick)},${y + this.axisConfig.tickLength}`,\n strokeFill: this.axisThemeConfig.tickColor,\n strokeWidth: this.axisConfig.tickWidth\n }))\n });\n }\n if (this.showTitle) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"bottom-axis\", \"title\"],\n data: [\n {\n text: this.title,\n x: this.range[0] + (this.range[1] - this.range[0]) / 2,\n y: this.boundingRect.y + this.boundingRect.height - this.axisConfig.titlePadding - this.titleTextHeight,\n fill: this.axisThemeConfig.titleColor,\n fontSize: this.axisConfig.titleFontSize,\n rotation: 0,\n verticalPos: \"top\",\n horizontalPos: \"center\"\n }\n ]\n });\n }\n return drawableElement;\n }\n getDrawableElementsForTopAxis() {\n const drawableElement = [];\n if (this.showAxisLine) {\n const y = this.boundingRect.y + this.boundingRect.height - this.axisConfig.axisLineWidth / 2;\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"top-axis\", \"axis-line\"],\n data: [\n {\n path: `M ${this.boundingRect.x},${y} L ${this.boundingRect.x + this.boundingRect.width},${y}`,\n strokeFill: this.axisThemeConfig.axisLineColor,\n strokeWidth: this.axisConfig.axisLineWidth\n }\n ]\n });\n }\n if (this.showLabel) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"top-axis\", \"label\"],\n data: this.getTickValues().map((tick) => ({\n text: tick.toString(),\n x: this.getScaleValue(tick),\n y: this.boundingRect.y + (this.showTitle ? this.titleTextHeight + this.axisConfig.titlePadding * 2 : 0) + this.axisConfig.labelPadding,\n fill: this.axisThemeConfig.labelColor,\n fontSize: this.axisConfig.labelFontSize,\n rotation: 0,\n verticalPos: \"top\",\n horizontalPos: \"center\"\n }))\n });\n }\n if (this.showTick) {\n const y = this.boundingRect.y;\n drawableElement.push({\n type: \"path\",\n groupTexts: [\"top-axis\", \"ticks\"],\n data: this.getTickValues().map((tick) => ({\n path: `M ${this.getScaleValue(tick)},${y + this.boundingRect.height - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0)} L ${this.getScaleValue(tick)},${y + this.boundingRect.height - this.axisConfig.tickLength - (this.showAxisLine ? this.axisConfig.axisLineWidth : 0)}`,\n strokeFill: this.axisThemeConfig.tickColor,\n strokeWidth: this.axisConfig.tickWidth\n }))\n });\n }\n if (this.showTitle) {\n drawableElement.push({\n type: \"text\",\n groupTexts: [\"top-axis\", \"title\"],\n data: [\n {\n text: this.title,\n x: this.boundingRect.x + this.boundingRect.width / 2,\n y: this.boundingRect.y + this.axisConfig.titlePadding,\n fill: this.axisThemeConfig.titleColor,\n fontSize: this.axisConfig.titleFontSize,\n rotation: 0,\n verticalPos: \"top\",\n horizontalPos: \"center\"\n }\n ]\n });\n }\n return drawableElement;\n }\n getDrawableElements() {\n if (this.axisPosition === \"left\") {\n return this.getDrawableElementsForLeftAxis();\n }\n if (this.axisPosition === \"right\") {\n throw Error(\"Drawing of right axis is not implemented\");\n }\n if (this.axisPosition === \"bottom\") {\n return this.getDrawableElementsForBottomAxis();\n }\n if (this.axisPosition === \"top\") {\n return this.getDrawableElementsForTopAxis();\n }\n return [];\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/axis/bandAxis.ts\nvar BandAxis = class extends BaseAxis {\n static {\n __name(this, \"BandAxis\");\n }\n constructor(axisConfig, axisThemeConfig, categories, title, textDimensionCalculator) {\n super(axisConfig, title, textDimensionCalculator, axisThemeConfig);\n this.categories = categories;\n this.scale = scaleBand().domain(this.categories).range(this.getRange());\n }\n setRange(range) {\n super.setRange(range);\n }\n recalculateScale() {\n this.scale = scaleBand().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(0.5);\n log.trace(\"BandAxis axis final categories, range: \", this.categories, this.getRange());\n }\n getTickValues() {\n return this.categories;\n }\n getScaleValue(value) {\n return this.scale(value) ?? this.getRange()[0];\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/axis/linearAxis.ts\nimport { scaleLinear } from \"d3\";\nvar LinearAxis = class extends BaseAxis {\n static {\n __name(this, \"LinearAxis\");\n }\n constructor(axisConfig, axisThemeConfig, domain, title, textDimensionCalculator) {\n super(axisConfig, title, textDimensionCalculator, axisThemeConfig);\n this.domain = domain;\n this.scale = scaleLinear().domain(this.domain).range(this.getRange());\n }\n getTickValues() {\n return this.scale.ticks();\n }\n recalculateScale() {\n const domain = [...this.domain];\n if (this.axisPosition === \"left\") {\n domain.reverse();\n }\n this.scale = scaleLinear().domain(domain).range(this.getRange());\n }\n getScaleValue(value) {\n return this.scale(value);\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/axis/index.ts\nfunction getAxis(data, axisConfig, axisThemeConfig, tmpSVGGroup2) {\n const textDimensionCalculator = new TextDimensionCalculatorWithFont(tmpSVGGroup2);\n if (isBandAxisData(data)) {\n return new BandAxis(\n axisConfig,\n axisThemeConfig,\n data.categories,\n data.title,\n textDimensionCalculator\n );\n }\n return new LinearAxis(\n axisConfig,\n axisThemeConfig,\n [data.min, data.max],\n data.title,\n textDimensionCalculator\n );\n}\n__name(getAxis, \"getAxis\");\n\n// src/diagrams/xychart/chartBuilder/components/chartTitle.ts\nvar ChartTitle = class {\n constructor(textDimensionCalculator, chartConfig, chartData, chartThemeConfig) {\n this.textDimensionCalculator = textDimensionCalculator;\n this.chartConfig = chartConfig;\n this.chartData = chartData;\n this.chartThemeConfig = chartThemeConfig;\n this.boundingRect = {\n x: 0,\n y: 0,\n width: 0,\n height: 0\n };\n this.showChartTitle = false;\n }\n static {\n __name(this, \"ChartTitle\");\n }\n setBoundingBoxXY(point) {\n this.boundingRect.x = point.x;\n this.boundingRect.y = point.y;\n }\n calculateSpace(availableSpace) {\n const titleDimension = this.textDimensionCalculator.getMaxDimension(\n [this.chartData.title],\n this.chartConfig.titleFontSize\n );\n const widthRequired = Math.max(titleDimension.width, availableSpace.width);\n const heightRequired = titleDimension.height + 2 * this.chartConfig.titlePadding;\n if (titleDimension.width <= widthRequired && titleDimension.height <= heightRequired && this.chartConfig.showTitle && this.chartData.title) {\n this.boundingRect.width = widthRequired;\n this.boundingRect.height = heightRequired;\n this.showChartTitle = true;\n }\n return {\n width: this.boundingRect.width,\n height: this.boundingRect.height\n };\n }\n getDrawableElements() {\n const drawableElem = [];\n if (this.showChartTitle) {\n drawableElem.push({\n groupTexts: [\"chart-title\"],\n type: \"text\",\n data: [\n {\n fontSize: this.chartConfig.titleFontSize,\n text: this.chartData.title,\n verticalPos: \"middle\",\n horizontalPos: \"center\",\n x: this.boundingRect.x + this.boundingRect.width / 2,\n y: this.boundingRect.y + this.boundingRect.height / 2,\n fill: this.chartThemeConfig.titleColor,\n rotation: 0\n }\n ]\n });\n }\n return drawableElem;\n }\n};\nfunction getChartTitleComponent(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2) {\n const textDimensionCalculator = new TextDimensionCalculatorWithFont(tmpSVGGroup2);\n return new ChartTitle(textDimensionCalculator, chartConfig, chartData, chartThemeConfig);\n}\n__name(getChartTitleComponent, \"getChartTitleComponent\");\n\n// src/diagrams/xychart/chartBuilder/components/plot/linePlot.ts\nimport { line } from \"d3\";\nvar LinePlot = class {\n constructor(plotData, xAxis, yAxis, orientation, plotIndex2) {\n this.plotData = plotData;\n this.xAxis = xAxis;\n this.yAxis = yAxis;\n this.orientation = orientation;\n this.plotIndex = plotIndex2;\n }\n static {\n __name(this, \"LinePlot\");\n }\n getDrawableElement() {\n const finalData = this.plotData.data.map((d) => [\n this.xAxis.getScaleValue(d[0]),\n this.yAxis.getScaleValue(d[1])\n ]);\n let path;\n if (this.orientation === \"horizontal\") {\n path = line().y((d) => d[0]).x((d) => d[1])(finalData);\n } else {\n path = line().x((d) => d[0]).y((d) => d[1])(finalData);\n }\n if (!path) {\n return [];\n }\n return [\n {\n groupTexts: [\"plot\", `line-plot-${this.plotIndex}`],\n type: \"path\",\n data: [\n {\n path,\n strokeFill: this.plotData.strokeFill,\n strokeWidth: this.plotData.strokeWidth\n }\n ]\n }\n ];\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/plot/barPlot.ts\nvar BarPlot = class {\n constructor(barData, boundingRect, xAxis, yAxis, orientation, plotIndex2) {\n this.barData = barData;\n this.boundingRect = boundingRect;\n this.xAxis = xAxis;\n this.yAxis = yAxis;\n this.orientation = orientation;\n this.plotIndex = plotIndex2;\n }\n static {\n __name(this, \"BarPlot\");\n }\n getDrawableElement() {\n const finalData = this.barData.data.map((d) => [\n this.xAxis.getScaleValue(d[0]),\n this.yAxis.getScaleValue(d[1])\n ]);\n const barPaddingPercent = 0.05;\n const barWidth = Math.min(this.xAxis.getAxisOuterPadding() * 2, this.xAxis.getTickDistance()) * (1 - barPaddingPercent);\n const barWidthHalf = barWidth / 2;\n if (this.orientation === \"horizontal\") {\n return [\n {\n groupTexts: [\"plot\", `bar-plot-${this.plotIndex}`],\n type: \"rect\",\n data: finalData.map((data) => ({\n x: this.boundingRect.x,\n y: data[0] - barWidthHalf,\n height: barWidth,\n width: data[1] - this.boundingRect.x,\n fill: this.barData.fill,\n strokeWidth: 0,\n strokeFill: this.barData.fill\n }))\n }\n ];\n }\n return [\n {\n groupTexts: [\"plot\", `bar-plot-${this.plotIndex}`],\n type: \"rect\",\n data: finalData.map((data) => ({\n x: data[0] - barWidthHalf,\n y: data[1],\n width: barWidth,\n height: this.boundingRect.y + this.boundingRect.height - data[1],\n fill: this.barData.fill,\n strokeWidth: 0,\n strokeFill: this.barData.fill\n }))\n }\n ];\n }\n};\n\n// src/diagrams/xychart/chartBuilder/components/plot/index.ts\nvar BasePlot = class {\n constructor(chartConfig, chartData, chartThemeConfig) {\n this.chartConfig = chartConfig;\n this.chartData = chartData;\n this.chartThemeConfig = chartThemeConfig;\n this.boundingRect = {\n x: 0,\n y: 0,\n width: 0,\n height: 0\n };\n }\n static {\n __name(this, \"BasePlot\");\n }\n setAxes(xAxis, yAxis) {\n this.xAxis = xAxis;\n this.yAxis = yAxis;\n }\n setBoundingBoxXY(point) {\n this.boundingRect.x = point.x;\n this.boundingRect.y = point.y;\n }\n calculateSpace(availableSpace) {\n this.boundingRect.width = availableSpace.width;\n this.boundingRect.height = availableSpace.height;\n return {\n width: this.boundingRect.width,\n height: this.boundingRect.height\n };\n }\n getDrawableElements() {\n if (!(this.xAxis && this.yAxis)) {\n throw Error(\"Axes must be passed to render Plots\");\n }\n const drawableElem = [];\n for (const [i, plot] of this.chartData.plots.entries()) {\n switch (plot.type) {\n case \"line\":\n {\n const linePlot = new LinePlot(\n plot,\n this.xAxis,\n this.yAxis,\n this.chartConfig.chartOrientation,\n i\n );\n drawableElem.push(...linePlot.getDrawableElement());\n }\n break;\n case \"bar\":\n {\n const barPlot = new BarPlot(\n plot,\n this.boundingRect,\n this.xAxis,\n this.yAxis,\n this.chartConfig.chartOrientation,\n i\n );\n drawableElem.push(...barPlot.getDrawableElement());\n }\n break;\n }\n }\n return drawableElem;\n }\n};\nfunction getPlotComponent(chartConfig, chartData, chartThemeConfig) {\n return new BasePlot(chartConfig, chartData, chartThemeConfig);\n}\n__name(getPlotComponent, \"getPlotComponent\");\n\n// src/diagrams/xychart/chartBuilder/orchestrator.ts\nvar Orchestrator = class {\n constructor(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2) {\n this.chartConfig = chartConfig;\n this.chartData = chartData;\n this.componentStore = {\n title: getChartTitleComponent(chartConfig, chartData, chartThemeConfig, tmpSVGGroup2),\n plot: getPlotComponent(chartConfig, chartData, chartThemeConfig),\n xAxis: getAxis(\n chartData.xAxis,\n chartConfig.xAxis,\n {\n titleColor: chartThemeConfig.xAxisTitleColor,\n labelColor: chartThemeConfig.xAxisLabelColor,\n tickColor: chartThemeConfig.xAxisTickColor,\n axisLineColor: chartThemeConfig.xAxisLineColor\n },\n tmpSVGGroup2\n ),\n yAxis: getAxis(\n chartData.yAxis,\n chartConfig.yAxis,\n {\n titleColor: chartThemeConfig.yAxisTitleColor,\n labelColor: chartThemeConfig.yAxisLabelColor,\n tickColor: chartThemeConfig.yAxisTickColor,\n axisLineColor: chartThemeConfig.yAxisLineColor\n },\n tmpSVGGroup2\n )\n };\n }\n static {\n __name(this, \"Orchestrator\");\n }\n calculateVerticalSpace() {\n let availableWidth = this.chartConfig.width;\n let availableHeight = this.chartConfig.height;\n let plotX = 0;\n let plotY = 0;\n let chartWidth = Math.floor(availableWidth * this.chartConfig.plotReservedSpacePercent / 100);\n let chartHeight = Math.floor(\n availableHeight * this.chartConfig.plotReservedSpacePercent / 100\n );\n let spaceUsed = this.componentStore.plot.calculateSpace({\n width: chartWidth,\n height: chartHeight\n });\n availableWidth -= spaceUsed.width;\n availableHeight -= spaceUsed.height;\n spaceUsed = this.componentStore.title.calculateSpace({\n width: this.chartConfig.width,\n height: availableHeight\n });\n plotY = spaceUsed.height;\n availableHeight -= spaceUsed.height;\n this.componentStore.xAxis.setAxisPosition(\"bottom\");\n spaceUsed = this.componentStore.xAxis.calculateSpace({\n width: availableWidth,\n height: availableHeight\n });\n availableHeight -= spaceUsed.height;\n this.componentStore.yAxis.setAxisPosition(\"left\");\n spaceUsed = this.componentStore.yAxis.calculateSpace({\n width: availableWidth,\n height: availableHeight\n });\n plotX = spaceUsed.width;\n availableWidth -= spaceUsed.width;\n if (availableWidth > 0) {\n chartWidth += availableWidth;\n availableWidth = 0;\n }\n if (availableHeight > 0) {\n chartHeight += availableHeight;\n availableHeight = 0;\n }\n this.componentStore.plot.calculateSpace({\n width: chartWidth,\n height: chartHeight\n });\n this.componentStore.plot.setBoundingBoxXY({ x: plotX, y: plotY });\n this.componentStore.xAxis.setRange([plotX, plotX + chartWidth]);\n this.componentStore.xAxis.setBoundingBoxXY({ x: plotX, y: plotY + chartHeight });\n this.componentStore.yAxis.setRange([plotY, plotY + chartHeight]);\n this.componentStore.yAxis.setBoundingBoxXY({ x: 0, y: plotY });\n if (this.chartData.plots.some((p) => isBarPlot(p))) {\n this.componentStore.xAxis.recalculateOuterPaddingToDrawBar();\n }\n }\n calculateHorizontalSpace() {\n let availableWidth = this.chartConfig.width;\n let availableHeight = this.chartConfig.height;\n let titleYEnd = 0;\n let plotX = 0;\n let plotY = 0;\n let chartWidth = Math.floor(availableWidth * this.chartConfig.plotReservedSpacePercent / 100);\n let chartHeight = Math.floor(\n availableHeight * this.chartConfig.plotReservedSpacePercent / 100\n );\n let spaceUsed = this.componentStore.plot.calculateSpace({\n width: chartWidth,\n height: chartHeight\n });\n availableWidth -= spaceUsed.width;\n availableHeight -= spaceUsed.height;\n spaceUsed = this.componentStore.title.calculateSpace({\n width: this.chartConfig.width,\n height: availableHeight\n });\n titleYEnd = spaceUsed.height;\n availableHeight -= spaceUsed.height;\n this.componentStore.xAxis.setAxisPosition(\"left\");\n spaceUsed = this.componentStore.xAxis.calculateSpace({\n width: availableWidth,\n height: availableHeight\n });\n availableWidth -= spaceUsed.width;\n plotX = spaceUsed.width;\n this.componentStore.yAxis.setAxisPosition(\"top\");\n spaceUsed = this.componentStore.yAxis.calculateSpace({\n width: availableWidth,\n height: availableHeight\n });\n availableHeight -= spaceUsed.height;\n plotY = titleYEnd + spaceUsed.height;\n if (availableWidth > 0) {\n chartWidth += availableWidth;\n availableWidth = 0;\n }\n if (availableHeight > 0) {\n chartHeight += availableHeight;\n availableHeight = 0;\n }\n this.componentStore.plot.calculateSpace({\n width: chartWidth,\n height: chartHeight\n });\n this.componentStore.plot.setBoundingBoxXY({ x: plotX, y: plotY });\n this.componentStore.yAxis.setRange([plotX, plotX + chartWidth]);\n this.componentStore.yAxis.setBoundingBoxXY({ x: plotX, y: titleYEnd });\n this.componentStore.xAxis.setRange([plotY, plotY + chartHeight]);\n this.componentStore.xAxis.setBoundingBoxXY({ x: 0, y: plotY });\n if (this.chartData.plots.some((p) => isBarPlot(p))) {\n this.componentStore.xAxis.recalculateOuterPaddingToDrawBar();\n }\n }\n calculateSpace() {\n if (this.chartConfig.chartOrientation === \"horizontal\") {\n this.calculateHorizontalSpace();\n } else {\n this.calculateVerticalSpace();\n }\n }\n getDrawableElement() {\n this.calculateSpace();\n const drawableElem = [];\n this.componentStore.plot.setAxes(this.componentStore.xAxis, this.componentStore.yAxis);\n for (const component of Object.values(this.componentStore)) {\n drawableElem.push(...component.getDrawableElements());\n }\n return drawableElem;\n }\n};\n\n// src/diagrams/xychart/chartBuilder/index.ts\nvar XYChartBuilder = class {\n static {\n __name(this, \"XYChartBuilder\");\n }\n static build(config, chartData, chartThemeConfig, tmpSVGGroup2) {\n const orchestrator = new Orchestrator(config, chartData, chartThemeConfig, tmpSVGGroup2);\n return orchestrator.getDrawableElement();\n }\n};\n\n// src/diagrams/xychart/xychartDb.ts\nvar plotIndex = 0;\nvar tmpSVGGroup;\nvar xyChartConfig = getChartDefaultConfig();\nvar xyChartThemeConfig = getChartDefaultThemeConfig();\nvar xyChartData = getChartDefaultData();\nvar plotColorPalette = xyChartThemeConfig.plotColorPalette.split(\",\").map((color) => color.trim());\nvar hasSetXAxis = false;\nvar hasSetYAxis = false;\nfunction getChartDefaultThemeConfig() {\n const defaultThemeVariables = getThemeVariables();\n const config = getConfig();\n return cleanAndMerge(defaultThemeVariables.xyChart, config.themeVariables.xyChart);\n}\n__name(getChartDefaultThemeConfig, \"getChartDefaultThemeConfig\");\nfunction getChartDefaultConfig() {\n const config = getConfig();\n return cleanAndMerge(\n defaultConfig_default.xyChart,\n config.xyChart\n );\n}\n__name(getChartDefaultConfig, \"getChartDefaultConfig\");\nfunction getChartDefaultData() {\n return {\n yAxis: {\n type: \"linear\",\n title: \"\",\n min: Infinity,\n max: -Infinity\n },\n xAxis: {\n type: \"band\",\n title: \"\",\n categories: []\n },\n title: \"\",\n plots: []\n };\n}\n__name(getChartDefaultData, \"getChartDefaultData\");\nfunction textSanitizer(text) {\n const config = getConfig();\n return sanitizeText(text.trim(), config);\n}\n__name(textSanitizer, \"textSanitizer\");\nfunction setTmpSVGG(SVGG) {\n tmpSVGGroup = SVGG;\n}\n__name(setTmpSVGG, \"setTmpSVGG\");\nfunction setOrientation(orientation) {\n if (orientation === \"horizontal\") {\n xyChartConfig.chartOrientation = \"horizontal\";\n } else {\n xyChartConfig.chartOrientation = \"vertical\";\n }\n}\n__name(setOrientation, \"setOrientation\");\nfunction setXAxisTitle(title) {\n xyChartData.xAxis.title = textSanitizer(title.text);\n}\n__name(setXAxisTitle, \"setXAxisTitle\");\nfunction setXAxisRangeData(min, max) {\n xyChartData.xAxis = { type: \"linear\", title: xyChartData.xAxis.title, min, max };\n hasSetXAxis = true;\n}\n__name(setXAxisRangeData, \"setXAxisRangeData\");\nfunction setXAxisBand(categories) {\n xyChartData.xAxis = {\n type: \"band\",\n title: xyChartData.xAxis.title,\n categories: categories.map((c) => textSanitizer(c.text))\n };\n hasSetXAxis = true;\n}\n__name(setXAxisBand, \"setXAxisBand\");\nfunction setYAxisTitle(title) {\n xyChartData.yAxis.title = textSanitizer(title.text);\n}\n__name(setYAxisTitle, \"setYAxisTitle\");\nfunction setYAxisRangeData(min, max) {\n xyChartData.yAxis = { type: \"linear\", title: xyChartData.yAxis.title, min, max };\n hasSetYAxis = true;\n}\n__name(setYAxisRangeData, \"setYAxisRangeData\");\nfunction setYAxisRangeFromPlotData(data) {\n const minValue = Math.min(...data);\n const maxValue = Math.max(...data);\n const prevMinValue = isLinearAxisData(xyChartData.yAxis) ? xyChartData.yAxis.min : Infinity;\n const prevMaxValue = isLinearAxisData(xyChartData.yAxis) ? xyChartData.yAxis.max : -Infinity;\n xyChartData.yAxis = {\n type: \"linear\",\n title: xyChartData.yAxis.title,\n min: Math.min(prevMinValue, minValue),\n max: Math.max(prevMaxValue, maxValue)\n };\n}\n__name(setYAxisRangeFromPlotData, \"setYAxisRangeFromPlotData\");\nfunction transformDataWithoutCategory(data) {\n let retData = [];\n if (data.length === 0) {\n return retData;\n }\n if (!hasSetXAxis) {\n const prevMinValue = isLinearAxisData(xyChartData.xAxis) ? xyChartData.xAxis.min : Infinity;\n const prevMaxValue = isLinearAxisData(xyChartData.xAxis) ? xyChartData.xAxis.max : -Infinity;\n setXAxisRangeData(Math.min(prevMinValue, 1), Math.max(prevMaxValue, data.length));\n }\n if (!hasSetYAxis) {\n setYAxisRangeFromPlotData(data);\n }\n if (isBandAxisData(xyChartData.xAxis)) {\n retData = xyChartData.xAxis.categories.map((c, i) => [c, data[i]]);\n }\n if (isLinearAxisData(xyChartData.xAxis)) {\n const min = xyChartData.xAxis.min;\n const max = xyChartData.xAxis.max;\n const step = (max - min) / (data.length - 1);\n const categories = [];\n for (let i = min; i <= max; i += step) {\n categories.push(`${i}`);\n }\n retData = categories.map((c, i) => [c, data[i]]);\n }\n return retData;\n}\n__name(transformDataWithoutCategory, \"transformDataWithoutCategory\");\nfunction getPlotColorFromPalette(plotIndex2) {\n return plotColorPalette[plotIndex2 === 0 ? 0 : plotIndex2 % plotColorPalette.length];\n}\n__name(getPlotColorFromPalette, \"getPlotColorFromPalette\");\nfunction setLineData(title, data) {\n const plotData = transformDataWithoutCategory(data);\n xyChartData.plots.push({\n type: \"line\",\n strokeFill: getPlotColorFromPalette(plotIndex),\n strokeWidth: 2,\n data: plotData\n });\n plotIndex++;\n}\n__name(setLineData, \"setLineData\");\nfunction setBarData(title, data) {\n const plotData = transformDataWithoutCategory(data);\n xyChartData.plots.push({\n type: \"bar\",\n fill: getPlotColorFromPalette(plotIndex),\n data: plotData\n });\n plotIndex++;\n}\n__name(setBarData, \"setBarData\");\nfunction getDrawableElem() {\n if (xyChartData.plots.length === 0) {\n throw Error(\"No Plot to render, please provide a plot with some data\");\n }\n xyChartData.title = getDiagramTitle();\n return XYChartBuilder.build(xyChartConfig, xyChartData, xyChartThemeConfig, tmpSVGGroup);\n}\n__name(getDrawableElem, \"getDrawableElem\");\nfunction getChartThemeConfig() {\n return xyChartThemeConfig;\n}\n__name(getChartThemeConfig, \"getChartThemeConfig\");\nfunction getChartConfig() {\n return xyChartConfig;\n}\n__name(getChartConfig, \"getChartConfig\");\nfunction getXYChartData() {\n return xyChartData;\n}\n__name(getXYChartData, \"getXYChartData\");\nvar clear2 = /* @__PURE__ */ __name(function() {\n clear();\n plotIndex = 0;\n xyChartConfig = getChartDefaultConfig();\n xyChartData = getChartDefaultData();\n xyChartThemeConfig = getChartDefaultThemeConfig();\n plotColorPalette = xyChartThemeConfig.plotColorPalette.split(\",\").map((color) => color.trim());\n hasSetXAxis = false;\n hasSetYAxis = false;\n}, \"clear\");\nvar xychartDb_default = {\n getDrawableElem,\n clear: clear2,\n setAccTitle,\n getAccTitle,\n setDiagramTitle,\n getDiagramTitle,\n getAccDescription,\n setAccDescription,\n setOrientation,\n setXAxisTitle,\n setXAxisRangeData,\n setXAxisBand,\n setYAxisTitle,\n setYAxisRangeData,\n setLineData,\n setBarData,\n setTmpSVGG,\n getChartThemeConfig,\n getChartConfig,\n getXYChartData\n};\n\n// src/diagrams/xychart/xychartRenderer.ts\nvar draw = /* @__PURE__ */ __name((txt, id, _version, diagObj) => {\n const db = diagObj.db;\n const themeConfig = db.getChartThemeConfig();\n const chartConfig = db.getChartConfig();\n const labelData = db.getXYChartData().plots[0].data.map((data) => data[1]);\n function getDominantBaseLine(horizontalPos) {\n return horizontalPos === \"top\" ? \"text-before-edge\" : \"middle\";\n }\n __name(getDominantBaseLine, \"getDominantBaseLine\");\n function getTextAnchor(verticalPos) {\n return verticalPos === \"left\" ? \"start\" : verticalPos === \"right\" ? \"end\" : \"middle\";\n }\n __name(getTextAnchor, \"getTextAnchor\");\n function getTextTransformation(data) {\n return `translate(${data.x}, ${data.y}) rotate(${data.rotation || 0})`;\n }\n __name(getTextTransformation, \"getTextTransformation\");\n log.debug(\"Rendering xychart chart\\n\" + txt);\n const svg = selectSvgElement(id);\n const group = svg.append(\"g\").attr(\"class\", \"main\");\n const background = group.append(\"rect\").attr(\"width\", chartConfig.width).attr(\"height\", chartConfig.height).attr(\"class\", \"background\");\n configureSvgSize(svg, chartConfig.height, chartConfig.width, true);\n svg.attr(\"viewBox\", `0 0 ${chartConfig.width} ${chartConfig.height}`);\n background.attr(\"fill\", themeConfig.backgroundColor);\n db.setTmpSVGG(svg.append(\"g\").attr(\"class\", \"mermaid-tmp-group\"));\n const shapes = db.getDrawableElem();\n const groups = {};\n function getGroup(gList) {\n let elem = group;\n let prefix = \"\";\n for (const [i] of gList.entries()) {\n let parent = group;\n if (i > 0 && groups[prefix]) {\n parent = groups[prefix];\n }\n prefix += gList[i];\n elem = groups[prefix];\n if (!elem) {\n elem = groups[prefix] = parent.append(\"g\").attr(\"class\", gList[i]);\n }\n }\n return elem;\n }\n __name(getGroup, \"getGroup\");\n for (const shape of shapes) {\n if (shape.data.length === 0) {\n continue;\n }\n const shapeGroup = getGroup(shape.groupTexts);\n switch (shape.type) {\n case \"rect\":\n shapeGroup.selectAll(\"rect\").data(shape.data).enter().append(\"rect\").attr(\"x\", (data) => data.x).attr(\"y\", (data) => data.y).attr(\"width\", (data) => data.width).attr(\"height\", (data) => data.height).attr(\"fill\", (data) => data.fill).attr(\"stroke\", (data) => data.strokeFill).attr(\"stroke-width\", (data) => data.strokeWidth);\n if (chartConfig.showDataLabel) {\n const showDataLabelOutsideBar = chartConfig.showDataLabelOutsideBar;\n if (chartConfig.chartOrientation === \"horizontal\") {\n let fitsHorizontally2 = function(item, fontSize) {\n const { data, label } = item;\n const textWidth = fontSize * label.length * charWidthFactor;\n return textWidth <= data.width - rightMargin;\n };\n var fitsHorizontally = fitsHorizontally2;\n __name(fitsHorizontally2, \"fitsHorizontally\");\n const charWidthFactor = 0.7;\n const rightMargin = 10;\n const validItems = shape.data.map((d, i) => ({ data: d, label: labelData[i].toString() })).filter((item) => item.data.width > 0 && item.data.height > 0);\n const candidateFontSizes = validItems.map((item) => {\n const { data } = item;\n let fontSize = data.height * 0.7;\n while (!fitsHorizontally2(item, fontSize) && fontSize > 0) {\n fontSize -= 1;\n }\n return fontSize;\n });\n const uniformFontSize = Math.floor(Math.min(...candidateFontSizes));\n const determineLabelXPosition = /* @__PURE__ */ __name((item) => {\n if (showDataLabelOutsideBar) {\n return item.data.x + item.data.width + rightMargin;\n } else {\n return item.data.x + item.data.width - rightMargin;\n }\n }, \"determineLabelXPosition\");\n shapeGroup.selectAll(\"text\").data(validItems).enter().append(\"text\").attr(\"x\", determineLabelXPosition).attr(\"y\", (item) => item.data.y + item.data.height / 2).attr(\"text-anchor\", showDataLabelOutsideBar ? \"start\" : \"end\").attr(\"dominant-baseline\", \"middle\").attr(\"fill\", themeConfig.dataLabelColor).attr(\"font-size\", `${uniformFontSize}px`).text((item) => item.label);\n } else {\n let fitsInBar2 = function(item, fontSize, yOffset2) {\n const { data, label } = item;\n const charWidthFactor = 0.7;\n const textWidth = fontSize * label.length * charWidthFactor;\n const centerX = data.x + data.width / 2;\n const leftEdge = centerX - textWidth / 2;\n const rightEdge = centerX + textWidth / 2;\n const horizontalFits = leftEdge >= data.x && rightEdge <= data.x + data.width;\n const verticalFits = data.y + yOffset2 + fontSize <= data.y + data.height;\n return horizontalFits && verticalFits;\n };\n var fitsInBar = fitsInBar2;\n __name(fitsInBar2, \"fitsInBar\");\n const yOffset = 10;\n const validItems = shape.data.map((d, i) => ({ data: d, label: labelData[i].toString() })).filter((item) => item.data.width > 0 && item.data.height > 0);\n const candidateFontSizes = validItems.map((item) => {\n const { data, label } = item;\n let fontSize = data.width / (label.length * 0.7);\n while (!fitsInBar2(item, fontSize, yOffset) && fontSize > 0) {\n fontSize -= 1;\n }\n return fontSize;\n });\n const uniformFontSize = Math.floor(Math.min(...candidateFontSizes));\n const determineLabelYPosition = /* @__PURE__ */ __name((item) => {\n if (showDataLabelOutsideBar) {\n return item.data.y - yOffset;\n } else {\n return item.data.y + yOffset;\n }\n }, \"determineLabelYPosition\");\n shapeGroup.selectAll(\"text\").data(validItems).enter().append(\"text\").attr(\"x\", (item) => item.data.x + item.data.width / 2).attr(\"y\", determineLabelYPosition).attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", showDataLabelOutsideBar ? \"auto\" : \"hanging\").attr(\"fill\", themeConfig.dataLabelColor).attr(\"font-size\", `${uniformFontSize}px`).text((item) => item.label);\n }\n }\n break;\n case \"text\":\n shapeGroup.selectAll(\"text\").data(shape.data).enter().append(\"text\").attr(\"x\", 0).attr(\"y\", 0).attr(\"fill\", (data) => data.fill).attr(\"font-size\", (data) => data.fontSize).attr(\"dominant-baseline\", (data) => getDominantBaseLine(data.verticalPos)).attr(\"text-anchor\", (data) => getTextAnchor(data.horizontalPos)).attr(\"transform\", (data) => getTextTransformation(data)).text((data) => data.text);\n break;\n case \"path\":\n shapeGroup.selectAll(\"path\").data(shape.data).enter().append(\"path\").attr(\"d\", (data) => data.path).attr(\"fill\", (data) => data.fill ? data.fill : \"none\").attr(\"stroke\", (data) => data.strokeFill).attr(\"stroke-width\", (data) => data.strokeWidth);\n break;\n }\n }\n}, \"draw\");\nvar xychartRenderer_default = {\n draw\n};\n\n// src/diagrams/xychart/xychartDiagram.ts\nvar diagram = {\n parser: xychart_default,\n db: xychartDb_default,\n renderer: xychartRenderer_default\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0],"mappings":"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AAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,CAAE,GAAI,CAAC,EAAG,GAAG,CAAE,CAAE,CAAE,GAAI,CAAC,EAAG,GAAG,CAAE,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,CAAE,EAAG,CAAC,EAAG,EAAE,CAAE,CAAE,EAAE,EAAK,CAAC,EAAG,EAAE,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,EAAE,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAE,CAAE,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,CAAE,GAAI,CAAC,EAAG,GAAG,CAAE,CAAE,CAAE,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,GAAI,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,GAAI,EAAK,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAE,CAAE,GAAI,GAAI,GAAI,EAAK,CAAC,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,CAAE,GAAI,CAAC,EAAG,GAAG,CAAE,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,CAAE,GAAI,GAAI,GAAI,EAAK,CAAE,CAAE,GAAI,GAAI,GAAI,EAAK,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,CAAE,GAAI,GAAI,GAAI,EAAK,CAAE,EAAE,EAAK,CAAC,EAAG,GAAG,CAAC,CAAE,E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"}
|
package/dist/static/index.html
CHANGED
|
@@ -6,22 +6,26 @@
|
|
|
6
6
|
<meta name="color-scheme" content="light dark" />
|
|
7
7
|
<title>render-harness / operator</title>
|
|
8
8
|
<link rel="icon" href="data:," />
|
|
9
|
-
<script type="module" crossorigin src="./assets/index-
|
|
9
|
+
<script type="module" crossorigin src="./assets/index-B1CSiQFH.js"></script>
|
|
10
10
|
<link rel="modulepreload" crossorigin href="./assets/src-DoMhBUqV.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="./assets/chunk-CSCIHK7Q-BBzr5U3o.js">
|
|
12
12
|
<link rel="modulepreload" crossorigin href="./assets/dist-C2f1Lbm8.js">
|
|
13
|
-
<link rel="modulepreload" crossorigin href="./assets/chunk-5ZQYHXKU-
|
|
14
|
-
<link rel="modulepreload" crossorigin href="./assets/chunk-O5CBEL6O-
|
|
15
|
-
<link rel="modulepreload" crossorigin href="./assets/
|
|
13
|
+
<link rel="modulepreload" crossorigin href="./assets/chunk-5ZQYHXKU-CCVDVWrS.js">
|
|
14
|
+
<link rel="modulepreload" crossorigin href="./assets/chunk-O5CBEL6O-CNfA3Ek9.js">
|
|
15
|
+
<link rel="modulepreload" crossorigin href="./assets/defaultLocale-BGJ623y0.js">
|
|
16
|
+
<link rel="modulepreload" crossorigin href="./assets/init-D6CV0rqX.js">
|
|
17
|
+
<link rel="modulepreload" crossorigin href="./assets/linear-D0P02-YR.js">
|
|
18
|
+
<link rel="modulepreload" crossorigin href="./assets/path-BmDdnQs8.js">
|
|
19
|
+
<link rel="modulepreload" crossorigin href="./assets/ordinal-D-PEDSg4.js">
|
|
20
|
+
<link rel="modulepreload" crossorigin href="./assets/array-B4O_ir3H.js">
|
|
21
|
+
<link rel="modulepreload" crossorigin href="./assets/line-DvIoplHa.js">
|
|
22
|
+
<link rel="modulepreload" crossorigin href="./assets/chunk-L5ZTLDWV-DZfwPtSD.js">
|
|
16
23
|
<link rel="modulepreload" crossorigin href="./assets/chunk-NZK2D7GU-DuwDtSGJ.js">
|
|
17
24
|
<link rel="modulepreload" crossorigin href="./assets/rough.esm-C6nrIGLg.js">
|
|
18
|
-
<link rel="modulepreload" crossorigin href="./assets/chunk-3OPIFGDE-
|
|
25
|
+
<link rel="modulepreload" crossorigin href="./assets/chunk-3OPIFGDE-P0oLihOV.js">
|
|
19
26
|
<link rel="modulepreload" crossorigin href="./assets/chunk-BSJP7CBP-Kr5SHCan.js">
|
|
20
|
-
<link rel="modulepreload" crossorigin href="./assets/
|
|
21
|
-
<link rel="
|
|
22
|
-
<link rel="modulepreload" crossorigin href="./assets/line-GCwXS1Fi.js">
|
|
23
|
-
<link rel="modulepreload" crossorigin href="./assets/chunk-KSCS5N6A-BZrceHGX.js">
|
|
24
|
-
<link rel="stylesheet" crossorigin href="./assets/index-luXiT-gK.css">
|
|
27
|
+
<link rel="modulepreload" crossorigin href="./assets/chunk-KSCS5N6A-B2emJsw5.js">
|
|
28
|
+
<link rel="stylesheet" crossorigin href="./assets/index-BJZaWHUt.css">
|
|
25
29
|
</head>
|
|
26
30
|
<body>
|
|
27
31
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@render-harness/ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Operator control-plane UI for the Render agent harness. Mounts a Hono router that serves a small React SPA plus the read APIs the SPA needs.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -23,22 +23,15 @@
|
|
|
23
23
|
"operator-ui",
|
|
24
24
|
"control-plane"
|
|
25
25
|
],
|
|
26
|
-
"scripts": {
|
|
27
|
-
"build": "pnpm run build:server && pnpm run build:web",
|
|
28
|
-
"build:server": "tsup",
|
|
29
|
-
"build:web": "vite build --config web/vite.config.ts",
|
|
30
|
-
"dev:web": "vite --config web/vite.config.ts",
|
|
31
|
-
"typecheck": "tsc --noEmit && tsc -p web/tsconfig.json --noEmit",
|
|
32
|
-
"test": "vitest run --passWithNoTests"
|
|
33
|
-
},
|
|
34
26
|
"dependencies": {
|
|
35
27
|
"@assistant-ui/react": "^0.14.0",
|
|
36
28
|
"@hono/node-server": "^2.0.2",
|
|
37
|
-
"@render-harness/contracts": "^0.1.1",
|
|
38
|
-
"@render-harness/core": "^0.1.1",
|
|
39
29
|
"hono": "^4.12.18",
|
|
40
30
|
"mermaid": "^11.15.0",
|
|
41
|
-
"pg": "^8.20.0"
|
|
31
|
+
"pg": "^8.20.0",
|
|
32
|
+
"recharts": "^3.8.1",
|
|
33
|
+
"@render-harness/core": "0.2.0",
|
|
34
|
+
"@render-harness/contracts": "0.2.0"
|
|
42
35
|
},
|
|
43
36
|
"devDependencies": {
|
|
44
37
|
"@fontsource-variable/jetbrains-mono": "^5.2.7",
|
|
@@ -60,5 +53,13 @@
|
|
|
60
53
|
"typescript": "^6.0.3",
|
|
61
54
|
"vite": "^8.0.11",
|
|
62
55
|
"vitest": "^4.1.5"
|
|
56
|
+
},
|
|
57
|
+
"scripts": {
|
|
58
|
+
"build": "pnpm run build:server && pnpm run build:web",
|
|
59
|
+
"build:server": "tsup",
|
|
60
|
+
"build:web": "vite build --config web/vite.config.ts",
|
|
61
|
+
"dev:web": "vite --config web/vite.config.ts",
|
|
62
|
+
"typecheck": "tsc --noEmit && tsc -p web/tsconfig.json --noEmit",
|
|
63
|
+
"test": "vitest run --passWithNoTests"
|
|
63
64
|
}
|
|
64
|
-
}
|
|
65
|
+
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./src-DoMhBUqV.js";import"./chunk-CSCIHK7Q-BBzr5U3o.js";import"./chunk-5ZQYHXKU-B_3UEJ_q.js";import"./chunk-BSJP7CBP-Kr5SHCan.js";import"./chunk-L5ZTLDWV-BAcjEn3C.js";import"./chunk-NZK2D7GU-DuwDtSGJ.js";import"./chunk-O5CBEL6O-KRO56hHQ.js";import"./chunk-3OPIFGDE-xcRWDOrg.js";import"./chunk-KSCS5N6A-BZrceHGX.js";import"./index-D5tmHkO_.js";import"./chunk-FMBD7UC4-CiWgEw8O.js";import"./chunk-ND2GUHAM-DHtjIa8_.js";import"./chunk-55IACEB6-aqMcRzKm.js";import"./chunk-2J33WTMH-DaEvWRZX.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-c1bbIj6N.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
|
|
2
|
-
//# sourceMappingURL=classDiagram-4FO5ZUOK-oexPF7ww.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{h as e}from"./src-DoMhBUqV.js";import"./chunk-CSCIHK7Q-BBzr5U3o.js";import"./chunk-5ZQYHXKU-B_3UEJ_q.js";import"./chunk-BSJP7CBP-Kr5SHCan.js";import"./chunk-L5ZTLDWV-BAcjEn3C.js";import"./chunk-NZK2D7GU-DuwDtSGJ.js";import"./chunk-O5CBEL6O-KRO56hHQ.js";import"./chunk-3OPIFGDE-xcRWDOrg.js";import"./chunk-KSCS5N6A-BZrceHGX.js";import"./index-D5tmHkO_.js";import"./chunk-FMBD7UC4-CiWgEw8O.js";import"./chunk-ND2GUHAM-DHtjIa8_.js";import"./chunk-55IACEB6-aqMcRzKm.js";import"./chunk-2J33WTMH-DaEvWRZX.js";import{i as t,n,r,t as i}from"./chunk-727SXJPM-c1bbIj6N.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
|
|
2
|
-
//# sourceMappingURL=classDiagram-v2-Q7XG4LA2-Dc4jeSLj.js.map
|