@layers-app/editor 0.7.18 → 0.7.20

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.-pxItkuK.js +11 -0
  5. package/dist/layers.4783bPvO.js +39 -0
  6. package/dist/layers.4XOTUH37.js +1089 -0
  7. package/dist/layers.4peyl00A.js +2 -0
  8. package/dist/layers.4wAcqQtQ.js +423 -0
  9. package/dist/layers.4ykD0YcM.js +40 -0
  10. package/dist/layers.52famHy6.js +1 -0
  11. package/dist/layers.6Feq9YXQ.js +40 -0
  12. package/dist/layers.6GQPwq_6.js +960 -0
  13. package/dist/layers.7JqFgE4-.js +15 -0
  14. package/dist/layers.7wQbmwwB.js +1034 -0
  15. package/dist/layers.8JNx1FTq.js +35 -0
  16. package/dist/layers.8jhm9FEJ.js +10 -0
  17. package/dist/layers.8lNrKfca.js +41 -0
  18. package/dist/layers.9kQUqqYe.js +139 -0
  19. package/dist/layers.9pNaFvaX.js +1 -0
  20. package/dist/layers.AO3vHISA.js +33 -0
  21. package/dist/layers.Ab6Lx44l.js +129 -0
  22. package/dist/layers.B-w9_4cB.js +22 -0
  23. package/dist/layers.B0bpRgNT.js +122 -0
  24. package/dist/layers.B19hGmey.js +1 -0
  25. package/dist/layers.B2OK_mI8.js +1 -0
  26. package/dist/layers.B3D4g2HH.js +1 -0
  27. package/dist/layers.B3mzJc8P.js +907 -0
  28. package/dist/layers.B5YhL7Gw.js +40 -0
  29. package/dist/layers.B7K7JjK6.js +1510 -0
  30. package/dist/layers.B885pkJL.js +794 -0
  31. package/dist/layers.B961U-Vk.js +1 -0
  32. package/dist/layers.B9jATAXU.js +42 -0
  33. package/dist/layers.BAtv1CM7.js +1 -0
  34. package/dist/layers.BBv6P-Uu.js +37 -0
  35. package/dist/layers.BC6JEDP2.js +796 -0
  36. package/dist/layers.BEagxCE_.js +35 -0
  37. package/dist/layers.BH34WCDb.js +6 -0
  38. package/dist/layers.BIeVwYKL.js +1 -0
  39. package/dist/layers.BIkD0WQr.js +10 -0
  40. package/dist/layers.BIlhFIEz.js +37 -0
  41. package/dist/layers.BJDrjORS.js +244 -0
  42. package/dist/{layers.D99OBX9u.js → layers.BJLOp9cg.js} +88 -86
  43. package/dist/layers.BJsWSYrS.js +323 -0
  44. package/dist/layers.BKwcxD8A.js +5 -0
  45. package/dist/layers.BLd2spTm.js +1 -0
  46. package/dist/layers.BLv_frn1.js +10 -0
  47. package/dist/layers.BO2V23mI.js +1 -0
  48. package/dist/layers.BO_D4q5p.js +42 -0
  49. package/dist/layers.BP7EcZBZ.js +1 -0
  50. package/dist/layers.BP8OcU0T.js +10 -0
  51. package/dist/layers.BRaRY9tU.js +373 -0
  52. package/dist/layers.BSTBZrFn.js +1 -0
  53. package/dist/layers.BT2iHuSm.js +8 -0
  54. package/dist/layers.BU-tjKWq.js +33 -0
  55. package/dist/layers.BWEUOe94.js +40 -0
  56. package/dist/layers.BXAu7G4b.js +4 -0
  57. package/dist/layers.BZ9zcjtY.js +8 -0
  58. package/dist/layers.BZa5A6cg.js +425 -0
  59. package/dist/layers.BZlzQFiI.js +51 -0
  60. package/dist/layers.BagtOD0V.js +1 -0
  61. package/dist/layers.BbCfEXyj.js +55 -0
  62. package/dist/layers.Be94M_F4.js +7 -0
  63. package/dist/layers.BhdUQN6J.js +1583 -0
  64. package/dist/layers.Bj915C_T.js +5 -0
  65. package/dist/layers.BnHSrOPr.js +40 -0
  66. package/dist/layers.BngaRys_.js +8583 -0
  67. package/dist/layers.BoRvGzPp.js +1 -0
  68. package/dist/layers.Bob38w8X.js +5 -0
  69. package/dist/layers.BpTkSHkL.js +38 -0
  70. package/dist/layers.BpVR__4s.js +32 -0
  71. package/dist/layers.BpilXLfW.js +6 -0
  72. package/dist/layers.Br9HAzwf.js +2482 -0
  73. package/dist/layers.Bt7brqhi.js +116 -0
  74. package/dist/layers.BtqAfMks.js +1 -0
  75. package/dist/layers.BtvHse58.js +1 -0
  76. package/dist/layers.BwzogUnt.js +41 -0
  77. package/dist/layers.ByB5f2g3.js +7 -0
  78. package/dist/layers.ByipH4AB.js +207 -0
  79. package/dist/layers.BzC5N3hu.js +1619 -0
  80. package/dist/layers.C-KP-jFZ.js +8 -0
  81. package/dist/layers.C0iFGBoQ.js +213 -0
  82. package/dist/layers.C1AULvj_.js +40 -0
  83. package/dist/layers.C2f7uCzl.js +21620 -0
  84. package/dist/layers.C47t6lve.js +2 -0
  85. package/dist/layers.C4gRYt-z.js +9 -0
  86. package/dist/layers.C4nmPqDc.js +9 -0
  87. package/dist/layers.C5UKJ24R.js +271 -0
  88. package/dist/layers.C5qsYNKq.js +7 -0
  89. package/dist/layers.C70jnpZq.js +42 -0
  90. package/dist/layers.C7Qg5l_Q.js +5 -0
  91. package/dist/layers.C7v0beLV.js +9 -0
  92. package/dist/layers.C8_lu5UH.js +23 -0
  93. package/dist/layers.CAcCDIzK.js +32 -0
  94. package/dist/layers.CCWJVHwX.js +26946 -0
  95. package/dist/layers.CF2BAIC-.js +1 -0
  96. package/dist/layers.CFUGAgBV.js +805 -0
  97. package/dist/layers.CHZsXQcr.js +1 -0
  98. package/dist/layers.CIo6HbVI.js +37 -0
  99. package/dist/layers.CJaSQy6k.js +70 -0
  100. package/dist/layers.CJhFGqXY.js +1 -0
  101. package/dist/layers.CKU_klOZ.js +41 -0
  102. package/dist/layers.CKrtSnTU.js +7 -0
  103. package/dist/layers.CNoIsdHV.js +223 -0
  104. package/dist/layers.CQ-g_IO8.js +39 -0
  105. package/dist/layers.CRWtU7Vx.js +1268 -0
  106. package/dist/layers.CSattQNk.js +8 -0
  107. package/dist/layers.CT-8Geho.js +118 -0
  108. package/dist/layers.CWTjwUqI.js +9 -0
  109. package/dist/layers.CY3nuiOZ.js +39 -0
  110. package/dist/layers.CYDGmR2c.js +1 -0
  111. package/dist/layers.CYPtUh0S.js +36 -0
  112. package/dist/layers.CYjyWg9h.js +139 -0
  113. package/dist/layers.CZCoH1Jq.js +189 -0
  114. package/dist/layers.CZVe7Rrz.js +4 -0
  115. package/dist/layers.C_8NFZw0.js +84 -0
  116. package/dist/layers.C_IvrzZ3.js +7 -0
  117. package/dist/layers.C_vVmOaW.js +7 -0
  118. package/dist/layers.Cb3vLPzi.js +1 -0
  119. package/dist/layers.Cblg5KAJ.js +1286 -0
  120. package/dist/layers.CeUsnn-s.js +41 -0
  121. package/dist/layers.Cfwoj-CP.js +76 -0
  122. package/dist/layers.Cfxt2JbX.js +160 -0
  123. package/dist/layers.CjixIcYE.js +205 -0
  124. package/dist/layers.CliEt_s4.js +8 -0
  125. package/dist/layers.Cmumbtn4.js +11 -0
  126. package/dist/layers.Cnkh0zSn.js +5 -0
  127. package/dist/layers.Co0MEzNt.js +32 -0
  128. package/dist/layers.CpgPovn6.js +32 -0
  129. package/dist/layers.CqVTtuYm.js +6 -0
  130. package/dist/layers.Cr_8J_Ls.js +36 -0
  131. package/dist/layers.Cs7THreY.js +42 -0
  132. package/dist/layers.CtQHRQJd.js +65 -0
  133. package/dist/layers.Cuv2Lipq.js +10 -0
  134. package/dist/layers.Cuy--_Li.js +14 -0
  135. package/dist/layers.Cxrjuyke.js +38 -0
  136. package/dist/layers.Cxuu78R8.js +1 -0
  137. package/dist/layers.Cy_jbtrS.js +198 -0
  138. package/dist/layers.CyabQ7I1.js +40 -0
  139. package/dist/layers.CyqF5h2Z.js +1 -0
  140. package/dist/layers.Cyzu9PKQ.js +1 -0
  141. package/dist/layers.CzDyzzM2.js +36 -0
  142. package/dist/layers.D-LL79P8.js +32 -0
  143. package/dist/layers.D-uQN6e4.js +271 -0
  144. package/dist/layers.D00djYUT.js +9 -0
  145. package/dist/layers.D0zn4_Mx.js +1 -0
  146. package/dist/layers.D1PMEoqL.js +41 -0
  147. package/dist/layers.D1WSB9zI.js +806 -0
  148. package/dist/layers.D2dRxQww.js +10 -0
  149. package/dist/layers.D3KEnhiI.js +6 -0
  150. package/dist/layers.D3SlAvNp.js +934 -0
  151. package/dist/layers.D3eKKoAb.js +1 -0
  152. package/dist/layers.D4T8fTcj.js +1223 -0
  153. package/dist/layers.D7gfmd9A.js +36 -0
  154. package/dist/layers.D7jGxypv.js +8 -0
  155. package/dist/layers.DA1OUhKy.js +10 -0
  156. package/dist/layers.DB4o6Xfv.js +42 -0
  157. package/dist/layers.DBUjVgMd.js +1 -0
  158. package/dist/layers.DCkmUFPh.js +2966 -0
  159. package/dist/layers.DD4QPdYS.js +96 -0
  160. package/dist/layers.DE2Io1k7.js +295 -0
  161. package/dist/layers.DKnEcoKx.js +1088 -0
  162. package/dist/layers.DKsXm_hK.js +9 -0
  163. package/dist/layers.DLeGllIz.js +1 -0
  164. package/dist/layers.DLwuMfdd.js +84 -0
  165. package/dist/layers.DMkBISW1.js +1 -0
  166. package/dist/layers.DN9HoVxI.js +18 -0
  167. package/dist/layers.DOrgOHBr.js +1 -0
  168. package/dist/layers.DPipd7Yf.js +1 -0
  169. package/dist/layers.DQpNkl-s.js +39 -0
  170. package/dist/layers.DSNr6P6_.js +40 -0
  171. package/dist/layers.DWGLEZg1.js +34 -0
  172. package/dist/layers.DWxUDz1V.js +13 -0
  173. package/dist/layers.DYk9FILk.js +8 -0
  174. package/dist/layers.DZ3Nv-_j.js +8 -0
  175. package/dist/layers.DZGvjyDH.js +1 -0
  176. package/dist/layers.DZucH9TB.js +40 -0
  177. package/dist/layers.D__NkOsa.js +7 -0
  178. package/dist/layers.DbaKVP5e.js +1 -0
  179. package/dist/layers.DfkAyTyX.js +39 -0
  180. package/dist/layers.Dgie_iy2.js +772 -0
  181. package/dist/layers.DhHIDfZ5.js +1 -0
  182. package/dist/layers.Di-7t8Xt.js +6 -0
  183. package/dist/layers.DiPSTN4q.js +1 -0
  184. package/dist/layers.DjLIeP8d.js +257 -0
  185. package/dist/layers.DjUOC4st.js +16 -0
  186. package/dist/layers.Dk6h-6Wb.js +2 -0
  187. package/dist/layers.DkRR3p16.js +61 -0
  188. package/dist/layers.DnXxZJQo.js +48149 -0
  189. package/dist/layers.DpahuC02.js +6 -0
  190. package/dist/layers.Dpqc2FAN.js +40 -0
  191. package/dist/layers.DqScp2vq.js +1126 -0
  192. package/dist/layers.Dr1JRZ_S.js +4 -0
  193. package/dist/layers.DrTaVUsA.js +39 -0
  194. package/dist/layers.DrXLa4el.js +44 -0
  195. package/dist/layers.DtKxMd0g.js +4 -0
  196. package/dist/layers.DxA6ocdw.js +70 -0
  197. package/dist/layers.DxRZNwMP.js +1 -0
  198. package/dist/layers.Dy1naDTQ.js +14 -0
  199. package/dist/layers.FArKPCKA.js +21941 -0
  200. package/dist/layers.FXdB_jrR.js +9 -0
  201. package/dist/layers.GbuD0dtx.js +6 -0
  202. package/dist/layers.ILs-xE7i.js +11 -0
  203. package/dist/layers.JWCLFILJ.js +1 -0
  204. package/dist/layers.L9obQAvP.js +10 -0
  205. package/dist/layers.Lb5VQ9U4.js +504 -0
  206. package/dist/layers.MCy444Ia.js +41 -0
  207. package/dist/layers.QyDQqf0G.js +39 -0
  208. package/dist/layers.R4CPUhiF.js +8 -0
  209. package/dist/layers.R8mPlCA0.js +261 -0
  210. package/dist/layers.Sjtd5SpD.js +84 -0
  211. package/dist/layers.XlzBx5CM.js +437 -0
  212. package/dist/layers.YD8zq7G1.js +41 -0
  213. package/dist/layers.YWM6eRUH.js +1 -0
  214. package/dist/layers.a6EbdnVa.js +37 -0
  215. package/dist/layers.b0h5ZBmD.js +61 -0
  216. package/dist/layers.b9B2NY7n.js +11690 -0
  217. package/dist/layers.bS5nz97o.js +3 -0
  218. package/dist/layers.biaV5QcU.js +7 -0
  219. package/dist/layers.dxw35GiE.js +52 -0
  220. package/dist/layers.gFW_9pGM.js +1225 -0
  221. package/dist/layers.ge00jJfz.js +38 -0
  222. package/dist/layers.iryDeY19.js +9 -0
  223. package/dist/layers.jN02hLg8.js +7 -0
  224. package/dist/layers.jqEynR2I.js +8 -0
  225. package/dist/layers.lCpg7dOn.js +21 -0
  226. package/dist/layers.lIg0cncJ.js +39 -0
  227. package/dist/layers.lKk6bx4R.js +1 -0
  228. package/dist/layers.m4XcFQDd.js +6 -0
  229. package/dist/layers.m6FDW_ho.js +8 -0
  230. package/dist/layers.r6u8p96p.js +2238 -0
  231. package/dist/layers.rWob7btU.js +10 -0
  232. package/dist/layers.rYZbXo4d.js +32 -0
  233. package/dist/layers.sldWqHdD.js +11 -0
  234. package/dist/layers.tFqdqg82.js +10 -0
  235. package/dist/layers.v25uTBY8.js +39 -0
  236. package/dist/layers.wNarGMxP.js +9 -0
  237. package/dist/layers.wxYowcaq.js +41 -0
  238. package/dist/layers.xjN3ile4.js +9 -0
  239. package/dist/layers.yNlD-OCA.js +35 -0
  240. package/dist/layers.z-RuimGg.js +11 -0
  241. package/dist/layers.zvsP8spW.js +1 -0
  242. package/package.json +1 -1
  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,772 @@
1
+ import { a as Ce, s as Fe, b as Me, c as De, g as Te, d as oe, e as Pe, q as Ye, l as Ne, j as ke } from "./layers.BngaRys_.js";
2
+ import "lodash-es";
3
+ import { l as Ue } from "./layers.D4T8fTcj.js";
4
+ import { G as Be } from "./layers.BJDrjORS.js";
5
+ import "./layers.C2f7uCzl.js";
6
+ import "lodash-es/memoize.js";
7
+ import "lodash-es/merge.js";
8
+ import "lodash-es/isEmpty.js";
9
+ import { l as Qe } from "./layers.BU-tjKWq.js";
10
+ var ce = (function() {
11
+ var e = function(V, i, n, a) {
12
+ for (n = n || {}, a = V.length; a--; n[V[a]] = i)
13
+ ;
14
+ return n;
15
+ }, t = [1, 3], l = [1, 4], c = [1, 5], u = [1, 6], d = [5, 6, 8, 9, 11, 13, 31, 32, 33, 34, 35, 36, 44, 62, 63], p = [1, 18], h = [2, 7], o = [1, 22], g = [1, 23], R = [1, 24], A = [1, 25], T = [1, 26], N = [1, 27], v = [1, 20], k = [1, 28], x = [1, 29], F = [62, 63], de = [5, 8, 9, 11, 13, 31, 32, 33, 34, 35, 36, 44, 51, 53, 62, 63], pe = [1, 47], fe = [1, 48], ye = [1, 49], _e = [1, 50], ge = [1, 51], Ee = [1, 52], Re = [1, 53], O = [53, 54], M = [1, 64], D = [1, 60], P = [1, 61], Y = [1, 62], U = [1, 63], B = [1, 65], j = [1, 69], z = [1, 70], X = [1, 67], J = [1, 68], m = [5, 8, 9, 11, 13, 31, 32, 33, 34, 35, 36, 44, 62, 63], ie = {
16
+ trace: function() {
17
+ },
18
+ yy: {},
19
+ symbols_: { error: 2, start: 3, directive: 4, NEWLINE: 5, RD: 6, diagram: 7, EOF: 8, acc_title: 9, acc_title_value: 10, acc_descr: 11, acc_descr_value: 12, acc_descr_multiline_value: 13, requirementDef: 14, elementDef: 15, relationshipDef: 16, requirementType: 17, requirementName: 18, STRUCT_START: 19, requirementBody: 20, ID: 21, COLONSEP: 22, id: 23, TEXT: 24, text: 25, RISK: 26, riskLevel: 27, VERIFYMTHD: 28, verifyType: 29, STRUCT_STOP: 30, REQUIREMENT: 31, FUNCTIONAL_REQUIREMENT: 32, INTERFACE_REQUIREMENT: 33, PERFORMANCE_REQUIREMENT: 34, PHYSICAL_REQUIREMENT: 35, DESIGN_CONSTRAINT: 36, LOW_RISK: 37, MED_RISK: 38, HIGH_RISK: 39, VERIFY_ANALYSIS: 40, VERIFY_DEMONSTRATION: 41, VERIFY_INSPECTION: 42, VERIFY_TEST: 43, ELEMENT: 44, elementName: 45, elementBody: 46, TYPE: 47, type: 48, DOCREF: 49, ref: 50, END_ARROW_L: 51, relationship: 52, LINE: 53, END_ARROW_R: 54, CONTAINS: 55, COPIES: 56, DERIVES: 57, SATISFIES: 58, VERIFIES: 59, REFINES: 60, TRACES: 61, unqString: 62, qString: 63, $accept: 0, $end: 1 },
20
+ terminals_: { 2: "error", 5: "NEWLINE", 6: "RD", 8: "EOF", 9: "acc_title", 10: "acc_title_value", 11: "acc_descr", 12: "acc_descr_value", 13: "acc_descr_multiline_value", 19: "STRUCT_START", 21: "ID", 22: "COLONSEP", 24: "TEXT", 26: "RISK", 28: "VERIFYMTHD", 30: "STRUCT_STOP", 31: "REQUIREMENT", 32: "FUNCTIONAL_REQUIREMENT", 33: "INTERFACE_REQUIREMENT", 34: "PERFORMANCE_REQUIREMENT", 35: "PHYSICAL_REQUIREMENT", 36: "DESIGN_CONSTRAINT", 37: "LOW_RISK", 38: "MED_RISK", 39: "HIGH_RISK", 40: "VERIFY_ANALYSIS", 41: "VERIFY_DEMONSTRATION", 42: "VERIFY_INSPECTION", 43: "VERIFY_TEST", 44: "ELEMENT", 47: "TYPE", 49: "DOCREF", 51: "END_ARROW_L", 53: "LINE", 54: "END_ARROW_R", 55: "CONTAINS", 56: "COPIES", 57: "DERIVES", 58: "SATISFIES", 59: "VERIFIES", 60: "REFINES", 61: "TRACES", 62: "unqString", 63: "qString" },
21
+ productions_: [0, [3, 3], [3, 2], [3, 4], [4, 2], [4, 2], [4, 1], [7, 0], [7, 2], [7, 2], [7, 2], [7, 2], [7, 2], [14, 5], [20, 5], [20, 5], [20, 5], [20, 5], [20, 2], [20, 1], [17, 1], [17, 1], [17, 1], [17, 1], [17, 1], [17, 1], [27, 1], [27, 1], [27, 1], [29, 1], [29, 1], [29, 1], [29, 1], [15, 5], [46, 5], [46, 5], [46, 2], [46, 1], [16, 5], [16, 5], [52, 1], [52, 1], [52, 1], [52, 1], [52, 1], [52, 1], [52, 1], [18, 1], [18, 1], [23, 1], [23, 1], [25, 1], [25, 1], [45, 1], [45, 1], [48, 1], [48, 1], [50, 1], [50, 1]],
22
+ performAction: function(i, n, a, r, f, s, W) {
23
+ var _ = s.length - 1;
24
+ switch (f) {
25
+ case 4:
26
+ this.$ = s[_].trim(), r.setAccTitle(this.$);
27
+ break;
28
+ case 5:
29
+ case 6:
30
+ this.$ = s[_].trim(), r.setAccDescription(this.$);
31
+ break;
32
+ case 7:
33
+ this.$ = [];
34
+ break;
35
+ case 13:
36
+ r.addRequirement(s[_ - 3], s[_ - 4]);
37
+ break;
38
+ case 14:
39
+ r.setNewReqId(s[_ - 2]);
40
+ break;
41
+ case 15:
42
+ r.setNewReqText(s[_ - 2]);
43
+ break;
44
+ case 16:
45
+ r.setNewReqRisk(s[_ - 2]);
46
+ break;
47
+ case 17:
48
+ r.setNewReqVerifyMethod(s[_ - 2]);
49
+ break;
50
+ case 20:
51
+ this.$ = r.RequirementType.REQUIREMENT;
52
+ break;
53
+ case 21:
54
+ this.$ = r.RequirementType.FUNCTIONAL_REQUIREMENT;
55
+ break;
56
+ case 22:
57
+ this.$ = r.RequirementType.INTERFACE_REQUIREMENT;
58
+ break;
59
+ case 23:
60
+ this.$ = r.RequirementType.PERFORMANCE_REQUIREMENT;
61
+ break;
62
+ case 24:
63
+ this.$ = r.RequirementType.PHYSICAL_REQUIREMENT;
64
+ break;
65
+ case 25:
66
+ this.$ = r.RequirementType.DESIGN_CONSTRAINT;
67
+ break;
68
+ case 26:
69
+ this.$ = r.RiskLevel.LOW_RISK;
70
+ break;
71
+ case 27:
72
+ this.$ = r.RiskLevel.MED_RISK;
73
+ break;
74
+ case 28:
75
+ this.$ = r.RiskLevel.HIGH_RISK;
76
+ break;
77
+ case 29:
78
+ this.$ = r.VerifyType.VERIFY_ANALYSIS;
79
+ break;
80
+ case 30:
81
+ this.$ = r.VerifyType.VERIFY_DEMONSTRATION;
82
+ break;
83
+ case 31:
84
+ this.$ = r.VerifyType.VERIFY_INSPECTION;
85
+ break;
86
+ case 32:
87
+ this.$ = r.VerifyType.VERIFY_TEST;
88
+ break;
89
+ case 33:
90
+ r.addElement(s[_ - 3]);
91
+ break;
92
+ case 34:
93
+ r.setNewElementType(s[_ - 2]);
94
+ break;
95
+ case 35:
96
+ r.setNewElementDocRef(s[_ - 2]);
97
+ break;
98
+ case 38:
99
+ r.addRelationship(s[_ - 2], s[_], s[_ - 4]);
100
+ break;
101
+ case 39:
102
+ r.addRelationship(s[_ - 2], s[_ - 4], s[_]);
103
+ break;
104
+ case 40:
105
+ this.$ = r.Relationships.CONTAINS;
106
+ break;
107
+ case 41:
108
+ this.$ = r.Relationships.COPIES;
109
+ break;
110
+ case 42:
111
+ this.$ = r.Relationships.DERIVES;
112
+ break;
113
+ case 43:
114
+ this.$ = r.Relationships.SATISFIES;
115
+ break;
116
+ case 44:
117
+ this.$ = r.Relationships.VERIFIES;
118
+ break;
119
+ case 45:
120
+ this.$ = r.Relationships.REFINES;
121
+ break;
122
+ case 46:
123
+ this.$ = r.Relationships.TRACES;
124
+ break;
125
+ }
126
+ },
127
+ table: [{ 3: 1, 4: 2, 6: t, 9: l, 11: c, 13: u }, { 1: [3] }, { 3: 8, 4: 2, 5: [1, 7], 6: t, 9: l, 11: c, 13: u }, { 5: [1, 9] }, { 10: [1, 10] }, { 12: [1, 11] }, e(d, [2, 6]), { 3: 12, 4: 2, 6: t, 9: l, 11: c, 13: u }, { 1: [2, 2] }, { 4: 17, 5: p, 7: 13, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, e(d, [2, 4]), e(d, [2, 5]), { 1: [2, 1] }, { 8: [1, 30] }, { 4: 17, 5: p, 7: 31, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, { 4: 17, 5: p, 7: 32, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, { 4: 17, 5: p, 7: 33, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, { 4: 17, 5: p, 7: 34, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, { 4: 17, 5: p, 7: 35, 8: h, 9: l, 11: c, 13: u, 14: 14, 15: 15, 16: 16, 17: 19, 23: 21, 31: o, 32: g, 33: R, 34: A, 35: T, 36: N, 44: v, 62: k, 63: x }, { 18: 36, 62: [1, 37], 63: [1, 38] }, { 45: 39, 62: [1, 40], 63: [1, 41] }, { 51: [1, 42], 53: [1, 43] }, e(F, [2, 20]), e(F, [2, 21]), e(F, [2, 22]), e(F, [2, 23]), e(F, [2, 24]), e(F, [2, 25]), e(de, [2, 49]), e(de, [2, 50]), { 1: [2, 3] }, { 8: [2, 8] }, { 8: [2, 9] }, { 8: [2, 10] }, { 8: [2, 11] }, { 8: [2, 12] }, { 19: [1, 44] }, { 19: [2, 47] }, { 19: [2, 48] }, { 19: [1, 45] }, { 19: [2, 53] }, { 19: [2, 54] }, { 52: 46, 55: pe, 56: fe, 57: ye, 58: _e, 59: ge, 60: Ee, 61: Re }, { 52: 54, 55: pe, 56: fe, 57: ye, 58: _e, 59: ge, 60: Ee, 61: Re }, { 5: [1, 55] }, { 5: [1, 56] }, { 53: [1, 57] }, e(O, [2, 40]), e(O, [2, 41]), e(O, [2, 42]), e(O, [2, 43]), e(O, [2, 44]), e(O, [2, 45]), e(O, [2, 46]), { 54: [1, 58] }, { 5: M, 20: 59, 21: D, 24: P, 26: Y, 28: U, 30: B }, { 5: j, 30: z, 46: 66, 47: X, 49: J }, { 23: 71, 62: k, 63: x }, { 23: 72, 62: k, 63: x }, e(m, [2, 13]), { 22: [1, 73] }, { 22: [1, 74] }, { 22: [1, 75] }, { 22: [1, 76] }, { 5: M, 20: 77, 21: D, 24: P, 26: Y, 28: U, 30: B }, e(m, [2, 19]), e(m, [2, 33]), { 22: [1, 78] }, { 22: [1, 79] }, { 5: j, 30: z, 46: 80, 47: X, 49: J }, e(m, [2, 37]), e(m, [2, 38]), e(m, [2, 39]), { 23: 81, 62: k, 63: x }, { 25: 82, 62: [1, 83], 63: [1, 84] }, { 27: 85, 37: [1, 86], 38: [1, 87], 39: [1, 88] }, { 29: 89, 40: [1, 90], 41: [1, 91], 42: [1, 92], 43: [1, 93] }, e(m, [2, 18]), { 48: 94, 62: [1, 95], 63: [1, 96] }, { 50: 97, 62: [1, 98], 63: [1, 99] }, e(m, [2, 36]), { 5: [1, 100] }, { 5: [1, 101] }, { 5: [2, 51] }, { 5: [2, 52] }, { 5: [1, 102] }, { 5: [2, 26] }, { 5: [2, 27] }, { 5: [2, 28] }, { 5: [1, 103] }, { 5: [2, 29] }, { 5: [2, 30] }, { 5: [2, 31] }, { 5: [2, 32] }, { 5: [1, 104] }, { 5: [2, 55] }, { 5: [2, 56] }, { 5: [1, 105] }, { 5: [2, 57] }, { 5: [2, 58] }, { 5: M, 20: 106, 21: D, 24: P, 26: Y, 28: U, 30: B }, { 5: M, 20: 107, 21: D, 24: P, 26: Y, 28: U, 30: B }, { 5: M, 20: 108, 21: D, 24: P, 26: Y, 28: U, 30: B }, { 5: M, 20: 109, 21: D, 24: P, 26: Y, 28: U, 30: B }, { 5: j, 30: z, 46: 110, 47: X, 49: J }, { 5: j, 30: z, 46: 111, 47: X, 49: J }, e(m, [2, 14]), e(m, [2, 15]), e(m, [2, 16]), e(m, [2, 17]), e(m, [2, 34]), e(m, [2, 35])],
128
+ defaultActions: { 8: [2, 2], 12: [2, 1], 30: [2, 3], 31: [2, 8], 32: [2, 9], 33: [2, 10], 34: [2, 11], 35: [2, 12], 37: [2, 47], 38: [2, 48], 40: [2, 53], 41: [2, 54], 83: [2, 51], 84: [2, 52], 86: [2, 26], 87: [2, 27], 88: [2, 28], 90: [2, 29], 91: [2, 30], 92: [2, 31], 93: [2, 32], 95: [2, 55], 96: [2, 56], 98: [2, 57], 99: [2, 58] },
129
+ parseError: function(i, n) {
130
+ if (n.recoverable)
131
+ this.trace(i);
132
+ else {
133
+ var a = new Error(i);
134
+ throw a.hash = n, a;
135
+ }
136
+ },
137
+ parse: function(i) {
138
+ var n = this, a = [0], r = [], f = [null], s = [], W = this.table, _ = "", Z = 0, me = 0, Ve = 2, Ie = 1, qe = s.slice.call(arguments, 1), E = Object.create(this.lexer), L = { yy: {} };
139
+ for (var ne in this.yy)
140
+ Object.prototype.hasOwnProperty.call(this.yy, ne) && (L.yy[ne] = this.yy[ne]);
141
+ E.setInput(i, L.yy), L.yy.lexer = E, L.yy.parser = this, typeof E.yylloc > "u" && (E.yylloc = {});
142
+ var se = E.yylloc;
143
+ s.push(se);
144
+ var Oe = E.options && E.options.ranges;
145
+ typeof L.yy.parseError == "function" ? this.parseError = L.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
146
+ function Le() {
147
+ var $;
148
+ return $ = r.pop() || E.lex() || Ie, typeof $ != "number" && ($ instanceof Array && (r = $, $ = r.pop()), $ = n.symbols_[$] || $), $;
149
+ }
150
+ for (var I, C, S, ae, Q = {}, ee, w, be, te; ; ) {
151
+ if (C = a[a.length - 1], this.defaultActions[C] ? S = this.defaultActions[C] : ((I === null || typeof I > "u") && (I = Le()), S = W[C] && W[C][I]), typeof S > "u" || !S.length || !S[0]) {
152
+ var le = "";
153
+ te = [];
154
+ for (ee in W[C])
155
+ this.terminals_[ee] && ee > Ve && te.push("'" + this.terminals_[ee] + "'");
156
+ E.showPosition ? le = "Parse error on line " + (Z + 1) + `:
157
+ ` + E.showPosition() + `
158
+ Expecting ` + te.join(", ") + ", got '" + (this.terminals_[I] || I) + "'" : le = "Parse error on line " + (Z + 1) + ": Unexpected " + (I == Ie ? "end of input" : "'" + (this.terminals_[I] || I) + "'"), this.parseError(le, {
159
+ text: E.match,
160
+ token: this.terminals_[I] || I,
161
+ line: E.yylineno,
162
+ loc: se,
163
+ expected: te
164
+ });
165
+ }
166
+ if (S[0] instanceof Array && S.length > 1)
167
+ throw new Error("Parse Error: multiple actions possible at state: " + C + ", token: " + I);
168
+ switch (S[0]) {
169
+ case 1:
170
+ a.push(I), f.push(E.yytext), s.push(E.yylloc), a.push(S[1]), I = null, me = E.yyleng, _ = E.yytext, Z = E.yylineno, se = E.yylloc;
171
+ break;
172
+ case 2:
173
+ if (w = this.productions_[S[1]][1], Q.$ = f[f.length - w], Q._$ = {
174
+ first_line: s[s.length - (w || 1)].first_line,
175
+ last_line: s[s.length - 1].last_line,
176
+ first_column: s[s.length - (w || 1)].first_column,
177
+ last_column: s[s.length - 1].last_column
178
+ }, Oe && (Q._$.range = [
179
+ s[s.length - (w || 1)].range[0],
180
+ s[s.length - 1].range[1]
181
+ ]), ae = this.performAction.apply(Q, [
182
+ _,
183
+ me,
184
+ Z,
185
+ L.yy,
186
+ S[1],
187
+ f,
188
+ s
189
+ ].concat(qe)), typeof ae < "u")
190
+ return ae;
191
+ w && (a = a.slice(0, -1 * w * 2), f = f.slice(0, -1 * w), s = s.slice(0, -1 * w)), a.push(this.productions_[S[1]][0]), f.push(Q.$), s.push(Q._$), be = W[a[a.length - 2]][a[a.length - 1]], a.push(be);
192
+ break;
193
+ case 3:
194
+ return !0;
195
+ }
196
+ }
197
+ return !0;
198
+ }
199
+ }, $e = /* @__PURE__ */ (function() {
200
+ var V = {
201
+ EOF: 1,
202
+ parseError: function(n, a) {
203
+ if (this.yy.parser)
204
+ this.yy.parser.parseError(n, a);
205
+ else
206
+ throw new Error(n);
207
+ },
208
+ // resets the lexer, sets new input
209
+ setInput: function(i, n) {
210
+ return this.yy = n || this.yy || {}, this._input = i, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
211
+ first_line: 1,
212
+ first_column: 0,
213
+ last_line: 1,
214
+ last_column: 0
215
+ }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
216
+ },
217
+ // consumes and returns one char from the input
218
+ input: function() {
219
+ var i = this._input[0];
220
+ this.yytext += i, this.yyleng++, this.offset++, this.match += i, this.matched += i;
221
+ var n = i.match(/(?:\r\n?|\n).*/g);
222
+ return n ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), i;
223
+ },
224
+ // unshifts one char (or a string) into the input
225
+ unput: function(i) {
226
+ var n = i.length, a = i.split(/(?:\r\n?|\n)/g);
227
+ this._input = i + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - n), this.offset -= n;
228
+ var r = this.match.split(/(?:\r\n?|\n)/g);
229
+ this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), a.length - 1 && (this.yylineno -= a.length - 1);
230
+ var f = this.yylloc.range;
231
+ return this.yylloc = {
232
+ first_line: this.yylloc.first_line,
233
+ last_line: this.yylineno + 1,
234
+ first_column: this.yylloc.first_column,
235
+ last_column: a ? (a.length === r.length ? this.yylloc.first_column : 0) + r[r.length - a.length].length - a[0].length : this.yylloc.first_column - n
236
+ }, this.options.ranges && (this.yylloc.range = [f[0], f[0] + this.yyleng - n]), this.yyleng = this.yytext.length, this;
237
+ },
238
+ // When called from action, caches matched text and appends it on next action
239
+ more: function() {
240
+ return this._more = !0, this;
241
+ },
242
+ // 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.
243
+ reject: function() {
244
+ if (this.options.backtrack_lexer)
245
+ this._backtrack = !0;
246
+ else
247
+ 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).
248
+ ` + this.showPosition(), {
249
+ text: "",
250
+ token: null,
251
+ line: this.yylineno
252
+ });
253
+ return this;
254
+ },
255
+ // retain first n characters of the match
256
+ less: function(i) {
257
+ this.unput(this.match.slice(i));
258
+ },
259
+ // displays already matched input, i.e. for error messages
260
+ pastInput: function() {
261
+ var i = this.matched.substr(0, this.matched.length - this.match.length);
262
+ return (i.length > 20 ? "..." : "") + i.substr(-20).replace(/\n/g, "");
263
+ },
264
+ // displays upcoming input, i.e. for error messages
265
+ upcomingInput: function() {
266
+ var i = this.match;
267
+ return i.length < 20 && (i += this._input.substr(0, 20 - i.length)), (i.substr(0, 20) + (i.length > 20 ? "..." : "")).replace(/\n/g, "");
268
+ },
269
+ // displays the character position where the lexing error occurred, i.e. for error messages
270
+ showPosition: function() {
271
+ var i = this.pastInput(), n = new Array(i.length + 1).join("-");
272
+ return i + this.upcomingInput() + `
273
+ ` + n + "^";
274
+ },
275
+ // test the lexed token: return FALSE when not a match, otherwise return token
276
+ test_match: function(i, n) {
277
+ var a, r, f;
278
+ if (this.options.backtrack_lexer && (f = {
279
+ yylineno: this.yylineno,
280
+ yylloc: {
281
+ first_line: this.yylloc.first_line,
282
+ last_line: this.last_line,
283
+ first_column: this.yylloc.first_column,
284
+ last_column: this.yylloc.last_column
285
+ },
286
+ yytext: this.yytext,
287
+ match: this.match,
288
+ matches: this.matches,
289
+ matched: this.matched,
290
+ yyleng: this.yyleng,
291
+ offset: this.offset,
292
+ _more: this._more,
293
+ _input: this._input,
294
+ yy: this.yy,
295
+ conditionStack: this.conditionStack.slice(0),
296
+ done: this.done
297
+ }, this.options.ranges && (f.yylloc.range = this.yylloc.range.slice(0))), r = i[0].match(/(?:\r\n?|\n).*/g), r && (this.yylineno += r.length), this.yylloc = {
298
+ first_line: this.yylloc.last_line,
299
+ last_line: this.yylineno + 1,
300
+ first_column: this.yylloc.last_column,
301
+ last_column: r ? r[r.length - 1].length - r[r.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + i[0].length
302
+ }, this.yytext += i[0], this.match += i[0], this.matches = i, 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(i[0].length), this.matched += i[0], a = this.performAction.call(this, this.yy, this, n, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), a)
303
+ return a;
304
+ if (this._backtrack) {
305
+ for (var s in f)
306
+ this[s] = f[s];
307
+ return !1;
308
+ }
309
+ return !1;
310
+ },
311
+ // return next match in input
312
+ next: function() {
313
+ if (this.done)
314
+ return this.EOF;
315
+ this._input || (this.done = !0);
316
+ var i, n, a, r;
317
+ this._more || (this.yytext = "", this.match = "");
318
+ for (var f = this._currentRules(), s = 0; s < f.length; s++)
319
+ if (a = this._input.match(this.rules[f[s]]), a && (!n || a[0].length > n[0].length)) {
320
+ if (n = a, r = s, this.options.backtrack_lexer) {
321
+ if (i = this.test_match(a, f[s]), i !== !1)
322
+ return i;
323
+ if (this._backtrack) {
324
+ n = !1;
325
+ continue;
326
+ } else
327
+ return !1;
328
+ } else if (!this.options.flex)
329
+ break;
330
+ }
331
+ return n ? (i = this.test_match(n, f[r]), i !== !1 ? i : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
332
+ ` + this.showPosition(), {
333
+ text: "",
334
+ token: null,
335
+ line: this.yylineno
336
+ });
337
+ },
338
+ // return next match that has a token
339
+ lex: function() {
340
+ var n = this.next();
341
+ return n || this.lex();
342
+ },
343
+ // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
344
+ begin: function(n) {
345
+ this.conditionStack.push(n);
346
+ },
347
+ // pop the previously active lexer condition state off the condition stack
348
+ popState: function() {
349
+ var n = this.conditionStack.length - 1;
350
+ return n > 0 ? this.conditionStack.pop() : this.conditionStack[0];
351
+ },
352
+ // produce the lexer rule set which is active for the currently active lexer condition state
353
+ _currentRules: function() {
354
+ return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
355
+ },
356
+ // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
357
+ topState: function(n) {
358
+ return n = this.conditionStack.length - 1 - Math.abs(n || 0), n >= 0 ? this.conditionStack[n] : "INITIAL";
359
+ },
360
+ // alias for begin(condition)
361
+ pushState: function(n) {
362
+ this.begin(n);
363
+ },
364
+ // return the number of states currently on the stack
365
+ stateStackSize: function() {
366
+ return this.conditionStack.length;
367
+ },
368
+ options: { "case-insensitive": !0 },
369
+ performAction: function(n, a, r, f) {
370
+ switch (r) {
371
+ case 0:
372
+ return "title";
373
+ case 1:
374
+ return this.begin("acc_title"), 9;
375
+ case 2:
376
+ return this.popState(), "acc_title_value";
377
+ case 3:
378
+ return this.begin("acc_descr"), 11;
379
+ case 4:
380
+ return this.popState(), "acc_descr_value";
381
+ case 5:
382
+ this.begin("acc_descr_multiline");
383
+ break;
384
+ case 6:
385
+ this.popState();
386
+ break;
387
+ case 7:
388
+ return "acc_descr_multiline_value";
389
+ case 8:
390
+ return 5;
391
+ case 9:
392
+ break;
393
+ case 10:
394
+ break;
395
+ case 11:
396
+ break;
397
+ case 12:
398
+ return 8;
399
+ case 13:
400
+ return 6;
401
+ case 14:
402
+ return 19;
403
+ case 15:
404
+ return 30;
405
+ case 16:
406
+ return 22;
407
+ case 17:
408
+ return 21;
409
+ case 18:
410
+ return 24;
411
+ case 19:
412
+ return 26;
413
+ case 20:
414
+ return 28;
415
+ case 21:
416
+ return 31;
417
+ case 22:
418
+ return 32;
419
+ case 23:
420
+ return 33;
421
+ case 24:
422
+ return 34;
423
+ case 25:
424
+ return 35;
425
+ case 26:
426
+ return 36;
427
+ case 27:
428
+ return 37;
429
+ case 28:
430
+ return 38;
431
+ case 29:
432
+ return 39;
433
+ case 30:
434
+ return 40;
435
+ case 31:
436
+ return 41;
437
+ case 32:
438
+ return 42;
439
+ case 33:
440
+ return 43;
441
+ case 34:
442
+ return 44;
443
+ case 35:
444
+ return 55;
445
+ case 36:
446
+ return 56;
447
+ case 37:
448
+ return 57;
449
+ case 38:
450
+ return 58;
451
+ case 39:
452
+ return 59;
453
+ case 40:
454
+ return 60;
455
+ case 41:
456
+ return 61;
457
+ case 42:
458
+ return 47;
459
+ case 43:
460
+ return 49;
461
+ case 44:
462
+ return 51;
463
+ case 45:
464
+ return 54;
465
+ case 46:
466
+ return 53;
467
+ case 47:
468
+ this.begin("string");
469
+ break;
470
+ case 48:
471
+ this.popState();
472
+ break;
473
+ case 49:
474
+ return "qString";
475
+ case 50:
476
+ return a.yytext = a.yytext.trim(), 62;
477
+ }
478
+ },
479
+ rules: [/^(?:title\s[^#\n;]+)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:(\r?\n)+)/i, /^(?:\s+)/i, /^(?:#[^\n]*)/i, /^(?:%[^\n]*)/i, /^(?:$)/i, /^(?:requirementDiagram\b)/i, /^(?:\{)/i, /^(?:\})/i, /^(?::)/i, /^(?:id\b)/i, /^(?:text\b)/i, /^(?:risk\b)/i, /^(?:verifyMethod\b)/i, /^(?:requirement\b)/i, /^(?:functionalRequirement\b)/i, /^(?:interfaceRequirement\b)/i, /^(?:performanceRequirement\b)/i, /^(?:physicalRequirement\b)/i, /^(?:designConstraint\b)/i, /^(?:low\b)/i, /^(?:medium\b)/i, /^(?:high\b)/i, /^(?:analysis\b)/i, /^(?:demonstration\b)/i, /^(?:inspection\b)/i, /^(?:test\b)/i, /^(?:element\b)/i, /^(?:contains\b)/i, /^(?:copies\b)/i, /^(?:derives\b)/i, /^(?:satisfies\b)/i, /^(?:verifies\b)/i, /^(?:refines\b)/i, /^(?:traces\b)/i, /^(?:type\b)/i, /^(?:docref\b)/i, /^(?:<-)/i, /^(?:->)/i, /^(?:-)/i, /^(?:["])/i, /^(?:["])/i, /^(?:[^"]*)/i, /^(?:[\w][^\r\n\{\<\>\-\=]*)/i],
480
+ conditions: { acc_descr_multiline: { rules: [6, 7], inclusive: !1 }, acc_descr: { rules: [4], inclusive: !1 }, acc_title: { rules: [2], inclusive: !1 }, unqString: { rules: [], inclusive: !1 }, token: { rules: [], inclusive: !1 }, string: { rules: [48, 49], inclusive: !1 }, INITIAL: { rules: [0, 1, 3, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 50], inclusive: !0 } }
481
+ };
482
+ return V;
483
+ })();
484
+ ie.lexer = $e;
485
+ function re() {
486
+ this.yy = {};
487
+ }
488
+ return re.prototype = ie, ie.Parser = re, new re();
489
+ })();
490
+ ce.parser = ce;
491
+ const He = ce;
492
+ let ue = [], b = {}, K = {}, q = {}, G = {};
493
+ const We = {
494
+ REQUIREMENT: "Requirement",
495
+ FUNCTIONAL_REQUIREMENT: "Functional Requirement",
496
+ INTERFACE_REQUIREMENT: "Interface Requirement",
497
+ PERFORMANCE_REQUIREMENT: "Performance Requirement",
498
+ PHYSICAL_REQUIREMENT: "Physical Requirement",
499
+ DESIGN_CONSTRAINT: "Design Constraint"
500
+ }, Ke = {
501
+ LOW_RISK: "Low",
502
+ MED_RISK: "Medium",
503
+ HIGH_RISK: "High"
504
+ }, Ge = {
505
+ VERIFY_ANALYSIS: "Analysis",
506
+ VERIFY_DEMONSTRATION: "Demonstration",
507
+ VERIFY_INSPECTION: "Inspection",
508
+ VERIFY_TEST: "Test"
509
+ }, je = {
510
+ CONTAINS: "contains",
511
+ COPIES: "copies",
512
+ DERIVES: "derives",
513
+ SATISFIES: "satisfies",
514
+ VERIFIES: "verifies",
515
+ REFINES: "refines",
516
+ TRACES: "traces"
517
+ }, ze = (e, t) => (K[e] === void 0 && (K[e] = {
518
+ name: e,
519
+ type: t,
520
+ id: b.id,
521
+ text: b.text,
522
+ risk: b.risk,
523
+ verifyMethod: b.verifyMethod
524
+ }), b = {}, K[e]), Xe = () => K, Je = (e) => {
525
+ b !== void 0 && (b.id = e);
526
+ }, Ze = (e) => {
527
+ b !== void 0 && (b.text = e);
528
+ }, et = (e) => {
529
+ b !== void 0 && (b.risk = e);
530
+ }, tt = (e) => {
531
+ b !== void 0 && (b.verifyMethod = e);
532
+ }, it = (e) => (G[e] === void 0 && (G[e] = {
533
+ name: e,
534
+ type: q.type,
535
+ docRef: q.docRef
536
+ }, Ne.info("Added new requirement: ", e)), q = {}, G[e]), rt = () => G, nt = (e) => {
537
+ q !== void 0 && (q.type = e);
538
+ }, st = (e) => {
539
+ q !== void 0 && (q.docRef = e);
540
+ }, at = (e, t, l) => {
541
+ ue.push({
542
+ type: e,
543
+ src: t,
544
+ dst: l
545
+ });
546
+ }, lt = () => ue, ot = () => {
547
+ ue = [], b = {}, K = {}, q = {}, G = {}, Ye();
548
+ }, ct = {
549
+ RequirementType: We,
550
+ RiskLevel: Ke,
551
+ VerifyType: Ge,
552
+ Relationships: je,
553
+ getConfig: () => Te().req,
554
+ addRequirement: ze,
555
+ getRequirements: Xe,
556
+ setNewReqId: Je,
557
+ setNewReqText: Ze,
558
+ setNewReqRisk: et,
559
+ setNewReqVerifyMethod: tt,
560
+ setAccTitle: De,
561
+ getAccTitle: Me,
562
+ setAccDescription: Fe,
563
+ getAccDescription: Ce,
564
+ addElement: it,
565
+ getElements: rt,
566
+ setNewElementType: nt,
567
+ setNewElementDocRef: st,
568
+ addRelationship: at,
569
+ getRelationships: lt,
570
+ clear: ot
571
+ }, ht = (e) => `
572
+
573
+ marker {
574
+ fill: ${e.relationColor};
575
+ stroke: ${e.relationColor};
576
+ }
577
+
578
+ marker.cross {
579
+ stroke: ${e.lineColor};
580
+ }
581
+
582
+ svg {
583
+ font-family: ${e.fontFamily};
584
+ font-size: ${e.fontSize};
585
+ }
586
+
587
+ .reqBox {
588
+ fill: ${e.requirementBackground};
589
+ fill-opacity: 1.0;
590
+ stroke: ${e.requirementBorderColor};
591
+ stroke-width: ${e.requirementBorderSize};
592
+ }
593
+
594
+ .reqTitle, .reqLabel{
595
+ fill: ${e.requirementTextColor};
596
+ }
597
+ .reqLabelBox {
598
+ fill: ${e.relationLabelBackground};
599
+ fill-opacity: 1.0;
600
+ }
601
+
602
+ .req-title-line {
603
+ stroke: ${e.requirementBorderColor};
604
+ stroke-width: ${e.requirementBorderSize};
605
+ }
606
+ .relationshipLine {
607
+ stroke: ${e.relationColor};
608
+ stroke-width: 1;
609
+ }
610
+ .relationshipLabel {
611
+ fill: ${e.relationLabelColor};
612
+ }
613
+
614
+ `, ut = ht, he = {
615
+ CONTAINS: "contains",
616
+ ARROW: "arrow"
617
+ }, dt = (e, t) => {
618
+ let l = e.append("defs").append("marker").attr("id", he.CONTAINS + "_line_ending").attr("refX", 0).attr("refY", t.line_height / 2).attr("markerWidth", t.line_height).attr("markerHeight", t.line_height).attr("orient", "auto").append("g");
619
+ l.append("circle").attr("cx", t.line_height / 2).attr("cy", t.line_height / 2).attr("r", t.line_height / 2).attr("fill", "none"), l.append("line").attr("x1", 0).attr("x2", t.line_height).attr("y1", t.line_height / 2).attr("y2", t.line_height / 2).attr("stroke-width", 1), l.append("line").attr("y1", 0).attr("y2", t.line_height).attr("x1", t.line_height / 2).attr("x2", t.line_height / 2).attr("stroke-width", 1), e.append("defs").append("marker").attr("id", he.ARROW + "_line_ending").attr("refX", t.line_height).attr("refY", 0.5 * t.line_height).attr("markerWidth", t.line_height).attr("markerHeight", t.line_height).attr("orient", "auto").append("path").attr(
620
+ "d",
621
+ `M0,0
622
+ L${t.line_height},${t.line_height / 2}
623
+ M${t.line_height},${t.line_height / 2}
624
+ L0,${t.line_height}`
625
+ ).attr("stroke-width", 1);
626
+ }, xe = {
627
+ ReqMarkers: he,
628
+ insertLineEndings: dt
629
+ };
630
+ let y = {}, Se = 0;
631
+ const Ae = (e, t) => e.insert("rect", "#" + t).attr("class", "req reqBox").attr("x", 0).attr("y", 0).attr("width", y.rect_min_width + "px").attr("height", y.rect_min_height + "px"), ve = (e, t, l) => {
632
+ let c = y.rect_min_width / 2, u = e.append("text").attr("class", "req reqLabel reqTitle").attr("id", t).attr("x", c).attr("y", y.rect_padding).attr("dominant-baseline", "hanging"), d = 0;
633
+ l.forEach((g) => {
634
+ d == 0 ? u.append("tspan").attr("text-anchor", "middle").attr("x", y.rect_min_width / 2).attr("dy", 0).text(g) : u.append("tspan").attr("text-anchor", "middle").attr("x", y.rect_min_width / 2).attr("dy", y.line_height * 0.75).text(g), d++;
635
+ });
636
+ let p = 1.5 * y.rect_padding, h = d * y.line_height * 0.75, o = p + h;
637
+ return e.append("line").attr("class", "req-title-line").attr("x1", "0").attr("x2", y.rect_min_width).attr("y1", o).attr("y2", o), {
638
+ titleNode: u,
639
+ y: o
640
+ };
641
+ }, we = (e, t, l, c) => {
642
+ let u = e.append("text").attr("class", "req reqLabel").attr("id", t).attr("x", y.rect_padding).attr("y", c).attr("dominant-baseline", "hanging"), d = 0;
643
+ const p = 30;
644
+ let h = [];
645
+ return l.forEach((o) => {
646
+ let g = o.length;
647
+ for (; g > p && d < 3; ) {
648
+ let R = o.substring(0, p);
649
+ o = o.substring(p, o.length), g = o.length, h[h.length] = R, d++;
650
+ }
651
+ if (d == 3) {
652
+ let R = h[h.length - 1];
653
+ h[h.length - 1] = R.substring(0, R.length - 4) + "...";
654
+ } else
655
+ h[h.length] = o;
656
+ d = 0;
657
+ }), h.forEach((o) => {
658
+ u.append("tspan").attr("x", y.rect_padding).attr("dy", y.line_height).text(o);
659
+ }), u;
660
+ }, pt = (e, t, l, c) => {
661
+ const u = t.node().getTotalLength(), d = t.node().getPointAtLength(u * 0.5), p = "rel" + Se;
662
+ Se++;
663
+ const o = e.append("text").attr("class", "req relationshipLabel").attr("id", p).attr("x", d.x).attr("y", d.y).attr("text-anchor", "middle").attr("dominant-baseline", "middle").text(c).node().getBBox();
664
+ e.insert("rect", "#" + p).attr("class", "req reqLabelBox").attr("x", d.x - o.width / 2).attr("y", d.y - o.height / 2).attr("width", o.width).attr("height", o.height).attr("fill", "white").attr("fill-opacity", "85%");
665
+ }, ft = function(e, t, l, c, u) {
666
+ const d = l.edge(H(t.src), H(t.dst)), p = Qe().x(function(o) {
667
+ return o.x;
668
+ }).y(function(o) {
669
+ return o.y;
670
+ }), h = e.insert("path", "#" + c).attr("class", "er relationshipLine").attr("d", p(d.points)).attr("fill", "none");
671
+ t.type == u.db.Relationships.CONTAINS ? h.attr(
672
+ "marker-start",
673
+ "url(" + ke.getUrl(y.arrowMarkerAbsolute) + "#" + t.type + "_line_ending)"
674
+ ) : (h.attr("stroke-dasharray", "10,7"), h.attr(
675
+ "marker-end",
676
+ "url(" + ke.getUrl(y.arrowMarkerAbsolute) + "#" + xe.ReqMarkers.ARROW + "_line_ending)"
677
+ )), pt(e, h, y, `<<${t.type}>>`);
678
+ }, yt = (e, t, l) => {
679
+ Object.keys(e).forEach((c) => {
680
+ let u = e[c];
681
+ c = H(c), Ne.info("Added new requirement: ", c);
682
+ const d = l.append("g").attr("id", c), p = "req-" + c, h = Ae(d, p);
683
+ let o = ve(d, c + "_title", [
684
+ `<<${u.type}>>`,
685
+ `${u.name}`
686
+ ]);
687
+ we(
688
+ d,
689
+ c + "_body",
690
+ [
691
+ `Id: ${u.id}`,
692
+ `Text: ${u.text}`,
693
+ `Risk: ${u.risk}`,
694
+ `Verification: ${u.verifyMethod}`
695
+ ],
696
+ o.y
697
+ );
698
+ const g = h.node().getBBox();
699
+ t.setNode(c, {
700
+ width: g.width,
701
+ height: g.height,
702
+ shape: "rect",
703
+ id: c
704
+ });
705
+ });
706
+ }, _t = (e, t, l) => {
707
+ Object.keys(e).forEach((c) => {
708
+ let u = e[c];
709
+ const d = H(c), p = l.append("g").attr("id", d), h = "element-" + d, o = Ae(p, h);
710
+ let g = ve(p, h + "_title", ["<<Element>>", `${c}`]);
711
+ we(
712
+ p,
713
+ h + "_body",
714
+ [`Type: ${u.type || "Not Specified"}`, `Doc Ref: ${u.docRef || "None"}`],
715
+ g.y
716
+ );
717
+ const R = o.node().getBBox();
718
+ t.setNode(d, {
719
+ width: R.width,
720
+ height: R.height,
721
+ shape: "rect",
722
+ id: d
723
+ });
724
+ });
725
+ }, gt = (e, t) => (e.forEach(function(l) {
726
+ let c = H(l.src), u = H(l.dst);
727
+ t.setEdge(c, u, { relationship: l });
728
+ }), e), Et = function(e, t) {
729
+ t.nodes().forEach(function(l) {
730
+ l !== void 0 && t.node(l) !== void 0 && (e.select("#" + l), e.select("#" + l).attr(
731
+ "transform",
732
+ "translate(" + (t.node(l).x - t.node(l).width / 2) + "," + (t.node(l).y - t.node(l).height / 2) + " )"
733
+ ));
734
+ });
735
+ }, H = (e) => e.replace(/\s/g, "").replace(/\./g, "_"), Rt = (e, t, l, c) => {
736
+ y = Te().requirement;
737
+ const u = y.securityLevel;
738
+ let d;
739
+ u === "sandbox" && (d = oe("#i" + t));
740
+ const h = (u === "sandbox" ? oe(d.nodes()[0].contentDocument.body) : oe("body")).select(`[id='${t}']`);
741
+ xe.insertLineEndings(h, y);
742
+ const o = new Be({
743
+ multigraph: !1,
744
+ compound: !1,
745
+ directed: !0
746
+ }).setGraph({
747
+ rankdir: y.layoutDirection,
748
+ marginx: 20,
749
+ marginy: 20,
750
+ nodesep: 100,
751
+ edgesep: 100,
752
+ ranksep: 100
753
+ }).setDefaultEdgeLabel(function() {
754
+ return {};
755
+ });
756
+ let g = c.db.getRequirements(), R = c.db.getElements(), A = c.db.getRelationships();
757
+ yt(g, o, h), _t(R, o, h), gt(A, o), Ue(o), Et(h, o), A.forEach(function(x) {
758
+ ft(h, x, o, t, c);
759
+ });
760
+ const T = y.rect_padding, N = h.node().getBBox(), v = N.width + T * 2, k = N.height + T * 2;
761
+ Pe(h, k, v, y.useMaxWidth), h.attr("viewBox", `${N.x - T} ${N.y - T} ${v} ${k}`);
762
+ }, mt = {
763
+ draw: Rt
764
+ }, wt = {
765
+ parser: He,
766
+ db: ct,
767
+ renderer: mt,
768
+ styles: ut
769
+ };
770
+ export {
771
+ wt as diagram
772
+ };