@layers-app/editor 0.7.18 → 0.7.21

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.
Files changed (249) hide show
  1. package/dist/index.cjs +2 -2
  2. package/dist/index.d.ts +77 -1
  3. package/dist/index.js +15 -9
  4. package/dist/layers.-s__T3tP.js +1 -0
  5. package/dist/layers.04i4fkj7.js +6 -0
  6. package/dist/layers.1SzEqGRR.js +41 -0
  7. package/dist/layers.2dTBEhuc.js +2 -0
  8. package/dist/layers.52famHy6.js +1 -0
  9. package/dist/layers.58bCw_aL.js +4 -0
  10. package/dist/layers.5RtCiK8q.js +9 -0
  11. package/dist/layers.69cwQogW.js +40 -0
  12. package/dist/layers.6QD9G4kN.js +3 -0
  13. package/dist/layers.7JqFgE4-.js +15 -0
  14. package/dist/layers.86s2RIyn.js +8 -0
  15. package/dist/layers.8Sq63dkZ.js +27040 -0
  16. package/dist/layers.9j1NNMqz.js +22 -0
  17. package/dist/layers.9pNaFvaX.js +1 -0
  18. package/dist/layers.AYn1Jxgj.js +8 -0
  19. package/dist/layers.B-Fl_3EP.js +32 -0
  20. package/dist/layers.B0Xg4d5i.js +7 -0
  21. package/dist/layers.B0lSXbHP.js +10 -0
  22. package/dist/layers.B19hGmey.js +1 -0
  23. package/dist/layers.B3-xvp4C.js +39 -0
  24. package/dist/layers.B3D4g2HH.js +1 -0
  25. package/dist/layers.B3JU7UM6.js +2 -0
  26. package/dist/layers.B3gbBlxh.js +84 -0
  27. package/dist/layers.B4y9a-82.js +1 -0
  28. package/dist/layers.B5HBOY_H.js +37 -0
  29. package/dist/layers.B5gZXeOB.js +960 -0
  30. package/dist/layers.B7K7JjK6.js +1510 -0
  31. package/dist/layers.B7OVZYzM.js +1 -0
  32. package/dist/layers.B7a0NihO.js +32 -0
  33. package/dist/layers.B9bIdW-1.js +8 -0
  34. package/dist/layers.BAbr267F.js +8 -0
  35. package/dist/layers.BAtv1CM7.js +1 -0
  36. package/dist/layers.BE3zY9BD.js +7 -0
  37. package/dist/layers.BENQ0QOR.js +37 -0
  38. package/dist/layers.BEsv0Vnh.js +10 -0
  39. package/dist/layers.BGVB62eh.js +10 -0
  40. package/dist/layers.BHbCCtHz.js +41 -0
  41. package/dist/layers.BHnnpXsE.js +794 -0
  42. package/dist/layers.BIeVwYKL.js +1 -0
  43. package/dist/layers.BJDrjORS.js +244 -0
  44. package/dist/layers.BKP1mQ8Z.js +11 -0
  45. package/dist/layers.BLUIfQT4.js +11 -0
  46. package/dist/layers.BLd2spTm.js +1 -0
  47. package/dist/layers.BLwsSbt1.js +5 -0
  48. package/dist/layers.BPo1StNd.js +10 -0
  49. package/dist/layers.BQOvCWpV.js +2966 -0
  50. package/dist/layers.BRj7WXSC.js +1268 -0
  51. package/dist/layers.BSOcI_W1.js +271 -0
  52. package/dist/layers.BSTBZrFn.js +1 -0
  53. package/dist/layers.BU7Z5I9s.js +38 -0
  54. package/dist/layers.BVP5J-o1.js +257 -0
  55. package/dist/layers.BW2tS16y.js +9 -0
  56. package/dist/layers.BWg0ESYB.js +10 -0
  57. package/dist/layers.BXK1dt1S.js +38 -0
  58. package/dist/layers.BXTk_2Zm.js +118 -0
  59. package/dist/layers.BXe_WrOI.js +223 -0
  60. package/dist/layers.BXqUT1rh.js +1 -0
  61. package/dist/layers.Ba2h-Mfy.js +8 -0
  62. package/dist/layers.BbCfEXyj.js +55 -0
  63. package/dist/layers.Bc0qQQCc.js +1089 -0
  64. package/dist/layers.Bci9vDR2.js +6 -0
  65. package/dist/layers.Bcv8luEU.js +40 -0
  66. package/dist/layers.BearaZFa.js +1 -0
  67. package/dist/layers.Bfe4gpo5.js +41 -0
  68. package/dist/layers.BjO63vzU.js +4 -0
  69. package/dist/layers.Bl2p9wCy.js +10 -0
  70. package/dist/layers.BoVXqWbw.js +7 -0
  71. package/dist/layers.BpilXLfW.js +6 -0
  72. package/dist/layers.BqD_vPBO.js +32 -0
  73. package/dist/layers.BqG-mFfW.js +129 -0
  74. package/dist/layers.BrEfKAWB.js +8 -0
  75. package/dist/layers.BtA2IPBg.js +2482 -0
  76. package/dist/layers.BuCZq_Yw.js +1088 -0
  77. package/dist/layers.BuidC-N0.js +7 -0
  78. package/dist/layers.BwCq95j_.js +323 -0
  79. package/dist/layers.BxlM82Ik.js +42 -0
  80. package/dist/layers.BzuIw3LZ.js +1 -0
  81. package/dist/layers.C14GGmi8.js +1034 -0
  82. package/dist/layers.C2-FVR7k.js +40 -0
  83. package/dist/layers.C7dDGsdF.js +42 -0
  84. package/dist/layers.C8_lu5UH.js +23 -0
  85. package/dist/layers.C8bZft3d.js +1 -0
  86. package/dist/layers.CAGUssIj.js +39 -0
  87. package/dist/layers.CBhcfmKp.js +5 -0
  88. package/dist/layers.CBpxlm8J.js +1 -0
  89. package/dist/layers.CCi4tZEO.js +40 -0
  90. package/dist/layers.CCoKyGC6.js +423 -0
  91. package/dist/layers.CCyL2a0C.js +32 -0
  92. package/dist/layers.CHPa6_hS.js +1 -0
  93. package/dist/layers.CHZsXQcr.js +1 -0
  94. package/dist/layers.CLe82baP.js +38 -0
  95. package/dist/layers.CPMeVdt2.js +41 -0
  96. package/dist/layers.CQu2Kko1.js +139 -0
  97. package/dist/layers.CU-OGZof.js +41 -0
  98. package/dist/layers.CUP8yh26.js +9 -0
  99. package/dist/layers.CW0o_41a.js +36 -0
  100. package/dist/layers.CXxqYC1P.js +32 -0
  101. package/dist/layers.CYc8mNrI.js +8 -0
  102. package/dist/layers.CYotqhj5.js +1 -0
  103. package/dist/layers.C_IvrzZ3.js +7 -0
  104. package/dist/layers.C_nzdIcU.js +796 -0
  105. package/dist/layers.CaZtZB64.js +52 -0
  106. package/dist/layers.Ca_1CfOY.js +37 -0
  107. package/dist/layers.CanwFigF.js +11 -0
  108. package/dist/layers.Cb3j9TFj.js +198 -0
  109. package/dist/layers.CcPt099-.js +2238 -0
  110. package/dist/layers.CcbyELpn.js +39 -0
  111. package/dist/layers.Cd4iO7WE.js +437 -0
  112. package/dist/layers.Ce-Nta51.js +122 -0
  113. package/dist/layers.Cf67WsyM.js +116 -0
  114. package/dist/layers.CfwLs1b3.js +37 -0
  115. package/dist/layers.CgY2NiOs.js +76 -0
  116. package/dist/layers.Cgh_u2i4.js +96 -0
  117. package/dist/layers.CguGzf0B.js +48149 -0
  118. package/dist/layers.CjQa4sdf.js +1 -0
  119. package/dist/layers.Cl5Z_Igi.js +1 -0
  120. package/dist/layers.Cl6FTJOT.js +61 -0
  121. package/dist/layers.ClqPdhw8.js +10 -0
  122. package/dist/layers.CltSFkYd.js +9 -0
  123. package/dist/{layers.D99OBX9u.js → layers.CmSzOG_o.js} +88 -86
  124. package/dist/layers.CmknWZiw.js +41 -0
  125. package/dist/layers.CnEOgwwC.js +39 -0
  126. package/dist/layers.CoGQvGYd.js +1 -0
  127. package/dist/layers.CpUEfi8o.js +36 -0
  128. package/dist/layers.CqVTtuYm.js +6 -0
  129. package/dist/layers.CusQc89U.js +4 -0
  130. package/dist/layers.Cv99Mgzq.js +11 -0
  131. package/dist/layers.CvsQlQrZ.js +295 -0
  132. package/dist/layers.Cxwmnhaz.js +13 -0
  133. package/dist/layers.Cyzu9PKQ.js +1 -0
  134. package/dist/layers.D-0SV7pN.js +39 -0
  135. package/dist/layers.D-Igy3Ua.js +40 -0
  136. package/dist/layers.D0zn4_Mx.js +1 -0
  137. package/dist/layers.D1LcBaAa.js +8 -0
  138. package/dist/layers.D1uJtsEg.js +41 -0
  139. package/dist/layers.D2zC70FX.js +2 -0
  140. package/dist/layers.D3bZoMx9.js +160 -0
  141. package/dist/layers.D4MKjja_.js +14 -0
  142. package/dist/layers.D4T8fTcj.js +1223 -0
  143. package/dist/layers.D6RxNPR2.js +1 -0
  144. package/dist/layers.D7jGxypv.js +8 -0
  145. package/dist/layers.D7kC0dCu.js +40 -0
  146. package/dist/layers.DCXvGSyA.js +271 -0
  147. package/dist/layers.DFQczRzZ.js +1286 -0
  148. package/dist/layers.DFQlsoOR.js +934 -0
  149. package/dist/layers.DHLN2SKV.js +213 -0
  150. package/dist/layers.DI1Px4LZ.js +1583 -0
  151. package/dist/layers.DIBXDI6n.js +11 -0
  152. package/dist/layers.DIZ_l0f6.js +1619 -0
  153. package/dist/layers.DIv8Ha88.js +6 -0
  154. package/dist/layers.DJ4l6yZ3.js +1 -0
  155. package/dist/layers.DJBIRB9P.js +40 -0
  156. package/dist/layers.DJO_9mJR.js +4 -0
  157. package/dist/layers.DJPr9JJL.js +806 -0
  158. package/dist/layers.DLa3syby.js +10 -0
  159. package/dist/layers.DLwuMfdd.js +84 -0
  160. package/dist/layers.DMkBISW1.js +1 -0
  161. package/dist/layers.DN-DRFO4.js +33 -0
  162. package/dist/layers.DN9HoVxI.js +18 -0
  163. package/dist/layers.DOIO1344.js +42 -0
  164. package/dist/layers.DOrgOHBr.js +1 -0
  165. package/dist/layers.DR0_dy2n.js +772 -0
  166. package/dist/layers.DS-UxTef.js +205 -0
  167. package/dist/layers.DSKXf25Y.js +51 -0
  168. package/dist/layers.DSnFA-e0.js +36 -0
  169. package/dist/layers.DV8OLPia.js +35 -0
  170. package/dist/layers.DV9x_QzT.js +42 -0
  171. package/dist/layers.DXSbtNid.js +84 -0
  172. package/dist/layers.DYYItiu_.js +7 -0
  173. package/dist/layers.DYhtNvuX.js +65 -0
  174. package/dist/layers.DYiXaBMd.js +5 -0
  175. package/dist/layers.D_dfc6vG.js +139 -0
  176. package/dist/layers.D_zh-C-v.js +44 -0
  177. package/dist/layers.DbaKVP5e.js +1 -0
  178. package/dist/layers.Dfi_IB-0.js +1 -0
  179. package/dist/layers.Dj5SqV0K.js +1126 -0
  180. package/dist/layers.DjUOC4st.js +16 -0
  181. package/dist/layers.Dl7SEeb9.js +373 -0
  182. package/dist/layers.DlaGxCQI.js +6 -0
  183. package/dist/layers.DlseyPwp.js +9 -0
  184. package/dist/layers.DmxpB0Ld.js +39 -0
  185. package/dist/layers.Dn9sJSEy.js +1 -0
  186. package/dist/layers.DoTYGKth.js +9 -0
  187. package/dist/layers.Dof3PZvm.js +1 -0
  188. package/dist/layers.Doi5KI9F.js +1 -0
  189. package/dist/layers.Dq4zYIfC.js +7 -0
  190. package/dist/layers.DqHBlOg-.js +21941 -0
  191. package/dist/layers.DqpUYYTt.js +6 -0
  192. package/dist/layers.DrXdyG3Q.js +805 -0
  193. package/dist/layers.DrY_iQOk.js +70 -0
  194. package/dist/layers.Dtfu1_0i.js +35 -0
  195. package/dist/layers.DudnxBYL.js +8583 -0
  196. package/dist/layers.Dur5__LU.js +5 -0
  197. package/dist/layers.DwbZ0BBM.js +8 -0
  198. package/dist/layers.DxA6ocdw.js +70 -0
  199. package/dist/layers.Dy1naDTQ.js +14 -0
  200. package/dist/layers.DyswrxrZ.js +41 -0
  201. package/dist/layers.FxMjbkmf.js +34 -0
  202. package/dist/layers.HxXfnDxz.js +21336 -0
  203. package/dist/layers.JWCLFILJ.js +1 -0
  204. package/dist/layers.JdaN319C.js +1 -0
  205. package/dist/layers.JfY-At5A.js +7 -0
  206. package/dist/layers.MKp36N_b.js +36 -0
  207. package/dist/layers.OGmEyOFd.js +9 -0
  208. package/dist/layers.P0VXEM5n.js +9 -0
  209. package/dist/layers.PY5vr5EY.js +1 -0
  210. package/dist/layers.QfqvN0di.js +33 -0
  211. package/dist/layers.R8mPlCA0.js +261 -0
  212. package/dist/layers.Tp_UAZiz.js +5 -0
  213. package/dist/layers.UmFryx8m.js +1 -0
  214. package/dist/layers.VIA8sOZr.js +207 -0
  215. package/dist/layers.W54fHbsH.js +9 -0
  216. package/dist/layers.XQKBFj8F.js +40 -0
  217. package/dist/layers.Xuid21m7.js +10 -0
  218. package/dist/layers.YTXUQK8S.js +39 -0
  219. package/dist/layers.b0h5ZBmD.js +61 -0
  220. package/dist/layers.b9B2NY7n.js +11690 -0
  221. package/dist/layers.bgNJ7rmI.js +7 -0
  222. package/dist/layers.cxMp5Xa0.js +40 -0
  223. package/dist/layers.fV5OYtz9.js +32 -0
  224. package/dist/layers.goR33Dn9.js +907 -0
  225. package/dist/layers.hHZAR7op.js +10 -0
  226. package/dist/layers.iD1IDlF-.js +8 -0
  227. package/dist/layers.icLvHK2o.js +504 -0
  228. package/dist/layers.jk1Y4Qup.js +6 -0
  229. package/dist/layers.lCpg7dOn.js +21 -0
  230. package/dist/layers.lW1mE-6u.js +1 -0
  231. package/dist/layers.lgiOeULL.js +39 -0
  232. package/dist/layers.mzdQbLys.js +40 -0
  233. package/dist/layers.nVLjsNoD.js +425 -0
  234. package/dist/layers.nf66LION.js +39 -0
  235. package/dist/layers.qLka9pGz.js +189 -0
  236. package/dist/layers.sP6EpGSd.js +1 -0
  237. package/dist/layers.uXNouSNW.js +1 -0
  238. package/dist/layers.uiGbxBln.js +42 -0
  239. package/dist/layers.wYs3Gn-e.js +9 -0
  240. package/dist/layers.ysXw42a5.js +35 -0
  241. package/dist/layers.z25N8Ql-.js +1225 -0
  242. package/package.json +2 -2
  243. package/dist/layers.94hwidA2.js +0 -198
  244. package/dist/layers.B4l6ta1Q.js +0 -1
  245. package/dist/layers.BMrOAD_P.js +0 -1
  246. package/dist/layers.DOzLBYZr.js +0 -304
  247. package/dist/layers.YRyXopy_.js +0 -151
  248. package/dist/layers.usKC_Id5.js +0 -1
  249. package/dist/layers.zu-IYGYU.js +0 -47463
@@ -0,0 +1,907 @@
1
+ import { s as vt, a as Lt, n as bt, o as Ct, b as zt, c as Et, g as yt, l as ot, d as gt, e as Dt, q as It, P as D, Q as Bt, i as wt } from "./layers.DudnxBYL.js";
2
+ import "./layers.HxXfnDxz.js";
3
+ import "lodash-es/memoize.js";
4
+ import "lodash-es/merge.js";
5
+ import "lodash-es/isEmpty.js";
6
+ import { l as _t } from "./layers.CCoKyGC6.js";
7
+ var pt = (function() {
8
+ var e = function(K, n, r, l) {
9
+ for (r = r || {}, l = K.length; l--; r[K[l]] = n)
10
+ ;
11
+ return r;
12
+ }, s = [1, 3], h = [1, 4], x = [1, 5], f = [1, 6], d = [1, 7], c = [1, 5, 13, 15, 17, 19, 20, 25, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], g = [1, 5, 6, 13, 15, 17, 19, 20, 25, 27, 28, 29, 30, 31, 32, 33, 34, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50], i = [32, 33, 34], y = [2, 7], p = [1, 13], B = [1, 17], N = [1, 18], V = [1, 19], I = [1, 20], b = [1, 21], M = [1, 22], X = [1, 23], C = [1, 24], it = [1, 25], at = [1, 26], nt = [1, 27], Q = [1, 30], U = [1, 31], T = [1, 32], _ = [1, 33], m = [1, 34], t = [1, 35], A = [1, 36], S = [1, 37], k = [1, 38], F = [1, 39], P = [1, 40], v = [1, 41], L = [1, 42], O = [1, 57], Y = [1, 58], z = [5, 22, 26, 32, 33, 34, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51], ht = {
13
+ trace: function() {
14
+ },
15
+ yy: {},
16
+ symbols_: { error: 2, start: 3, eol: 4, SPACE: 5, QUADRANT: 6, document: 7, line: 8, statement: 9, axisDetails: 10, quadrantDetails: 11, points: 12, title: 13, title_value: 14, acc_title: 15, acc_title_value: 16, acc_descr: 17, acc_descr_value: 18, acc_descr_multiline_value: 19, section: 20, text: 21, point_start: 22, point_x: 23, point_y: 24, "X-AXIS": 25, "AXIS-TEXT-DELIMITER": 26, "Y-AXIS": 27, QUADRANT_1: 28, QUADRANT_2: 29, QUADRANT_3: 30, QUADRANT_4: 31, NEWLINE: 32, SEMI: 33, EOF: 34, alphaNumToken: 35, textNoTagsToken: 36, STR: 37, MD_STR: 38, alphaNum: 39, PUNCTUATION: 40, AMP: 41, NUM: 42, ALPHA: 43, COMMA: 44, PLUS: 45, EQUALS: 46, MULT: 47, DOT: 48, BRKT: 49, UNDERSCORE: 50, MINUS: 51, $accept: 0, $end: 1 },
17
+ terminals_: { 2: "error", 5: "SPACE", 6: "QUADRANT", 13: "title", 14: "title_value", 15: "acc_title", 16: "acc_title_value", 17: "acc_descr", 18: "acc_descr_value", 19: "acc_descr_multiline_value", 20: "section", 22: "point_start", 23: "point_x", 24: "point_y", 25: "X-AXIS", 26: "AXIS-TEXT-DELIMITER", 27: "Y-AXIS", 28: "QUADRANT_1", 29: "QUADRANT_2", 30: "QUADRANT_3", 31: "QUADRANT_4", 32: "NEWLINE", 33: "SEMI", 34: "EOF", 37: "STR", 38: "MD_STR", 40: "PUNCTUATION", 41: "AMP", 42: "NUM", 43: "ALPHA", 44: "COMMA", 45: "PLUS", 46: "EQUALS", 47: "MULT", 48: "DOT", 49: "BRKT", 50: "UNDERSCORE", 51: "MINUS" },
18
+ productions_: [0, [3, 2], [3, 2], [3, 2], [7, 0], [7, 2], [8, 2], [9, 0], [9, 2], [9, 1], [9, 1], [9, 1], [9, 2], [9, 2], [9, 2], [9, 1], [9, 1], [12, 4], [10, 4], [10, 3], [10, 2], [10, 4], [10, 3], [10, 2], [11, 2], [11, 2], [11, 2], [11, 2], [4, 1], [4, 1], [4, 1], [21, 1], [21, 2], [21, 1], [21, 1], [39, 1], [39, 2], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [35, 1], [36, 1], [36, 1], [36, 1]],
19
+ performAction: function(n, r, l, o, q, a, et) {
20
+ var u = a.length - 1;
21
+ switch (q) {
22
+ case 12:
23
+ this.$ = a[u].trim(), o.setDiagramTitle(this.$);
24
+ break;
25
+ case 13:
26
+ this.$ = a[u].trim(), o.setAccTitle(this.$);
27
+ break;
28
+ case 14:
29
+ case 15:
30
+ this.$ = a[u].trim(), o.setAccDescription(this.$);
31
+ break;
32
+ case 16:
33
+ o.addSection(a[u].substr(8)), this.$ = a[u].substr(8);
34
+ break;
35
+ case 17:
36
+ o.addPoint(a[u - 3], a[u - 1], a[u]);
37
+ break;
38
+ case 18:
39
+ o.setXAxisLeftText(a[u - 2]), o.setXAxisRightText(a[u]);
40
+ break;
41
+ case 19:
42
+ a[u - 1].text += " ⟶ ", o.setXAxisLeftText(a[u - 1]);
43
+ break;
44
+ case 20:
45
+ o.setXAxisLeftText(a[u]);
46
+ break;
47
+ case 21:
48
+ o.setYAxisBottomText(a[u - 2]), o.setYAxisTopText(a[u]);
49
+ break;
50
+ case 22:
51
+ a[u - 1].text += " ⟶ ", o.setYAxisBottomText(a[u - 1]);
52
+ break;
53
+ case 23:
54
+ o.setYAxisBottomText(a[u]);
55
+ break;
56
+ case 24:
57
+ o.setQuadrant1Text(a[u]);
58
+ break;
59
+ case 25:
60
+ o.setQuadrant2Text(a[u]);
61
+ break;
62
+ case 26:
63
+ o.setQuadrant3Text(a[u]);
64
+ break;
65
+ case 27:
66
+ o.setQuadrant4Text(a[u]);
67
+ break;
68
+ case 31:
69
+ this.$ = { text: a[u], type: "text" };
70
+ break;
71
+ case 32:
72
+ this.$ = { text: a[u - 1].text + "" + a[u], type: a[u - 1].type };
73
+ break;
74
+ case 33:
75
+ this.$ = { text: a[u], type: "text" };
76
+ break;
77
+ case 34:
78
+ this.$ = { text: a[u], type: "markdown" };
79
+ break;
80
+ case 35:
81
+ this.$ = a[u];
82
+ break;
83
+ case 36:
84
+ this.$ = a[u - 1] + "" + a[u];
85
+ break;
86
+ }
87
+ },
88
+ table: [{ 3: 1, 4: 2, 5: s, 6: h, 32: x, 33: f, 34: d }, { 1: [3] }, { 3: 8, 4: 2, 5: s, 6: h, 32: x, 33: f, 34: d }, { 3: 9, 4: 2, 5: s, 6: h, 32: x, 33: f, 34: d }, e(c, [2, 4], { 7: 10 }), e(g, [2, 28]), e(g, [2, 29]), e(g, [2, 30]), { 1: [2, 1] }, { 1: [2, 2] }, e(i, y, { 8: 11, 9: 12, 10: 14, 11: 15, 12: 16, 21: 28, 35: 29, 1: [2, 3], 5: p, 13: B, 15: N, 17: V, 19: I, 20: b, 25: M, 27: X, 28: C, 29: it, 30: at, 31: nt, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }), e(c, [2, 5]), { 4: 43, 32: x, 33: f, 34: d }, e(i, y, { 10: 14, 11: 15, 12: 16, 21: 28, 35: 29, 9: 44, 5: p, 13: B, 15: N, 17: V, 19: I, 20: b, 25: M, 27: X, 28: C, 29: it, 30: at, 31: nt, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }), e(i, [2, 9]), e(i, [2, 10]), e(i, [2, 11]), { 14: [1, 45] }, { 16: [1, 46] }, { 18: [1, 47] }, e(i, [2, 15]), e(i, [2, 16]), { 21: 48, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 21: 49, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 21: 50, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 21: 51, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 21: 52, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 21: 53, 35: 29, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }, { 5: O, 22: [1, 54], 35: 56, 36: 55, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }, e(z, [2, 31]), e(z, [2, 33]), e(z, [2, 34]), e(z, [2, 37]), e(z, [2, 38]), e(z, [2, 39]), e(z, [2, 40]), e(z, [2, 41]), e(z, [2, 42]), e(z, [2, 43]), e(z, [2, 44]), e(z, [2, 45]), e(z, [2, 46]), e(z, [2, 47]), e(c, [2, 6]), e(i, [2, 8]), e(i, [2, 12]), e(i, [2, 13]), e(i, [2, 14]), e(i, [2, 20], { 36: 55, 35: 56, 5: O, 26: [1, 59], 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 23], { 36: 55, 35: 56, 5: O, 26: [1, 60], 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 24], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 25], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 26], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 27], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), { 23: [1, 61] }, e(z, [2, 32]), e(z, [2, 48]), e(z, [2, 49]), e(z, [2, 50]), e(i, [2, 19], { 35: 29, 21: 62, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }), e(i, [2, 22], { 35: 29, 21: 63, 37: Q, 38: U, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L }), { 24: [1, 64] }, e(i, [2, 18], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 21], { 36: 55, 35: 56, 5: O, 40: T, 41: _, 42: m, 43: t, 44: A, 45: S, 46: k, 47: F, 48: P, 49: v, 50: L, 51: Y }), e(i, [2, 17])],
89
+ defaultActions: { 8: [2, 1], 9: [2, 2] },
90
+ parseError: function(n, r) {
91
+ if (r.recoverable)
92
+ this.trace(n);
93
+ else {
94
+ var l = new Error(n);
95
+ throw l.hash = r, l;
96
+ }
97
+ },
98
+ parse: function(n) {
99
+ var r = this, l = [0], o = [], q = [null], a = [], et = this.table, u = "", st = 0, qt = 0, St = 2, Tt = 1, kt = a.slice.call(arguments, 1), E = Object.create(this.lexer), Z = { yy: {} };
100
+ for (var dt in this.yy)
101
+ Object.prototype.hasOwnProperty.call(this.yy, dt) && (Z.yy[dt] = this.yy[dt]);
102
+ E.setInput(n, Z.yy), Z.yy.lexer = E, Z.yy.parser = this, typeof E.yylloc > "u" && (E.yylloc = {});
103
+ var ut = E.yylloc;
104
+ a.push(ut);
105
+ var Ft = E.options && E.options.ranges;
106
+ typeof Z.yy.parseError == "function" ? this.parseError = Z.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
107
+ function Pt() {
108
+ var j;
109
+ return j = o.pop() || E.lex() || Tt, typeof j != "number" && (j instanceof Array && (o = j, j = o.pop()), j = r.symbols_[j] || j), j;
110
+ }
111
+ for (var W, J, H, xt, tt = {}, rt, $, mt, lt; ; ) {
112
+ if (J = l[l.length - 1], this.defaultActions[J] ? H = this.defaultActions[J] : ((W === null || typeof W > "u") && (W = Pt()), H = et[J] && et[J][W]), typeof H > "u" || !H.length || !H[0]) {
113
+ var ft = "";
114
+ lt = [];
115
+ for (rt in et[J])
116
+ this.terminals_[rt] && rt > St && lt.push("'" + this.terminals_[rt] + "'");
117
+ E.showPosition ? ft = "Parse error on line " + (st + 1) + `:
118
+ ` + E.showPosition() + `
119
+ Expecting ` + lt.join(", ") + ", got '" + (this.terminals_[W] || W) + "'" : ft = "Parse error on line " + (st + 1) + ": Unexpected " + (W == Tt ? "end of input" : "'" + (this.terminals_[W] || W) + "'"), this.parseError(ft, {
120
+ text: E.match,
121
+ token: this.terminals_[W] || W,
122
+ line: E.yylineno,
123
+ loc: ut,
124
+ expected: lt
125
+ });
126
+ }
127
+ if (H[0] instanceof Array && H.length > 1)
128
+ throw new Error("Parse Error: multiple actions possible at state: " + J + ", token: " + W);
129
+ switch (H[0]) {
130
+ case 1:
131
+ l.push(W), q.push(E.yytext), a.push(E.yylloc), l.push(H[1]), W = null, qt = E.yyleng, u = E.yytext, st = E.yylineno, ut = E.yylloc;
132
+ break;
133
+ case 2:
134
+ if ($ = this.productions_[H[1]][1], tt.$ = q[q.length - $], tt._$ = {
135
+ first_line: a[a.length - ($ || 1)].first_line,
136
+ last_line: a[a.length - 1].last_line,
137
+ first_column: a[a.length - ($ || 1)].first_column,
138
+ last_column: a[a.length - 1].last_column
139
+ }, Ft && (tt._$.range = [
140
+ a[a.length - ($ || 1)].range[0],
141
+ a[a.length - 1].range[1]
142
+ ]), xt = this.performAction.apply(tt, [
143
+ u,
144
+ qt,
145
+ st,
146
+ Z.yy,
147
+ H[1],
148
+ q,
149
+ a
150
+ ].concat(kt)), typeof xt < "u")
151
+ return xt;
152
+ $ && (l = l.slice(0, -1 * $ * 2), q = q.slice(0, -1 * $), a = a.slice(0, -1 * $)), l.push(this.productions_[H[1]][0]), q.push(tt.$), a.push(tt._$), mt = et[l[l.length - 2]][l[l.length - 1]], l.push(mt);
153
+ break;
154
+ case 3:
155
+ return !0;
156
+ }
157
+ }
158
+ return !0;
159
+ }
160
+ }, At = /* @__PURE__ */ (function() {
161
+ var K = {
162
+ EOF: 1,
163
+ parseError: function(r, l) {
164
+ if (this.yy.parser)
165
+ this.yy.parser.parseError(r, l);
166
+ else
167
+ throw new Error(r);
168
+ },
169
+ // resets the lexer, sets new input
170
+ setInput: function(n, r) {
171
+ return this.yy = r || this.yy || {}, this._input = n, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
172
+ first_line: 1,
173
+ first_column: 0,
174
+ last_line: 1,
175
+ last_column: 0
176
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
177
+ },
178
+ // consumes and returns one char from the input
179
+ input: function() {
180
+ var n = this._input[0];
181
+ this.yytext += n, this.yyleng++, this.offset++, this.match += n, this.matched += n;
182
+ var r = n.match(/(?:\r\n?|\n).*/g);
183
+ return r ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), n;
184
+ },
185
+ // unshifts one char (or a string) into the input
186
+ unput: function(n) {
187
+ var r = n.length, l = n.split(/(?:\r\n?|\n)/g);
188
+ this._input = n + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - r), this.offset -= r;
189
+ var o = this.match.split(/(?:\r\n?|\n)/g);
190
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), l.length - 1 && (this.yylineno -= l.length - 1);
191
+ var q = this.yylloc.range;
192
+ return this.yylloc = {
193
+ first_line: this.yylloc.first_line,
194
+ last_line: this.yylineno + 1,
195
+ first_column: this.yylloc.first_column,
196
+ last_column: l ? (l.length === o.length ? this.yylloc.first_column : 0) + o[o.length - l.length].length - l[0].length : this.yylloc.first_column - r
197
+ }, this.options.ranges && (this.yylloc.range = [q[0], q[0] + this.yyleng - r]), this.yyleng = this.yytext.length, this;
198
+ },
199
+ // When called from action, caches matched text and appends it on next action
200
+ more: function() {
201
+ return this._more = !0, this;
202
+ },
203
+ // 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.
204
+ reject: function() {
205
+ if (this.options.backtrack_lexer)
206
+ this._backtrack = !0;
207
+ else
208
+ 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).
209
+ ` + this.showPosition(), {
210
+ text: "",
211
+ token: null,
212
+ line: this.yylineno
213
+ });
214
+ return this;
215
+ },
216
+ // retain first n characters of the match
217
+ less: function(n) {
218
+ this.unput(this.match.slice(n));
219
+ },
220
+ // displays already matched input, i.e. for error messages
221
+ pastInput: function() {
222
+ var n = this.matched.substr(0, this.matched.length - this.match.length);
223
+ return (n.length > 20 ? "..." : "") + n.substr(-20).replace(/\n/g, "");
224
+ },
225
+ // displays upcoming input, i.e. for error messages
226
+ upcomingInput: function() {
227
+ var n = this.match;
228
+ return n.length < 20 && (n += this._input.substr(0, 20 - n.length)), (n.substr(0, 20) + (n.length > 20 ? "..." : "")).replace(/\n/g, "");
229
+ },
230
+ // displays the character position where the lexing error occurred, i.e. for error messages
231
+ showPosition: function() {
232
+ var n = this.pastInput(), r = new Array(n.length + 1).join("-");
233
+ return n + this.upcomingInput() + `
234
+ ` + r + "^";
235
+ },
236
+ // test the lexed token: return FALSE when not a match, otherwise return token
237
+ test_match: function(n, r) {
238
+ var l, o, q;
239
+ if (this.options.backtrack_lexer && (q = {
240
+ yylineno: this.yylineno,
241
+ yylloc: {
242
+ first_line: this.yylloc.first_line,
243
+ last_line: this.last_line,
244
+ first_column: this.yylloc.first_column,
245
+ last_column: this.yylloc.last_column
246
+ },
247
+ yytext: this.yytext,
248
+ match: this.match,
249
+ matches: this.matches,
250
+ matched: this.matched,
251
+ yyleng: this.yyleng,
252
+ offset: this.offset,
253
+ _more: this._more,
254
+ _input: this._input,
255
+ yy: this.yy,
256
+ conditionStack: this.conditionStack.slice(0),
257
+ done: this.done
258
+ }, this.options.ranges && (q.yylloc.range = this.yylloc.range.slice(0))), o = n[0].match(/(?:\r\n?|\n).*/g), o && (this.yylineno += o.length), this.yylloc = {
259
+ first_line: this.yylloc.last_line,
260
+ last_line: this.yylineno + 1,
261
+ first_column: this.yylloc.last_column,
262
+ last_column: o ? o[o.length - 1].length - o[o.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + n[0].length
263
+ }, this.yytext += n[0], this.match += n[0], this.matches = n, 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(n[0].length), this.matched += n[0], l = this.performAction.call(this, this.yy, this, r, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), l)
264
+ return l;
265
+ if (this._backtrack) {
266
+ for (var a in q)
267
+ this[a] = q[a];
268
+ return !1;
269
+ }
270
+ return !1;
271
+ },
272
+ // return next match in input
273
+ next: function() {
274
+ if (this.done)
275
+ return this.EOF;
276
+ this._input || (this.done = !0);
277
+ var n, r, l, o;
278
+ this._more || (this.yytext = "", this.match = "");
279
+ for (var q = this._currentRules(), a = 0; a < q.length; a++)
280
+ if (l = this._input.match(this.rules[q[a]]), l && (!r || l[0].length > r[0].length)) {
281
+ if (r = l, o = a, this.options.backtrack_lexer) {
282
+ if (n = this.test_match(l, q[a]), n !== !1)
283
+ return n;
284
+ if (this._backtrack) {
285
+ r = !1;
286
+ continue;
287
+ } else
288
+ return !1;
289
+ } else if (!this.options.flex)
290
+ break;
291
+ }
292
+ return r ? (n = this.test_match(r, q[o]), n !== !1 ? n : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
293
+ ` + this.showPosition(), {
294
+ text: "",
295
+ token: null,
296
+ line: this.yylineno
297
+ });
298
+ },
299
+ // return next match that has a token
300
+ lex: function() {
301
+ var r = this.next();
302
+ return r || this.lex();
303
+ },
304
+ // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
305
+ begin: function(r) {
306
+ this.conditionStack.push(r);
307
+ },
308
+ // pop the previously active lexer condition state off the condition stack
309
+ popState: function() {
310
+ var r = this.conditionStack.length - 1;
311
+ return r > 0 ? this.conditionStack.pop() : this.conditionStack[0];
312
+ },
313
+ // produce the lexer rule set which is active for the currently active lexer condition state
314
+ _currentRules: function() {
315
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
316
+ },
317
+ // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
318
+ topState: function(r) {
319
+ return r = this.conditionStack.length - 1 - Math.abs(r || 0), r >= 0 ? this.conditionStack[r] : "INITIAL";
320
+ },
321
+ // alias for begin(condition)
322
+ pushState: function(r) {
323
+ this.begin(r);
324
+ },
325
+ // return the number of states currently on the stack
326
+ stateStackSize: function() {
327
+ return this.conditionStack.length;
328
+ },
329
+ options: { "case-insensitive": !0 },
330
+ performAction: function(r, l, o, q) {
331
+ switch (o) {
332
+ case 0:
333
+ break;
334
+ case 1:
335
+ break;
336
+ case 2:
337
+ return 32;
338
+ case 3:
339
+ break;
340
+ case 4:
341
+ return this.begin("title"), 13;
342
+ case 5:
343
+ return this.popState(), "title_value";
344
+ case 6:
345
+ return this.begin("acc_title"), 15;
346
+ case 7:
347
+ return this.popState(), "acc_title_value";
348
+ case 8:
349
+ return this.begin("acc_descr"), 17;
350
+ case 9:
351
+ return this.popState(), "acc_descr_value";
352
+ case 10:
353
+ this.begin("acc_descr_multiline");
354
+ break;
355
+ case 11:
356
+ this.popState();
357
+ break;
358
+ case 12:
359
+ return "acc_descr_multiline_value";
360
+ case 13:
361
+ return 25;
362
+ case 14:
363
+ return 27;
364
+ case 15:
365
+ return 26;
366
+ case 16:
367
+ return 28;
368
+ case 17:
369
+ return 29;
370
+ case 18:
371
+ return 30;
372
+ case 19:
373
+ return 31;
374
+ case 20:
375
+ this.begin("md_string");
376
+ break;
377
+ case 21:
378
+ return "MD_STR";
379
+ case 22:
380
+ this.popState();
381
+ break;
382
+ case 23:
383
+ this.begin("string");
384
+ break;
385
+ case 24:
386
+ this.popState();
387
+ break;
388
+ case 25:
389
+ return "STR";
390
+ case 26:
391
+ return this.begin("point_start"), 22;
392
+ case 27:
393
+ return this.begin("point_x"), 23;
394
+ case 28:
395
+ this.popState();
396
+ break;
397
+ case 29:
398
+ this.popState(), this.begin("point_y");
399
+ break;
400
+ case 30:
401
+ return this.popState(), 24;
402
+ case 31:
403
+ return 6;
404
+ case 32:
405
+ return 43;
406
+ case 33:
407
+ return "COLON";
408
+ case 34:
409
+ return 45;
410
+ case 35:
411
+ return 44;
412
+ case 36:
413
+ return 46;
414
+ case 37:
415
+ return 46;
416
+ case 38:
417
+ return 47;
418
+ case 39:
419
+ return 49;
420
+ case 40:
421
+ return 50;
422
+ case 41:
423
+ return 48;
424
+ case 42:
425
+ return 41;
426
+ case 43:
427
+ return 51;
428
+ case 44:
429
+ return 42;
430
+ case 45:
431
+ return 5;
432
+ case 46:
433
+ return 33;
434
+ case 47:
435
+ return 40;
436
+ case 48:
437
+ return 34;
438
+ }
439
+ },
440
+ rules: [/^(?:%%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:[\n\r]+)/i, /^(?:%%[^\n]*)/i, /^(?:title\b)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?: *x-axis *)/i, /^(?: *y-axis *)/i, /^(?: *--+> *)/i, /^(?: *quadrant-1 *)/i, /^(?: *quadrant-2 *)/i, /^(?: *quadrant-3 *)/i, /^(?: *quadrant-4 *)/i, /^(?:["][`])/i, /^(?:[^`"]+)/i, /^(?:[`]["])/i, /^(?:["])/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:\s*:\s*\[\s*)/i, /^(?:(1)|(0(.\d+)?))/i, /^(?:\s*\] *)/i, /^(?:\s*,\s*)/i, /^(?:(1)|(0(.\d+)?))/i, /^(?: *quadrantChart *)/i, /^(?:[A-Za-z]+)/i, /^(?::)/i, /^(?:\+)/i, /^(?:,)/i, /^(?:=)/i, /^(?:=)/i, /^(?:\*)/i, /^(?:#)/i, /^(?:[\_])/i, /^(?:\.)/i, /^(?:&)/i, /^(?:-)/i, /^(?:[0-9]+)/i, /^(?:\s)/i, /^(?:;)/i, /^(?:[!"#$%&'*+,-.`?\\_/])/i, /^(?:$)/i],
441
+ conditions: { point_y: { rules: [30], inclusive: !1 }, point_x: { rules: [29], inclusive: !1 }, point_start: { rules: [27, 28], inclusive: !1 }, acc_descr_multiline: { rules: [11, 12], inclusive: !1 }, acc_descr: { rules: [9], inclusive: !1 }, acc_title: { rules: [7], inclusive: !1 }, title: { rules: [5], inclusive: !1 }, md_string: { rules: [21, 22], inclusive: !1 }, string: { rules: [24, 25], inclusive: !1 }, INITIAL: { rules: [0, 1, 2, 3, 4, 6, 8, 10, 13, 14, 15, 16, 17, 18, 19, 20, 23, 26, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48], inclusive: !0 } }
442
+ };
443
+ return K;
444
+ })();
445
+ ht.lexer = At;
446
+ function ct() {
447
+ this.yy = {};
448
+ }
449
+ return ct.prototype = ht, ht.Parser = ct, new ct();
450
+ })();
451
+ pt.parser = pt;
452
+ const Rt = pt, R = Bt();
453
+ class Vt {
454
+ constructor() {
455
+ this.config = this.getDefaultConfig(), this.themeConfig = this.getDefaultThemeConfig(), this.data = this.getDefaultData();
456
+ }
457
+ getDefaultData() {
458
+ return {
459
+ titleText: "",
460
+ quadrant1Text: "",
461
+ quadrant2Text: "",
462
+ quadrant3Text: "",
463
+ quadrant4Text: "",
464
+ xAxisLeftText: "",
465
+ xAxisRightText: "",
466
+ yAxisBottomText: "",
467
+ yAxisTopText: "",
468
+ points: []
469
+ };
470
+ }
471
+ getDefaultConfig() {
472
+ var s, h, x, f, d, c, g, i, y, p, B, N, V, I, b, M, X, C;
473
+ return {
474
+ showXAxis: !0,
475
+ showYAxis: !0,
476
+ showTitle: !0,
477
+ chartHeight: ((s = D.quadrantChart) == null ? void 0 : s.chartWidth) || 500,
478
+ chartWidth: ((h = D.quadrantChart) == null ? void 0 : h.chartHeight) || 500,
479
+ titlePadding: ((x = D.quadrantChart) == null ? void 0 : x.titlePadding) || 10,
480
+ titleFontSize: ((f = D.quadrantChart) == null ? void 0 : f.titleFontSize) || 20,
481
+ quadrantPadding: ((d = D.quadrantChart) == null ? void 0 : d.quadrantPadding) || 5,
482
+ xAxisLabelPadding: ((c = D.quadrantChart) == null ? void 0 : c.xAxisLabelPadding) || 5,
483
+ yAxisLabelPadding: ((g = D.quadrantChart) == null ? void 0 : g.yAxisLabelPadding) || 5,
484
+ xAxisLabelFontSize: ((i = D.quadrantChart) == null ? void 0 : i.xAxisLabelFontSize) || 16,
485
+ yAxisLabelFontSize: ((y = D.quadrantChart) == null ? void 0 : y.yAxisLabelFontSize) || 16,
486
+ quadrantLabelFontSize: ((p = D.quadrantChart) == null ? void 0 : p.quadrantLabelFontSize) || 16,
487
+ quadrantTextTopPadding: ((B = D.quadrantChart) == null ? void 0 : B.quadrantTextTopPadding) || 5,
488
+ pointTextPadding: ((N = D.quadrantChart) == null ? void 0 : N.pointTextPadding) || 5,
489
+ pointLabelFontSize: ((V = D.quadrantChart) == null ? void 0 : V.pointLabelFontSize) || 12,
490
+ pointRadius: ((I = D.quadrantChart) == null ? void 0 : I.pointRadius) || 5,
491
+ xAxisPosition: ((b = D.quadrantChart) == null ? void 0 : b.xAxisPosition) || "top",
492
+ yAxisPosition: ((M = D.quadrantChart) == null ? void 0 : M.yAxisPosition) || "left",
493
+ quadrantInternalBorderStrokeWidth: ((X = D.quadrantChart) == null ? void 0 : X.quadrantInternalBorderStrokeWidth) || 1,
494
+ quadrantExternalBorderStrokeWidth: ((C = D.quadrantChart) == null ? void 0 : C.quadrantExternalBorderStrokeWidth) || 2
495
+ };
496
+ }
497
+ getDefaultThemeConfig() {
498
+ return {
499
+ quadrant1Fill: R.quadrant1Fill,
500
+ quadrant2Fill: R.quadrant2Fill,
501
+ quadrant3Fill: R.quadrant3Fill,
502
+ quadrant4Fill: R.quadrant4Fill,
503
+ quadrant1TextFill: R.quadrant1TextFill,
504
+ quadrant2TextFill: R.quadrant2TextFill,
505
+ quadrant3TextFill: R.quadrant3TextFill,
506
+ quadrant4TextFill: R.quadrant4TextFill,
507
+ quadrantPointFill: R.quadrantPointFill,
508
+ quadrantPointTextFill: R.quadrantPointTextFill,
509
+ quadrantXAxisTextFill: R.quadrantXAxisTextFill,
510
+ quadrantYAxisTextFill: R.quadrantYAxisTextFill,
511
+ quadrantTitleFill: R.quadrantTitleFill,
512
+ quadrantInternalBorderStrokeFill: R.quadrantInternalBorderStrokeFill,
513
+ quadrantExternalBorderStrokeFill: R.quadrantExternalBorderStrokeFill
514
+ };
515
+ }
516
+ clear() {
517
+ this.config = this.getDefaultConfig(), this.themeConfig = this.getDefaultThemeConfig(), this.data = this.getDefaultData(), ot.info("clear called");
518
+ }
519
+ setData(s) {
520
+ this.data = { ...this.data, ...s };
521
+ }
522
+ addPoints(s) {
523
+ this.data.points = [...s, ...this.data.points];
524
+ }
525
+ setConfig(s) {
526
+ ot.trace("setConfig called with: ", s), this.config = { ...this.config, ...s };
527
+ }
528
+ setThemeConfig(s) {
529
+ ot.trace("setThemeConfig called with: ", s), this.themeConfig = { ...this.themeConfig, ...s };
530
+ }
531
+ calculateSpace(s, h, x, f) {
532
+ const d = this.config.xAxisLabelPadding * 2 + this.config.xAxisLabelFontSize, c = {
533
+ top: s === "top" && h ? d : 0,
534
+ bottom: s === "bottom" && h ? d : 0
535
+ }, g = this.config.yAxisLabelPadding * 2 + this.config.yAxisLabelFontSize, i = {
536
+ left: this.config.yAxisPosition === "left" && x ? g : 0,
537
+ right: this.config.yAxisPosition === "right" && x ? g : 0
538
+ }, y = this.config.titleFontSize + this.config.titlePadding * 2, p = {
539
+ top: f ? y : 0
540
+ }, B = this.config.quadrantPadding + i.left, N = this.config.quadrantPadding + c.top + p.top, V = this.config.chartWidth - this.config.quadrantPadding * 2 - i.left - i.right, I = this.config.chartHeight - this.config.quadrantPadding * 2 - c.top - c.bottom - p.top, b = V / 2, M = I / 2;
541
+ return {
542
+ xAxisSpace: c,
543
+ yAxisSpace: i,
544
+ titleSpace: p,
545
+ quadrantSpace: {
546
+ quadrantLeft: B,
547
+ quadrantTop: N,
548
+ quadrantWidth: V,
549
+ quadrantHalfWidth: b,
550
+ quadrantHeight: I,
551
+ quadrantHalfHeight: M
552
+ }
553
+ };
554
+ }
555
+ getAxisLabels(s, h, x, f) {
556
+ const { quadrantSpace: d, titleSpace: c } = f, {
557
+ quadrantHalfHeight: g,
558
+ quadrantHeight: i,
559
+ quadrantLeft: y,
560
+ quadrantHalfWidth: p,
561
+ quadrantTop: B,
562
+ quadrantWidth: N
563
+ } = d, V = !!this.data.xAxisRightText, I = !!this.data.yAxisTopText, b = [];
564
+ return this.data.xAxisLeftText && h && b.push({
565
+ text: this.data.xAxisLeftText,
566
+ fill: this.themeConfig.quadrantXAxisTextFill,
567
+ x: y + (V ? p / 2 : 0),
568
+ y: s === "top" ? this.config.xAxisLabelPadding + c.top : this.config.xAxisLabelPadding + B + i + this.config.quadrantPadding,
569
+ fontSize: this.config.xAxisLabelFontSize,
570
+ verticalPos: V ? "center" : "left",
571
+ horizontalPos: "top",
572
+ rotation: 0
573
+ }), this.data.xAxisRightText && h && b.push({
574
+ text: this.data.xAxisRightText,
575
+ fill: this.themeConfig.quadrantXAxisTextFill,
576
+ x: y + p + (V ? p / 2 : 0),
577
+ y: s === "top" ? this.config.xAxisLabelPadding + c.top : this.config.xAxisLabelPadding + B + i + this.config.quadrantPadding,
578
+ fontSize: this.config.xAxisLabelFontSize,
579
+ verticalPos: V ? "center" : "left",
580
+ horizontalPos: "top",
581
+ rotation: 0
582
+ }), this.data.yAxisBottomText && x && b.push({
583
+ text: this.data.yAxisBottomText,
584
+ fill: this.themeConfig.quadrantYAxisTextFill,
585
+ x: this.config.yAxisPosition === "left" ? this.config.yAxisLabelPadding : this.config.yAxisLabelPadding + y + N + this.config.quadrantPadding,
586
+ y: B + i - (I ? g / 2 : 0),
587
+ fontSize: this.config.yAxisLabelFontSize,
588
+ verticalPos: I ? "center" : "left",
589
+ horizontalPos: "top",
590
+ rotation: -90
591
+ }), this.data.yAxisTopText && x && b.push({
592
+ text: this.data.yAxisTopText,
593
+ fill: this.themeConfig.quadrantYAxisTextFill,
594
+ x: this.config.yAxisPosition === "left" ? this.config.yAxisLabelPadding : this.config.yAxisLabelPadding + y + N + this.config.quadrantPadding,
595
+ y: B + g - (I ? g / 2 : 0),
596
+ fontSize: this.config.yAxisLabelFontSize,
597
+ verticalPos: I ? "center" : "left",
598
+ horizontalPos: "top",
599
+ rotation: -90
600
+ }), b;
601
+ }
602
+ getQuadrants(s) {
603
+ const { quadrantSpace: h } = s, { quadrantHalfHeight: x, quadrantLeft: f, quadrantHalfWidth: d, quadrantTop: c } = h, g = [
604
+ {
605
+ text: {
606
+ text: this.data.quadrant1Text,
607
+ fill: this.themeConfig.quadrant1TextFill,
608
+ x: 0,
609
+ y: 0,
610
+ fontSize: this.config.quadrantLabelFontSize,
611
+ verticalPos: "center",
612
+ horizontalPos: "middle",
613
+ rotation: 0
614
+ },
615
+ x: f + d,
616
+ y: c,
617
+ width: d,
618
+ height: x,
619
+ fill: this.themeConfig.quadrant1Fill
620
+ },
621
+ {
622
+ text: {
623
+ text: this.data.quadrant2Text,
624
+ fill: this.themeConfig.quadrant2TextFill,
625
+ x: 0,
626
+ y: 0,
627
+ fontSize: this.config.quadrantLabelFontSize,
628
+ verticalPos: "center",
629
+ horizontalPos: "middle",
630
+ rotation: 0
631
+ },
632
+ x: f,
633
+ y: c,
634
+ width: d,
635
+ height: x,
636
+ fill: this.themeConfig.quadrant2Fill
637
+ },
638
+ {
639
+ text: {
640
+ text: this.data.quadrant3Text,
641
+ fill: this.themeConfig.quadrant3TextFill,
642
+ x: 0,
643
+ y: 0,
644
+ fontSize: this.config.quadrantLabelFontSize,
645
+ verticalPos: "center",
646
+ horizontalPos: "middle",
647
+ rotation: 0
648
+ },
649
+ x: f,
650
+ y: c + x,
651
+ width: d,
652
+ height: x,
653
+ fill: this.themeConfig.quadrant3Fill
654
+ },
655
+ {
656
+ text: {
657
+ text: this.data.quadrant4Text,
658
+ fill: this.themeConfig.quadrant4TextFill,
659
+ x: 0,
660
+ y: 0,
661
+ fontSize: this.config.quadrantLabelFontSize,
662
+ verticalPos: "center",
663
+ horizontalPos: "middle",
664
+ rotation: 0
665
+ },
666
+ x: f + d,
667
+ y: c + x,
668
+ width: d,
669
+ height: x,
670
+ fill: this.themeConfig.quadrant4Fill
671
+ }
672
+ ];
673
+ for (const i of g)
674
+ i.text.x = i.x + i.width / 2, this.data.points.length === 0 ? (i.text.y = i.y + i.height / 2, i.text.horizontalPos = "middle") : (i.text.y = i.y + this.config.quadrantTextTopPadding, i.text.horizontalPos = "top");
675
+ return g;
676
+ }
677
+ getQuadrantPoints(s) {
678
+ const { quadrantSpace: h } = s, { quadrantHeight: x, quadrantLeft: f, quadrantTop: d, quadrantWidth: c } = h, g = _t().domain([0, 1]).range([f, c + f]), i = _t().domain([0, 1]).range([x + d, d]);
679
+ return this.data.points.map((p) => ({
680
+ x: g(p.x),
681
+ y: i(p.y),
682
+ fill: this.themeConfig.quadrantPointFill,
683
+ radius: this.config.pointRadius,
684
+ text: {
685
+ text: p.text,
686
+ fill: this.themeConfig.quadrantPointTextFill,
687
+ x: g(p.x),
688
+ y: i(p.y) + this.config.pointTextPadding,
689
+ verticalPos: "center",
690
+ horizontalPos: "top",
691
+ fontSize: this.config.pointLabelFontSize,
692
+ rotation: 0
693
+ }
694
+ }));
695
+ }
696
+ getBorders(s) {
697
+ const h = this.config.quadrantExternalBorderStrokeWidth / 2, { quadrantSpace: x } = s, {
698
+ quadrantHalfHeight: f,
699
+ quadrantHeight: d,
700
+ quadrantLeft: c,
701
+ quadrantHalfWidth: g,
702
+ quadrantTop: i,
703
+ quadrantWidth: y
704
+ } = x;
705
+ return [
706
+ // top border
707
+ {
708
+ strokeFill: this.themeConfig.quadrantExternalBorderStrokeFill,
709
+ strokeWidth: this.config.quadrantExternalBorderStrokeWidth,
710
+ x1: c - h,
711
+ y1: i,
712
+ x2: c + y + h,
713
+ y2: i
714
+ },
715
+ // right border
716
+ {
717
+ strokeFill: this.themeConfig.quadrantExternalBorderStrokeFill,
718
+ strokeWidth: this.config.quadrantExternalBorderStrokeWidth,
719
+ x1: c + y,
720
+ y1: i + h,
721
+ x2: c + y,
722
+ y2: i + d - h
723
+ },
724
+ // bottom border
725
+ {
726
+ strokeFill: this.themeConfig.quadrantExternalBorderStrokeFill,
727
+ strokeWidth: this.config.quadrantExternalBorderStrokeWidth,
728
+ x1: c - h,
729
+ y1: i + d,
730
+ x2: c + y + h,
731
+ y2: i + d
732
+ },
733
+ // left border
734
+ {
735
+ strokeFill: this.themeConfig.quadrantExternalBorderStrokeFill,
736
+ strokeWidth: this.config.quadrantExternalBorderStrokeWidth,
737
+ x1: c,
738
+ y1: i + h,
739
+ x2: c,
740
+ y2: i + d - h
741
+ },
742
+ // vertical inner border
743
+ {
744
+ strokeFill: this.themeConfig.quadrantInternalBorderStrokeFill,
745
+ strokeWidth: this.config.quadrantInternalBorderStrokeWidth,
746
+ x1: c + g,
747
+ y1: i + h,
748
+ x2: c + g,
749
+ y2: i + d - h
750
+ },
751
+ // horizontal inner border
752
+ {
753
+ strokeFill: this.themeConfig.quadrantInternalBorderStrokeFill,
754
+ strokeWidth: this.config.quadrantInternalBorderStrokeWidth,
755
+ x1: c + h,
756
+ y1: i + f,
757
+ x2: c + y - h,
758
+ y2: i + f
759
+ }
760
+ ];
761
+ }
762
+ getTitle(s) {
763
+ if (s)
764
+ return {
765
+ text: this.data.titleText,
766
+ fill: this.themeConfig.quadrantTitleFill,
767
+ fontSize: this.config.titleFontSize,
768
+ horizontalPos: "top",
769
+ verticalPos: "center",
770
+ rotation: 0,
771
+ y: this.config.titlePadding,
772
+ x: this.config.chartWidth / 2
773
+ };
774
+ }
775
+ build() {
776
+ const s = this.config.showXAxis && !!(this.data.xAxisLeftText || this.data.xAxisRightText), h = this.config.showYAxis && !!(this.data.yAxisTopText || this.data.yAxisBottomText), x = this.config.showTitle && !!this.data.titleText, f = this.data.points.length > 0 ? "bottom" : this.config.xAxisPosition, d = this.calculateSpace(f, s, h, x);
777
+ return {
778
+ points: this.getQuadrantPoints(d),
779
+ quadrants: this.getQuadrants(d),
780
+ axisLabels: this.getAxisLabels(f, s, h, d),
781
+ borderLines: this.getBorders(d),
782
+ title: this.getTitle(x)
783
+ };
784
+ }
785
+ }
786
+ const Wt = yt();
787
+ function G(e) {
788
+ return wt(e.trim(), Wt);
789
+ }
790
+ const w = new Vt();
791
+ function Nt(e) {
792
+ w.setData({ quadrant1Text: G(e.text) });
793
+ }
794
+ function Qt(e) {
795
+ w.setData({ quadrant2Text: G(e.text) });
796
+ }
797
+ function Ut(e) {
798
+ w.setData({ quadrant3Text: G(e.text) });
799
+ }
800
+ function Ht(e) {
801
+ w.setData({ quadrant4Text: G(e.text) });
802
+ }
803
+ function Mt(e) {
804
+ w.setData({ xAxisLeftText: G(e.text) });
805
+ }
806
+ function Xt(e) {
807
+ w.setData({ xAxisRightText: G(e.text) });
808
+ }
809
+ function Ot(e) {
810
+ w.setData({ yAxisTopText: G(e.text) });
811
+ }
812
+ function Yt(e) {
813
+ w.setData({ yAxisBottomText: G(e.text) });
814
+ }
815
+ function $t(e, s, h) {
816
+ w.addPoints([{ x: s, y: h, text: G(e.text) }]);
817
+ }
818
+ function jt(e) {
819
+ w.setConfig({ chartWidth: e });
820
+ }
821
+ function Gt(e) {
822
+ w.setConfig({ chartHeight: e });
823
+ }
824
+ function Kt() {
825
+ const e = yt(), { themeVariables: s, quadrantChart: h } = e;
826
+ return h && w.setConfig(h), w.setThemeConfig({
827
+ quadrant1Fill: s.quadrant1Fill,
828
+ quadrant2Fill: s.quadrant2Fill,
829
+ quadrant3Fill: s.quadrant3Fill,
830
+ quadrant4Fill: s.quadrant4Fill,
831
+ quadrant1TextFill: s.quadrant1TextFill,
832
+ quadrant2TextFill: s.quadrant2TextFill,
833
+ quadrant3TextFill: s.quadrant3TextFill,
834
+ quadrant4TextFill: s.quadrant4TextFill,
835
+ quadrantPointFill: s.quadrantPointFill,
836
+ quadrantPointTextFill: s.quadrantPointTextFill,
837
+ quadrantXAxisTextFill: s.quadrantXAxisTextFill,
838
+ quadrantYAxisTextFill: s.quadrantYAxisTextFill,
839
+ quadrantExternalBorderStrokeFill: s.quadrantExternalBorderStrokeFill,
840
+ quadrantInternalBorderStrokeFill: s.quadrantInternalBorderStrokeFill,
841
+ quadrantTitleFill: s.quadrantTitleFill
842
+ }), w.setData({ titleText: bt() }), w.build();
843
+ }
844
+ const Zt = function() {
845
+ w.clear(), It();
846
+ }, Jt = {
847
+ setWidth: jt,
848
+ setHeight: Gt,
849
+ setQuadrant1Text: Nt,
850
+ setQuadrant2Text: Qt,
851
+ setQuadrant3Text: Ut,
852
+ setQuadrant4Text: Ht,
853
+ setXAxisLeftText: Mt,
854
+ setXAxisRightText: Xt,
855
+ setYAxisTopText: Ot,
856
+ setYAxisBottomText: Yt,
857
+ addPoint: $t,
858
+ getQuadrantData: Kt,
859
+ clear: Zt,
860
+ setAccTitle: Et,
861
+ getAccTitle: zt,
862
+ setDiagramTitle: Ct,
863
+ getDiagramTitle: bt,
864
+ getAccDescription: Lt,
865
+ setAccDescription: vt
866
+ }, te = (e, s, h, x) => {
867
+ var f, d, c;
868
+ function g(t) {
869
+ return t === "top" ? "hanging" : "middle";
870
+ }
871
+ function i(t) {
872
+ return t === "left" ? "start" : "middle";
873
+ }
874
+ function y(t) {
875
+ return `translate(${t.x}, ${t.y}) rotate(${t.rotation || 0})`;
876
+ }
877
+ const p = yt();
878
+ ot.debug(`Rendering quadrant chart
879
+ ` + e);
880
+ const B = p.securityLevel;
881
+ let N;
882
+ B === "sandbox" && (N = gt("#i" + s));
883
+ const I = (B === "sandbox" ? gt(N.nodes()[0].contentDocument.body) : gt("body")).select(`[id="${s}"]`), b = I.append("g").attr("class", "main"), M = ((f = p.quadrantChart) == null ? void 0 : f.chartWidth) || 500, X = ((d = p.quadrantChart) == null ? void 0 : d.chartHeight) || 500;
884
+ Dt(I, X, M, ((c = p.quadrantChart) == null ? void 0 : c.useMaxWidth) || !0), I.attr("viewBox", "0 0 " + M + " " + X), x.db.setHeight(X), x.db.setWidth(M);
885
+ const C = x.db.getQuadrantData(), it = b.append("g").attr("class", "quadrants"), at = b.append("g").attr("class", "border"), nt = b.append("g").attr("class", "data-points"), Q = b.append("g").attr("class", "labels"), U = b.append("g").attr("class", "title");
886
+ C.title && U.append("text").attr("x", 0).attr("y", 0).attr("fill", C.title.fill).attr("font-size", C.title.fontSize).attr("dominant-baseline", g(C.title.horizontalPos)).attr("text-anchor", i(C.title.verticalPos)).attr("transform", y(C.title)).text(C.title.text), C.borderLines && at.selectAll("line").data(C.borderLines).enter().append("line").attr("x1", (t) => t.x1).attr("y1", (t) => t.y1).attr("x2", (t) => t.x2).attr("y2", (t) => t.y2).style("stroke", (t) => t.strokeFill).style("stroke-width", (t) => t.strokeWidth);
887
+ const T = it.selectAll("g.quadrant").data(C.quadrants).enter().append("g").attr("class", "quadrant");
888
+ T.append("rect").attr("x", (t) => t.x).attr("y", (t) => t.y).attr("width", (t) => t.width).attr("height", (t) => t.height).attr("fill", (t) => t.fill), T.append("text").attr("x", 0).attr("y", 0).attr("fill", (t) => t.text.fill).attr("font-size", (t) => t.text.fontSize).attr(
889
+ "dominant-baseline",
890
+ (t) => g(t.text.horizontalPos)
891
+ ).attr("text-anchor", (t) => i(t.text.verticalPos)).attr("transform", (t) => y(t.text)).text((t) => t.text.text), Q.selectAll("g.label").data(C.axisLabels).enter().append("g").attr("class", "label").append("text").attr("x", 0).attr("y", 0).text((t) => t.text).attr("fill", (t) => t.fill).attr("font-size", (t) => t.fontSize).attr("dominant-baseline", (t) => g(t.horizontalPos)).attr("text-anchor", (t) => i(t.verticalPos)).attr("transform", (t) => y(t));
892
+ const m = nt.selectAll("g.data-point").data(C.points).enter().append("g").attr("class", "data-point");
893
+ m.append("circle").attr("cx", (t) => t.x).attr("cy", (t) => t.y).attr("r", (t) => t.radius).attr("fill", (t) => t.fill), m.append("text").attr("x", 0).attr("y", 0).text((t) => t.text.text).attr("fill", (t) => t.text.fill).attr("font-size", (t) => t.text.fontSize).attr(
894
+ "dominant-baseline",
895
+ (t) => g(t.text.horizontalPos)
896
+ ).attr("text-anchor", (t) => i(t.text.verticalPos)).attr("transform", (t) => y(t.text));
897
+ }, ee = {
898
+ draw: te
899
+ }, oe = {
900
+ parser: Rt,
901
+ db: Jt,
902
+ renderer: ee,
903
+ styles: () => ""
904
+ };
905
+ export {
906
+ oe as diagram
907
+ };