filecat 7.7.4 → 7.8.0

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 (205) hide show
  1. package/build/dist/1045.0e4bdc838c37771a7f50.js +1 -0
  2. package/build/dist/1075.493acb74297c1e753de2.js +1 -0
  3. package/build/dist/1128.b80776fbdbdda36034c3.js +1 -0
  4. package/build/dist/1388.1dcf844b452e3aae3dc0.js +1 -0
  5. package/build/dist/1671.fb137d27b5763953487e.js +1 -0
  6. package/build/dist/{6887.93191dae462af3692775.js → 1738.b8ab2bd79df131e60051.js} +1 -1
  7. package/build/dist/1802.e43e833638f6ba8e22d7.js +1 -0
  8. package/build/dist/1964.bd3d684b50aa5191b413.js +1 -0
  9. package/build/dist/200.bb7f6ce5543bd7ff6d97.js +1 -0
  10. package/build/dist/2105.e4ba1c1d506b3fe14e8e.js +1 -0
  11. package/build/dist/2122.bc10dcdbbfc38e0ef883.js +1 -0
  12. package/build/dist/{3457.18b45379d8bcf7f5f3b5.js → 2180.df641ebaead77c4ada71.js} +1 -1
  13. package/build/dist/2300.9e1baa1c0368abe53d96.js +2 -0
  14. package/build/dist/2479.15722ac55b05c521f4f7.js +1 -0
  15. package/build/dist/2572.8fdddfebb4da2f29dbd8.js +1 -0
  16. package/build/dist/2674.0c822a9c458f923a4eff.js +1 -0
  17. package/build/dist/{1001.44a1a25c7d6d3f294bf3.js → 2822.9417e764a14f8f5f57dc.js} +1 -1
  18. package/build/dist/2994.c492be0d907fa468a9be.js +1 -0
  19. package/build/dist/{3140.b078ec311f99170b7f4c.js → 3140.794a212da633caf38b3a.js} +2 -2
  20. package/build/dist/3230.7798ab546facfa058b34.js +1 -0
  21. package/build/dist/3283.9386fc7f67aef46604fb.js +1 -0
  22. package/build/dist/{3299.9bd4cf5d1679479639a8.js → 3299.d01f5a742d80f4e6e25b.js} +1 -1
  23. package/build/dist/3300.b8a3bc571293a6280ed8.js +1 -0
  24. package/build/dist/{3402.d412940350051a52d7ac.js → 3402.b6dc28d2f9bace7cde85.js} +1 -1
  25. package/build/dist/3509.cbcb309fbf49db53229f.js +1 -0
  26. package/build/dist/{3727.b8d9cbae9de47bf8d49b.js → 3510.b975b8bfdee5e8518215.js} +1 -1
  27. package/build/dist/{587.c75ed69a8373139346f9.js → 3566.ba323afadcf41fad2fa7.js} +1 -1
  28. package/build/dist/3608.aff9429024b740ac5cd0.js +1 -0
  29. package/build/dist/3990.5e16453f57b90b01d539.js +1 -0
  30. package/build/dist/4004.de90f1192487a24a0a9a.js +1 -0
  31. package/build/dist/4061.c0eb5824eeb6a59fa827.js +1 -0
  32. package/build/dist/4220.b65b40382726a69ba0bc.js +1 -0
  33. package/build/dist/{3883.70d42c3a335d6833f07e.js → 4376.b022a792fb34fbe50398.js} +1 -1
  34. package/build/dist/4437.4d5a0965043471411a00.js +1 -0
  35. package/build/dist/4469.536491f90535e831ce3e.js +1 -0
  36. package/build/dist/453.8877eb10f13258c290bc.js +1 -0
  37. package/build/dist/4560.8ef2e4b60cc86d019dd6.js +1 -0
  38. package/build/dist/4735.838cd0f656bbf7d99ff6.js +1 -0
  39. package/build/dist/4772.9b95c402a4def0f576e3.js +1 -0
  40. package/build/dist/4985.44cb7d829ca477e368b8.js +1 -0
  41. package/build/dist/5516.645e4a900df9bdc1806c.js +1 -0
  42. package/build/dist/5526.6b4867751becda056ed8.js +1 -0
  43. package/build/dist/5617.8efc3b1d218f80df9b39.js +1 -0
  44. package/build/dist/5744.e9f1efb88a617b05b709.js +1 -0
  45. package/build/dist/583.cef46d6b21c6fa6454cf.js +1 -0
  46. package/build/dist/6089.6d5d19a327284ff3b11c.js +1 -0
  47. package/build/dist/6164.7dae9989dd129479f952.js +1 -0
  48. package/build/dist/6284.10deb80685728f50aa45.js +1 -0
  49. package/build/dist/629.b75b024aacc43e0d69cf.js +1 -0
  50. package/build/dist/6344.291e5dadc74e62739774.js +1 -0
  51. package/build/dist/6492.3ee4060598de873d8e8f.js +1 -0
  52. package/build/dist/6571.b381c44055704e3ba649.js +1 -0
  53. package/build/dist/6731.6763296ce5ae210bc0fe.js +1 -0
  54. package/build/dist/6759.f88b50c41207cb8345d1.js +1 -0
  55. package/build/dist/{4951.88718d978aea2dd40006.js → 6789.34921a30c8a81f0a6407.js} +1 -1
  56. package/build/dist/6800.ee99fd0a88b6acbaaf2c.js +1 -0
  57. package/build/dist/6803.fe4297b1e51c3bfc7f50.js +1 -0
  58. package/build/dist/{313.d51fc773856f078487ad.js → 6806.9ebf089eba60f3b8e946.js} +1 -1
  59. package/build/dist/7038.4e4fc8e405c56d3080e2.js +1 -0
  60. package/build/dist/7310.bf944d03f24fcf109680.js +1 -0
  61. package/build/dist/{359.1b95bd6368196ccaa731.js → 7430.25bf8437ad8f7c1fd36f.js} +1 -1
  62. package/build/dist/7483.5e26ada69b33418c31a8.js +1 -0
  63. package/build/dist/{4087.4796ff56340985c35542.js → 7486.fe0b5f867c08b40a3360.js} +1 -1
  64. package/build/dist/7567.09e1b34ad9bd3e463eb4.js +1 -0
  65. package/build/dist/7834.7a593dcb80ca09f58586.js +1 -0
  66. package/build/dist/784.48a3b71205680f427109.js +1 -0
  67. package/build/dist/7943.54c702542d55f576a576.js +1 -0
  68. package/build/dist/7954.6ce241a8ed27cb26efc6.js +1 -0
  69. package/build/dist/8079.f6f2be43e5d933ae1f6f.js +1 -0
  70. package/build/dist/8677.860320b7f36947e57d11.js +1 -0
  71. package/build/dist/8727.3628c746061aed7a4077.js +1 -0
  72. package/build/dist/9299.ed4de6cd4f4bfa0a966a.js +1 -0
  73. package/build/dist/9324.ef229da9b943484298ba.js +1 -0
  74. package/build/dist/9364.d2570d78afc50fe1b23e.js +1 -0
  75. package/build/dist/9463.2629a7daf4c2865b9b96.js +1 -0
  76. package/build/dist/index.html +1 -1
  77. package/build/dist/main.98bb29605335d9b2219f.js +2 -0
  78. package/build/main.js +1 -1
  79. package/package.json +4 -5
  80. package/build/dist/1075.3ef2e1902e9f7e9e37b1.js +0 -1
  81. package/build/dist/1312.199a506fb836a2412255.js +0 -1
  82. package/build/dist/136.e3bb3c50051edb17454d.js +0 -1
  83. package/build/dist/1478.c58a43bb24820a13eaed.js +0 -1
  84. package/build/dist/1491.901cce0168c42ad319fa.js +0 -1
  85. package/build/dist/1566.4f405afd26063b55129c.js +0 -1
  86. package/build/dist/161.98f6c2a50bf3824a6efb.js +0 -1
  87. package/build/dist/1654.a21a099e2749ef167ea9.js +0 -1
  88. package/build/dist/1875.46dd3a6cc071d45a32f1.js +0 -1
  89. package/build/dist/1883.14c90bbe93fe206906f0.js +0 -1
  90. package/build/dist/1924.c7bd2a2aa0e9bc78c9ba.js +0 -1
  91. package/build/dist/2000.f55ddba9e6313243f028.js +0 -1
  92. package/build/dist/2101.d4efa6a2c1e9169d9225.js +0 -1
  93. package/build/dist/2180.60fe32ab12c2fa1570a4.js +0 -1
  94. package/build/dist/2191.4c4f2fd5127168a81877.js +0 -1
  95. package/build/dist/2213.ceffb8fd7be66b35d079.js +0 -1
  96. package/build/dist/2463.6e530d1e9b5c58dba166.js +0 -1
  97. package/build/dist/2623.8b1e5e391dd4e05fc119.js +0 -1
  98. package/build/dist/2674.3713c09449bdd57b1066.js +0 -1
  99. package/build/dist/2894.8395ec5e280cc6b6c4dc.js +0 -1
  100. package/build/dist/3042.f490cfa4208208262398.js +0 -1
  101. package/build/dist/3096.d0b2c77a23418c545c01.js +0 -1
  102. package/build/dist/311.da79ace98b69a635c41c.js +0 -1
  103. package/build/dist/3166.088cf4a0356c3a6e30a0.js +0 -1
  104. package/build/dist/3357.4f1bf81ecc3c11a3f813.js +0 -1
  105. package/build/dist/3475.d10d21b637761d7d886d.js +0 -1
  106. package/build/dist/3708.04401b24d95214d641e5.js +0 -1
  107. package/build/dist/3752.01fc1f14b29f340e41fd.js +0 -1
  108. package/build/dist/3871.7a387a9dc21883d08423.js +0 -1
  109. package/build/dist/3994.19fb81947d65fc81b0a2.js +0 -1
  110. package/build/dist/4012.b516fdc981e55be2ebb2.js +0 -1
  111. package/build/dist/4122.9ea6b5dd8dc9d2265825.js +0 -1
  112. package/build/dist/4141.06960673a6a484e7b88d.js +0 -1
  113. package/build/dist/4190.ff72264b4f07f6542d33.js +0 -1
  114. package/build/dist/4239.1b49d7c26192fb637d57.js +0 -1
  115. package/build/dist/4288.8dc8f5d962720e084952.js +0 -1
  116. package/build/dist/434.04cdc2a05316f92d1d38.js +0 -1
  117. package/build/dist/4376.f3c60897f70dd4e33d2f.js +0 -1
  118. package/build/dist/4472.9e708dd3e1c9db7d7396.js +0 -1
  119. package/build/dist/4473.b42b37616f13be64199b.js +0 -1
  120. package/build/dist/449.3fd75e05da22fe1c5ecc.js +0 -1
  121. package/build/dist/452.4974390f4f4d991216e5.js +0 -1
  122. package/build/dist/4547.36b5848220c04c47bc80.js +0 -1
  123. package/build/dist/4605.ef0f4204b3bf3a18efa6.js +0 -1
  124. package/build/dist/4804.fbd0ffcf57d9dffc15b7.js +0 -1
  125. package/build/dist/482.0c7512372a1fbf61d704.js +0 -1
  126. package/build/dist/4963.22d7db9b376a42d3f00b.js +0 -1
  127. package/build/dist/5097.a0de16bf7b90a8b1157d.js +0 -1
  128. package/build/dist/5123.d9ed79af478b5cc4f1b2.js +0 -1
  129. package/build/dist/5332.8b6e85d8764e907a01d5.js +0 -1
  130. package/build/dist/536.660d866952b46ba53180.js +0 -1
  131. package/build/dist/548.d3d912d0c0c7e835e1dc.js +0 -1
  132. package/build/dist/5516.cc92dfbf06ddcd133dbc.js +0 -1
  133. package/build/dist/5590.585778da623ec71f7722.js +0 -1
  134. package/build/dist/5616.14df0fe505c4dadf4042.js +0 -1
  135. package/build/dist/5695.95dc69f3b02812eb9e93.js +0 -1
  136. package/build/dist/5697.6ac62f99ca19a979f1eb.js +0 -1
  137. package/build/dist/5741.237d817efc942de875e5.js +0 -1
  138. package/build/dist/5849.d26365d4b19533db6fd6.js +0 -1
  139. package/build/dist/5902.3969a79465383ff4bbb4.js +0 -1
  140. package/build/dist/5942.981e03467a3b2c653ab8.js +0 -1
  141. package/build/dist/6029.63e4beb66df7afc65a90.js +0 -1
  142. package/build/dist/6054.f91307b52046172fc5f8.js +0 -1
  143. package/build/dist/6089.0863a6a09be2b97e84e1.js +0 -1
  144. package/build/dist/6095.d845e356a4db8a241cdb.js +0 -1
  145. package/build/dist/6114.ca67e88c701691b3bb1e.js +0 -1
  146. package/build/dist/612.74d77e32957a5c6eb197.js +0 -1
  147. package/build/dist/625.d9e531476b3306e0b837.js +0 -1
  148. package/build/dist/6318.66541f9cef18d14ea3ea.js +0 -1
  149. package/build/dist/6455.5c950f6eb61015409eb6.js +0 -1
  150. package/build/dist/6527.436d2d5d81376e6a54ae.js +0 -1
  151. package/build/dist/6530.2f1b283a902603262048.js +0 -1
  152. package/build/dist/6610.b92f337fcc1b347350fb.js +0 -1
  153. package/build/dist/6926.2786af754adcdabfbede.js +0 -1
  154. package/build/dist/697.62f8b1ec6d2cd40ed316.js +0 -1
  155. package/build/dist/70.be2f9130c93c4175d12f.js +0 -1
  156. package/build/dist/7081.9e1e196fecfcccb4bfb9.js +0 -1
  157. package/build/dist/7128.3573ab2a5f28b79ba89e.js +0 -1
  158. package/build/dist/7163.ad09accaa87e565b8dc0.js +0 -1
  159. package/build/dist/72.a1d87dabb7f0615b3a21.js +0 -1
  160. package/build/dist/7229.50a1700104d1e4732735.js +0 -1
  161. package/build/dist/7332.d024ae75a3da2f7674a1.js +0 -1
  162. package/build/dist/7509.370c49d7ff43e289190c.js +0 -1
  163. package/build/dist/7514.dbf525bade6ffbd70af6.js +0 -2
  164. package/build/dist/7557.7d62939c56391a647067.js +0 -1
  165. package/build/dist/7588.2d840229f62de92b22e5.js +0 -1
  166. package/build/dist/7632.5660653552f755580adc.js +0 -1
  167. package/build/dist/7639.b3c6382de2fde652a40b.js +0 -1
  168. package/build/dist/779.91614fabf5c9eb3aafa0.js +0 -1
  169. package/build/dist/7810.979796e8a3aad6d4d72f.js +0 -1
  170. package/build/dist/7897.8b8070d6abe5c2327168.js +0 -1
  171. package/build/dist/7941.dbef0b0f412899800b13.js +0 -1
  172. package/build/dist/7953.5cd280effe2e967ea490.js +0 -1
  173. package/build/dist/7954.efecc100b407af204add.js +0 -1
  174. package/build/dist/7959.e31a21f28ff463d9d5e9.js +0 -1
  175. package/build/dist/8034.301f1099c4a7ce6c2829.js +0 -1
  176. package/build/dist/8080.e1c9af30bdd818b08c6e.js +0 -1
  177. package/build/dist/8087.6452b67614a0855535a4.js +0 -1
  178. package/build/dist/8140.bbccc589b007f9d410d1.js +0 -1
  179. package/build/dist/8162.e47cccbe327b26a2ea6f.js +0 -1
  180. package/build/dist/8322.56c8f4b4ad93b1a866c8.js +0 -1
  181. package/build/dist/8376.01a9f23ba06a78922364.js +0 -1
  182. package/build/dist/8433.e54d57e2cc9408e5e411.js +0 -1
  183. package/build/dist/8460.25f0859cb2266f764113.js +0 -1
  184. package/build/dist/8524.7945bff0063dc5c5903d.js +0 -1
  185. package/build/dist/8782.a5498372f1eb6bab41b7.js +0 -1
  186. package/build/dist/8953.23fe6fe13b28168428d3.js +0 -1
  187. package/build/dist/8964.bdf168262ab40956654a.js +0 -1
  188. package/build/dist/9003.69a0d15e722e1ed455b0.js +0 -1
  189. package/build/dist/9299.c2699815e5339e4045f8.js +0 -1
  190. package/build/dist/9385.2b1afe7b55d4c16f97ad.js +0 -1
  191. package/build/dist/9428.3176bab8f5780f060d51.js +0 -1
  192. package/build/dist/9456.506d55e351dec4f45566.js +0 -1
  193. package/build/dist/9465.8ff5871fb708cf7c1021.js +0 -1
  194. package/build/dist/9500.95d19d78b580734ec35e.js +0 -1
  195. package/build/dist/9512.03215278f26dc63c056d.js +0 -1
  196. package/build/dist/9614.cfdbe03d8e2960b0a53a.js +0 -1
  197. package/build/dist/9651.6bf3e34362f10c1aa35d.js +0 -1
  198. package/build/dist/9788.4a1c2f3626e532d3b44c.js +0 -1
  199. package/build/dist/9943.b62436bd9d0730c715a9.js +0 -1
  200. package/build/dist/9967.216bc8d26440bcbaf785.js +0 -1
  201. package/build/dist/9970.aa60aa700a790ba226f0.js +0 -1
  202. package/build/dist/main.7a6fed9f5f814a194409.js +0 -2
  203. /package/build/dist/{7514.dbf525bade6ffbd70af6.js.LICENSE.txt → 2300.9e1baa1c0368abe53d96.js.LICENSE.txt} +0 -0
  204. /package/build/dist/{3140.b078ec311f99170b7f4c.js.LICENSE.txt → 3140.794a212da633caf38b3a.js.LICENSE.txt} +0 -0
  205. /package/build/dist/{main.7a6fed9f5f814a194409.js.LICENSE.txt → main.98bb29605335d9b2219f.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7557],{97557(t,e,n){n.d(e,{diagram:()=>dt});var i=n(15319),r=n(92941),a=n(51255),s=n(89983),o=n(31293),c=n(86827),l=n(51444),h=n(5097),d=n(78041),u=n(75263),p=function(){var t=(0,c.K)(function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n},"o"),e=[6,11,13,14,15,17,19,20,23,24],n=[1,12],i=[1,13],r=[1,14],a=[1,15],s=[1,16],o=[1,19],l=[1,20],h={trace:(0,c.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:(0,c.K)(function(t,e,n,i,r,a,s){var o=a.length-1;switch(r){case 1:return a[o-1];case 3:i.setDirection("LR");break;case 4:i.setDirection("TD");break;case 5:case 9:case 10:this.$=[];break;case 6:a[o-1].push(a[o]),this.$=a[o-1];break;case 7:case 8:this.$=a[o];break;case 11:i.getCommonDb().setDiagramTitle(a[o].substr(6)),this.$=a[o].substr(6);break;case 12:this.$=a[o].trim(),i.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=a[o].trim(),i.getCommonDb().setAccDescription(this.$);break;case 15:i.addSection(a[o].substr(8)),this.$=a[o].substr(8);break;case 18:i.addTask(a[o],0,""),this.$=a[o];break;case 19:i.addEvent(a[o].substr(2)),this.$=a[o]}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},t(e,[2,5],{5:6}),t(e,[2,2]),t(e,[2,3]),t(e,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:n,15:i,17:r,19:a,20:s,21:17,22:18,23:o,24:l},t(e,[2,10],{1:[2,1]}),t(e,[2,6]),{12:21,14:n,15:i,17:r,19:a,20:s,21:17,22:18,23:o,24:l},t(e,[2,8]),t(e,[2,9]),t(e,[2,11]),{16:[1,22]},{18:[1,23]},t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,7]),t(e,[2,12]),t(e,[2,13])],defaultActions:{},parseError:(0,c.K)(function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},"parseError"),parse:(0,c.K)(function(t){var e=this,n=[0],i=[],r=[null],a=[],s=this.table,o="",l=0,h=0,d=0,u=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var f=p.yylloc;a.push(f);var m=p.options&&p.options.ranges;function x(){var t;return"number"!=typeof(t=i.pop()||p.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,c.K)(function(t){n.length=n.length-2*t,r.length=r.length-t,a.length=a.length-t},"popStack"),(0,c.K)(x,"lex");for(var b,k,w,_,v,$,K,S,R,E={};;){if(w=n[n.length-1],this.defaultActions[w]?_=this.defaultActions[w]:(null==b&&(b=x()),_=s[w]&&s[w][b]),void 0===_||!_.length||!_[0]){var T="";for($ in R=[],s[w])this.terminals_[$]&&$>2&&R.push("'"+this.terminals_[$]+"'");T=p.showPosition?"Parse error on line "+(l+1)+":\n"+p.showPosition()+"\nExpecting "+R.join(", ")+", got '"+(this.terminals_[b]||b)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==b?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(T,{text:p.match,token:this.terminals_[b]||b,line:p.yylineno,loc:f,expected:R})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+w+", token: "+b);switch(_[0]){case 1:n.push(b),r.push(p.yytext),a.push(p.yylloc),n.push(_[1]),b=null,k?(b=k,k=null):(h=p.yyleng,o=p.yytext,l=p.yylineno,f=p.yylloc,d>0&&d--);break;case 2:if(K=this.productions_[_[1]][1],E.$=r[r.length-K],E._$={first_line:a[a.length-(K||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(K||1)].first_column,last_column:a[a.length-1].last_column},m&&(E._$.range=[a[a.length-(K||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(E,[o,h,l,g.yy,_[1],r,a].concat(u))))return v;K&&(n=n.slice(0,-1*K*2),r=r.slice(0,-1*K),a=a.slice(0,-1*K)),n.push(this.productions_[_[1]][0]),r.push(E.$),a.push(E._$),S=s[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0},"parse")},d=function(){return{EOF:1,parseError:(0,c.K)(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:(0,c.K)(function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,c.K)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},"input"),unput:(0,c.K)(function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===i.length?this.yylloc.first_column:0)+i[i.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,c.K)(function(){return this._more=!0,this},"more"),reject:(0,c.K)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,c.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,c.K)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,c.K)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,c.K)(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,c.K)(function(t,e){var n,i,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in r)this[a]=r[a];return!1}return!1},"test_match"),next:(0,c.K)(function(){if(this.done)return this.EOF;var t,e,n,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),a=0;a<r.length;a++)if((n=this._input.match(this.rules[r[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,i=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,r[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,r[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,c.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,c.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,c.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,c.K)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,c.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,c.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,c.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,c.K)(function(t,e,n,i){switch(n){case 0:case 1:case 3:case 4:break;case 2:return 13;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;case 10:return this.popState(),"acc_title_value";case 11:return this.begin("acc_descr"),17;case 12:return this.popState(),"acc_descr_value";case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}}}();function u(){this.yy={}}return h.lexer=d,(0,c.K)(u,"Parser"),u.prototype=h,h.Parser=u,new u}();p.parser=p;var g=p,y={};(0,c.V)(y,{addEvent:()=>I,addSection:()=>S,addTask:()=>T,addTaskOrg:()=>M,clear:()=>v,default:()=>H,getCommonDb:()=>_,getDirection:()=>K,getSections:()=>R,getTasks:()=>E,setDirection:()=>$});var f="",m=0,x="LR",b=[],k=[],w=[],_=(0,c.K)(()=>s.Wt,"getCommonDb"),v=(0,c.K)(function(){b.length=0,k.length=0,f="",w.length=0,x="LR",(0,s.IU)()},"clear"),$=(0,c.K)(function(t){x=t},"setDirection"),K=(0,c.K)(function(){return x},"getDirection"),S=(0,c.K)(function(t){f=t,b.push(t)},"addSection"),R=(0,c.K)(function(){return b},"getSections"),E=(0,c.K)(function(){let t=L();let e=0;for(;!t&&e<100;)t=L(),e++;return k.push(...w),k},"getTasks"),T=(0,c.K)(function(t,e,n){const i={id:m++,section:f,type:f,task:t,score:e||0,events:n?[n]:[]};w.push(i)},"addTask"),I=(0,c.K)(function(t){w.find(t=>t.id===m-1).events.push(t)},"addEvent"),M=(0,c.K)(function(t){const e={section:f,type:f,description:t,task:t,classes:[]};k.push(e)},"addTaskOrg"),L=(0,c.K)(function(){const t=(0,c.K)(function(t){return w[t].processed},"compileTask");let e=!0;for(const[n,i]of w.entries())t(n),e=e&&i.processed;return e},"compileTasks"),H={clear:v,getCommonDb:_,getDirection:K,setDirection:$,addSection:S,getSections:R,getTasks:E,addTask:T,addTaskOrg:M,addEvent:I},C=0,N=(0,c.K)(function(t,e){const n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),void 0!==e.class&&n.attr("class",e.class),n},"drawRect"),D=(0,c.K)(function(t,e){const n=15,i=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",n).attr("stroke-width",2).attr("overflow","visible"),r=t.append("g");function a(t){const i=(0,l.JLW)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(n/2.2);t.append("path").attr("class","mouth").attr("d",i).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}function s(t){const i=(0,l.JLW)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(n/2.2);t.append("path").attr("class","mouth").attr("d",i).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}function o(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return r.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),r.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),(0,c.K)(a,"smile"),(0,c.K)(s,"sad"),(0,c.K)(o,"ambivalent"),e.score>3?a(r):e.score<3?s(r):o(r),i},"drawFace"),A=(0,c.K)(function(t,e){const n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n},"drawCircle"),O=(0,c.K)(function(t,e){const n=e.text.replace(/<br\s*\/?>/gi," "),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.attr("class","legend"),i.style("text-anchor",e.anchor),void 0!==e.class&&i.attr("class",e.class);const r=i.append("tspan");return r.attr("x",e.x+2*e.textMargin),r.text(n),i},"drawText"),B=(0,c.K)(function(t,e){function n(t,e,n,i,r){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+i-r)+" "+(t+n-1.2*r)+","+(e+i)+" "+t+","+(e+i)}(0,c.K)(n,"genPoints");const i=t.append("polygon");i.attr("points",n(e.x,e.y,50,20,7)),i.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,O(t,e)},"drawLabel"),P=(0,c.K)(function(t,e,n){const i=t.append("g"),r=V();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=n.width,r.height=n.height,r.class="journey-section section-type-"+e.num,r.rx=3,r.ry=3,N(i,r),G(n)(e.text,i,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+e.num},n,e.colour)},"drawSection"),W=-1,j=(0,c.K)(function(t,e,n,i){const r=e.x+n.width/2,a=t.append("g");W++;a.append("line").attr("id",i+"-task"+W).attr("x1",r).attr("y1",e.y).attr("x2",r).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),D(a,{cx:r,cy:300+30*(5-e.score),score:e.score});const s=V();s.x=e.x,s.y=e.y,s.fill=e.fill,s.width=n.width,s.height=n.height,s.class="task task-type-"+e.num,s.rx=3,s.ry=3,N(a,s),G(n)(e.task,a,s.x,s.y,s.width,s.height,{class:"task"},n,e.colour)},"drawTask"),z=(0,c.K)(function(t,e){N(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),F=(0,c.K)(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),V=(0,c.K)(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),G=function(){function t(t,e,n,r,a,s,o,c){i(e.append("text").attr("x",n+a/2).attr("y",r+s/2+5).style("font-color",c).style("text-anchor","middle").text(t),o)}function e(t,e,n,r,a,s,o,c,l){const{taskFontSize:h,taskFontFamily:d}=c,u=t.split(/<br\s*\/?>/gi);for(let t=0;t<u.length;t++){const c=t*h-h*(u.length-1)/2,p=e.append("text").attr("x",n+a/2).attr("y",r).attr("fill",l).style("text-anchor","middle").style("font-size",h).style("font-family",d);p.append("tspan").attr("x",n+a/2).attr("dy",c).text(u[t]),p.attr("y",r+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(p,o)}}function n(t,n,r,a,s,o,c,l){const h=n.append("switch"),d=h.append("foreignObject").attr("x",r).attr("y",a).attr("width",s).attr("height",o).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");d.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,h,r,a,s,o,c,l),i(d,c)}function i(t,e){for(const n in e)n in e&&t.attr(n,e[n])}return(0,c.K)(t,"byText"),(0,c.K)(e,"byTspan"),(0,c.K)(n,"byFo"),(0,c.K)(i,"_setTextAttrs"),function(i){return"fo"===i.textPlacement?n:"old"===i.textPlacement?t:e}}(),U=(0,c.K)(function(t,e){C=0,W=-1,t.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");function Z(t,e){t.each(function(){var t,n=(0,l.Ltv)(this),i=n.text().split(/(\s+|<br>)/).reverse(),r=[],a=n.attr("y"),s=parseFloat(n.attr("dy")),o=n.text(null).append("tspan").attr("x",0).attr("y",a).attr("dy",s+"em");for(let s=0;s<i.length;s++)t=i[i.length-1-s],r.push(t),o.text(r.join(" ").trim()),(o.node().getComputedTextLength()>e||"<br>"===t)&&(r.pop(),o.text(r.join(" ").trim()),r="<br>"===t?[""]:[t],o=n.append("tspan").attr("x",0).attr("y",a).attr("dy","1.1em").text(t))})}(0,c.K)(Z,"wrap");var q=(0,c.K)(function(t,e,n,i,r,a=!1){const{theme:s,look:o}=i,c=s?.includes("redux"),h=n%(i?.themeVariables?.THEME_COLOR_LIMIT??12)-1,d=t.append("g");e.section=h,d.attr("class",(e.class?e.class+" ":"")+"timeline-node section-"+h);const u=d.append("g"),p=d.append("g"),g=p.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(Z,e.width).node().getBBox(),y=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;if(e.height=g.height+1.1*y*.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,p.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),c&&p.attr("transform",`translate(${e.width/2}, ${a?e.padding/2+3:e.padding})`),Y(u,e,h,r,i),"neo"===o&&(d.attr("data-look","neo"),c)){const e=s.includes("dark"),n=t.node()?.ownerSVGElement??t.node(),i=(0,l.Ltv)(n),r=i.attr("id")??"",a=r?`${r}-drop-shadow`:"drop-shadow";if(i.select(`#${a}`).empty()){const t=i.select("defs");(t.empty()?i.append("defs"):t).append("filter").attr("id",a).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",e?"0.2":"0.06").attr("flood-color",e?"#FFFFFF":"#000000")}}return e},"drawNode"),J=(0,c.K)(function(t,e,n){const i=t.append("g"),r=i.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(Z,e.width).node().getBBox(),a=n.fontSize?.replace?n.fontSize.replace("px",""):n.fontSize;return i.remove(),r.height+1.1*a*.5+e.padding},"getVirtualNodeHeight"),Y=(0,c.K)(function(t,e,n,i,r){const{theme:a}=r,s=a?.includes("redux")?0:5,o=s>0?`M0 ${e.height-5} v${10-e.height} q0,-${s},${s},-${s} h${e.width-10} q${s},0,${s},${s} v${e.height-5} H0 Z`:`M0 ${e.height-5} v${-(e.height-5)} h${e.width} v${e.height} H0 Z`;t.append("path").attr("id",i+"-node-"+C++).attr("class","node-bkg node-"+e.type).attr("d",o),a?.includes("redux")||t.append("line").attr("class","node-line-"+n).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),X={drawRect:N,drawCircle:A,drawSection:P,drawText:O,drawLabel:B,drawTask:j,drawBackgroundRect:z,getTextObj:F,getNoteRect:V,initGraphics:U,drawNode:q,getVirtualNodeHeight:J},Q=(0,c.K)(function(t,e,n,i){const r=(0,s.D7)(),{look:a,theme:c,themeVariables:h}=r,{useGradient:d,gradientStart:u,gradientStop:p}=h,g=r.timeline?.leftMargin??50;o.R.debug("timeline",i.db);const y=r.securityLevel;let f;"sandbox"===y&&(f=(0,l.Ltv)("#i"+e));const m=("sandbox"===y?(0,l.Ltv)(f.nodes()[0].contentDocument.body):(0,l.Ltv)("body")).select("#"+e);m.append("g");const x=i.db.getTasks(),b=i.db.getCommonDb().getDiagramTitle();o.R.debug("task",x),X.initGraphics(m,e);const k=i.db.getSections();o.R.debug("sections",k);let w=0,_=0,v=0,$=0,K=50+g,S=50;$=50;let R=0,E=!0;k.forEach(function(t){const e={number:R,descr:t,section:R,width:150,padding:20,maxHeight:w},n=X.getVirtualNodeHeight(m,e,r);o.R.debug("sectionHeight before draw",n),w=Math.max(w,n+20)});let T=0,I=0;o.R.debug("tasks.length",x.length);for(const[t,e]of x.entries()){const n={number:t,descr:e,section:e.section,width:150,padding:20,maxHeight:_},i=X.getVirtualNodeHeight(m,n,r);o.R.debug("taskHeight before draw",i),_=Math.max(_,i+20),T=Math.max(T,e.events.length);let a=0;for(const t of e.events){const n={descr:t,section:e.section,number:e.section,width:150,padding:20,maxHeight:50};a+=X.getVirtualNodeHeight(m,n,r)}e.events.length>0&&(a+=10*(e.events.length-1)),I=Math.max(I,a)}o.R.debug("maxSectionHeight before draw",w),o.R.debug("maxTaskHeight before draw",_),k&&k.length>0?k.forEach(t=>{const n=x.filter(e=>e.section===t),i={number:R,descr:t,section:R,width:200*Math.max(n.length,1)-50,padding:20,maxHeight:w};o.R.debug("sectionNode",i);const a=m.append("g"),s=X.drawNode(a,i,R,r,e);o.R.debug("sectionNode output",s),a.attr("transform",`translate(${K}, 50)`),S+=w+50,n.length>0&&tt(m,n,R,K,S,_,r,T,I,w,!1,e),K+=200*Math.max(n.length,1),S=50,R++}):(E=!1,tt(m,x,R,K,S,_,r,T,I,w,!0,e));const M=m.node().getBBox();o.R.debug("bounds",M),b&&m.append("text").text(b).attr("x","neo"===a?2*M.x+g:M.width/2-g).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),v=E?w+_+150:_+100;if(m.append("g").attr("class","lineWrapper").append("line").attr("x1",g).attr("y1",v).attr("x2",M.width+3*g).attr("y2",v).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${e}-arrowhead)`),"neo"===a&&d&&"neutral"!==c){const t=m.select("defs"),e=(t.empty()?m.append("defs"):t).append("linearGradient").attr("id",m.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");e.append("stop").attr("offset","0%").attr("stop-color",u).attr("stop-opacity",1),e.append("stop").attr("offset","100%").attr("stop-color",p).attr("stop-opacity",1)}(0,s.ot)(void 0,m,r.timeline?.padding??50,r.timeline?.useMaxWidth??!1)},"draw"),tt=(0,c.K)(function(t,e,n,i,r,a,s,c,l,h,d,u){for(const c of e){const e={descr:c.task,section:n,number:n,width:150,padding:20,maxHeight:a};o.R.debug("taskNode",e);const h=t.append("g").attr("class","taskWrapper"),p=X.drawNode(h,e,n,s,u).height;if(o.R.debug("taskHeight after draw",p),h.attr("transform",`translate(${i}, ${r})`),a=Math.max(a,p),c.events){const e=t.append("g").attr("class","lineWrapper");let o=a;r+=100,o+=et(t,c.events,n,i,r,s,u),r-=100,e.append("line").attr("x1",i+95).attr("y1",r+a).attr("x2",i+95).attr("y2",r+a+100+l+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${u}-arrowhead)`).attr("stroke-dasharray","5,5")}i+=200,d&&!s.timeline?.disableMulticolor&&n++}r-=10},"drawTasks"),et=(0,c.K)(function(t,e,n,i,r,a,s){let c=0;const l=r;r+=100;for(const l of e){const e={descr:l,section:n,number:n,width:150,padding:20,maxHeight:50};o.R.debug("eventNode",e);const h=t.append("g").attr("class","eventWrapper"),d=X.drawNode(h,e,n,a,s,!0).height;c+=d,h.attr("transform",`translate(${i}, ${r})`),r=r+10+d}return r=l,c},"drawEvents"),nt={setConf:(0,c.K)(()=>{},"setConf"),draw:Q},it=200,rt=(0,c.K)(function(t,e,n,r){const c=(0,s.D7)(),l=c.timeline?.leftMargin??50;o.R.debug("timeline",r.db);const h=(0,i.D)(e);h.append("g");const d=r.db.getTasks(),u=r.db.getCommonDb().getDiagramTitle();o.R.debug("task",d),X.initGraphics(h);const p=r.db.getSections();o.R.debug("sections",p);let g=0,y=0;const f=50+l;let m=50;const x=m,b=230,k=f+b;let w=0;const _=p&&p.length>0,v=_?k:f+b,$=Math.max(50,580);p.forEach(function(t){const e={number:w,descr:t,section:w,width:$,padding:5,maxHeight:g},n=X.getVirtualNodeHeight(h,e,c);o.R.debug("sectionHeight before draw",n),g=Math.max(g,n)});let K=0;o.R.debug("tasks.length",d.length);for(const[t,e]of d.entries()){const n={number:t,descr:e,section:e.section,width:it,padding:5,maxHeight:y},i=X.getVirtualNodeHeight(h,n,c);o.R.debug("taskHeight before draw",i),y=Math.max(y,i);let r=0;for(const t of e.events){const n={descr:t,section:e.section,number:e.section,width:300,padding:5,maxHeight:50};r+=X.getVirtualNodeHeight(h,n,c)}e.events.length>0&&(r+=10*(e.events.length-1)),K=Math.max(K,r)+0}o.R.debug("maxSectionHeight before draw",g),o.R.debug("maxTaskHeight before draw",y);const S=Math.max(y,K)+30;_?p.forEach(t=>{const e=d.filter(e=>e.section===t),n={number:w,descr:t,section:w,width:$,padding:5,maxHeight:g};o.R.debug("sectionNode",n);const i=h.append("g"),r=X.drawNode(i,n,w,c);o.R.debug("sectionNode output",r);const a=v-b;i.attr("transform",`translate(${a}, ${m})`);const s=m+r.height+20;e.length>0&&at(h,e,w,v,s,y,c,S,!1);const l=e.length,u=r.height+20+S*Math.max(l,1)-(l>0?60:0);m+=u,w++}):at(h,d,w,v,m,y,c,S,!0);let R=h.node()?.getBBox();if(!R)throw new Error("bbox not found");if(o.R.debug("bounds",R),u){if(h.append("text").text(u).attr("x",R.width/2-l).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),R=h.node()?.getBBox(),!R)throw new Error("bbox not found");o.R.debug("bounds after title",R)}const[E]=(0,a.I5)(c.fontSize),T=2*(E??16),I=.5*(E??16)+20,M=h.append("g").attr("class","lineWrapper");M.append("line").attr("x1",v).attr("y1",x-T).attr("x2",v).attr("y2",R.y+R.height+I).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),M.lower(),(0,s.ot)(void 0,h,c.timeline?.padding??50,c.timeline?.useMaxWidth??!1)},"draw"),at=(0,c.K)(function(t,e,n,i,r,a,s,c,l){for(const h of e){const e={descr:h.task,section:n,number:n,width:it,padding:5,maxHeight:a};o.R.debug("taskNode",e);const d=t.append("g").attr("class","taskWrapper"),u=X.drawNode(d,e,n,s),p=u.height;o.R.debug("taskHeight after draw",p);const g=i-20-u.width;if(d.attr("transform",`translate(${g}, ${r})`),a=Math.max(a,p),h.events&&h.events.length>0){const e=r,a=i+50;st(t,h.events,n,i,a,e,s)}r+=c,l&&!s.timeline?.disableMulticolor&&n++}},"drawTasks"),st=(0,c.K)(function(t,e,n,i,r,a,s){let c=a;for(const a of e){const e={descr:a,section:n,number:n,width:300,padding:5,maxHeight:0};o.R.debug("eventNode",e);const l=t.append("g").attr("class","eventWrapper"),h=X.drawNode(l,e,n,s).height;l.attr("transform",`translate(${r}, ${c})`);const d=c+h/2;t.append("g").attr("class","lineWrapper").append("line").attr("x1",i).attr("y1",d).attr("x2",r).attr("y2",d).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),c=c+h+10}return c-a},"drawEvents"),ot={setConf:(0,c.K)(()=>{},"setConf"),draw:rt},ct=(0,c.K)(t=>{const{theme:e}=(0,s.zj)(),n=e?.includes("dark"),i=(0,r.P1)(e,t.borderColorArray),a=t.svgId?.replace(/^#/,"")??"",o=a?`url(#${a}-drop-shadow)`:t.dropShadow??"none";let c="";for(let e=0;e<(0,r.nw)(t.THEME_COLOR_LIMIT);e++){const r=""+(17-3*e),a=i?t.borderColorArray[e%t.borderColorArray.length]:void 0,s=a??t.mainBkg,l=a??t.nodeBorder;c+=`\n .section-${e-1} rect,\n .section-${e-1} path,\n .section-${e-1} circle {\n fill: ${n&&i?t.mainBkg:s};\n stroke: ${l};\n stroke-width: ${t.strokeWidth};\n filter: ${o};\n }\n\n .section-${e-1} text {\n fill: ${t.nodeBorder};\n font-weight: ${t.fontWeight}\n }\n\n .node-icon-${e-1} {\n font-size: 40px;\n color: ${t["cScaleLabel"+e]};\n }\n\n .section-edge-${e-1} {\n stroke: ${t["cScale"+e]};\n }\n\n .edge-depth-${e-1} {\n stroke-width: ${r};\n }\n\n .section-${e-1} line {\n stroke: ${t["cScaleInv"+e]};\n stroke-width: 3;\n }\n\n .lineWrapper line {\n stroke: ${t.nodeBorder};\n stroke-width:${t.strokeWidth}\n }\n\n .disabled,\n .disabled circle,\n .disabled text {\n fill: ${t.tertiaryColor??"lightgray"};\n }\n\n .disabled text {\n fill: ${t.clusterBorder??"#efefef"};\n }\n `}return c},"genReduxSections"),lt=(0,c.K)(t=>{let e="";const n=(0,r.nw)(t.THEME_COLOR_LIMIT);for(let e=0;e<n;e++)t["lineColor"+e]=t["lineColor"+e]??t["cScaleInv"+e],(0,h.A)(t["lineColor"+e])?t["lineColor"+e]=(0,d.A)(t["lineColor"+e],20):t["lineColor"+e]=(0,u.A)(t["lineColor"+e],20);for(let i=0;i<n;i++){const n=""+(17-3*i);e+=`\n .section-${i-1} rect, .section-${i-1} path, .section-${i-1} circle, .section-${i-1} path {\n fill: ${t["cScale"+i]};\n }\n .section-${i-1} text {\n fill: ${t["cScaleLabel"+i]};\n }\n .node-icon-${i-1} {\n font-size: 40px;\n color: ${t["cScaleLabel"+i]};\n }\n .section-edge-${i-1}{\n stroke: ${t["cScale"+i]};\n }\n .edge-depth-${i-1}{\n stroke-width: ${n};\n }\n .section-${i-1} line {\n stroke: ${t["cScaleInv"+i]} ;\n stroke-width: 3;\n }\n\n .lineWrapper line{\n stroke: ${t["cScaleLabel"+i]} ;\n }\n\n .disabled, .disabled circle, .disabled text {\n fill: ${t.tertiaryColor??"lightgray"};\n }\n .disabled text {\n fill: ${t.clusterBorder??"#efefef"};\n }\n `}return e},"genSections"),ht=(0,c.K)(t=>{const{theme:e}=(0,s.zj)(),n=e?.includes("redux"),i="neutral"===e,a=t.svgId?.replace(/^#/,"")??"";let o="";if(t.useGradient&&a&&t.THEME_COLOR_LIMIT&&!i){const e=(0,r.nw)(t.THEME_COLOR_LIMIT);for(let n=0;n<e;n++)o+=`\n .section-${n-1}[data-look="neo"] rect,\n .section-${n-1}[data-look="neo"] path,\n .section-${n-1}[data-look="neo"] circle {\n fill: ${t.mainBkg};\n stroke: url(#${a}-gradient);\n stroke-width: 2;\n }\n .section-${n-1}[data-look="neo"] line {\n stroke: url(#${a}-gradient);\n stroke-width: 2;\n }`}return`\n .edge {\n stroke-width: 3;\n }\n ${n?ct(t):lt(t)}\n ${o}\n .section-root rect, .section-root path, .section-root circle {\n fill: ${t.git0};\n }\n .section-root text {\n fill: ${t.gitBranchLabel0};\n }\n .icon-container {\n height:100%;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .edge {\n fill: none;\n }\n .eventWrapper {\n filter: brightness(120%);\n }\n`},"getStyles"),dt={db:y,renderer:{setConf:(0,c.K)(()=>{},"setConf"),draw:(0,c.K)((t,e,n,i)=>"TD"===(i?.db?.getDirection?.()??"LR")?ot.draw(t,e,n,i):nt.draw(t,e,n,i),"draw")},parser:g,styles:ht}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7588],{27588(e,r,t){t.d(r,{diagram:()=>i});var a=t(95123),s=(t(79762),t(98889),t(89008),t(75279),t(68741),t(31139),t(26388),t(92662),t(27280),t(56289),t(19831),t(73145),t(20886),t(84828),t(27698)),i={parser:a.Zk,get db(){return new a.u4(2)},renderer:a.q7,styles:a.tM,init:(0,s.K)(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7632],{27632(e,t,n){n.d(t,{diagram:()=>r});var a=n(88167),l=(n(37703),n(79762),n(98889),n(83544),n(89008),n(75279),n(68741),n(31139),n(26388),n(92662),n(27280),n(56289),n(19831),n(73145),n(20886),n(84828),(0,n(27698).K)(e=>`${(0,a.tM)(e)}\n .swimlane.cluster rect {\n stroke: ${e.clusterBorder} !important;\n }\n [data-look="neo"].cluster rect {\n filter: none;\n }\n`,"getStyles")),r=(0,a.ur)({defaultLayout:"swimlane",styles:l})}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7639],{47639(e,r,t){t.d(r,{diagram:()=>y});var n=t(86035),a=t(77454),s=(t(15319),t(89983),t(31293)),l=t(86827),i=t(34376),p=(0,i.sB)().RailroadAbnf.parser.LangiumParser,m=(0,l.K)(e=>{const r=e.alternatives.map(o);return 1===r.length?r[0]:{type:"choice",alternatives:r}},"transformAlternation"),o=(0,l.K)(e=>{const r=e.elements.map(c);return 1===r.length?r[0]:{type:"sequence",elements:r}},"transformConcatenation"),u=(0,l.K)(e=>{if(e.includes("*")){const[r,t]=e.split("*");return{min:r?parseInt(r,10):0,max:t?parseInt(t,10):1/0}}const r=parseInt(e,10);return{min:r,max:r}},"parseRepeat"),c=(0,l.K)(e=>{const r=d(e.primary);if(!e.repeat)return r;const{min:t,max:n}=u(e.repeat);return 0===t&&1===n?{type:"optional",element:r}:{type:"repetition",element:r,min:t,max:n}},"transformElement"),d=(0,l.K)(e=>{switch(e.$type){case"AbnfStringLiteral":case"AbnfNumVal":return{type:"terminal",value:e.value};case"AbnfRuleName":return{type:"nonterminal",name:e.name};case"AbnfGroup":return m(e.element);case"AbnfOptionalGroup":return{type:"optional",element:m(e.element)};default:throw new Error(`Unsupported ABNF primary node: ${e.$type}`)}},"transformPrimary"),f=(0,l.K)(e=>({name:e.name,definition:m(e.definition)}),"transformRule"),b=(0,l.K)(e=>{(0,a.S)(e,n.db),e.title&&n.db.setTitle(e.title),e.rules.map(e=>n.db.addRule(f(e)))},"populateDb"),y={parser:{parse:(0,l.K)(e=>{n.db.clear(),s.R.debug("[ABNF Parser] Starting Langium parse");const r=p.parse(e);if(r.lexerErrors.length>0||r.parserErrors.length>0)throw new i.zg(r);const t=r.value;s.R.debug("[ABNF Parser] Parsed rules:",t.rules.length),b(t),s.R.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:n.db}},db:n.db,renderer:n.U,styles:n.$}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[779],{40779(e,c,a){a.d(c,{createTreeViewServices:()=>s.I});var s=a(97530);a(41303)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7810],{67810(t,e,i){i.d(e,{diagram:()=>C});var n=i(23980),s=i(73145),a=i(20886),r=(i(84828),i(27698)),h=i(19551),o=function(){var t=(0,r.K)(function(t,e,i,n){for(i=i||{},n=t.length;n--;i[t[n]]=e);return i},"o"),e=[1,4],i=[1,14],n=[1,12],s=[1,13],a=[6,7,8],h=[1,20],o=[1,18],l=[1,19],c=[6,7,11],u=[1,6,13,14],d=[1,23],y=[1,24],p=[1,6,7,11,13,14],g={trace:(0,r.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:(0,r.K)(function(t,e,i,n,s,a,r){var h=a.length-1;switch(s){case 6:case 7:return n;case 15:n.addNode(a[h-1].length,a[h].trim());break;case 16:n.addNode(0,a[h].trim())}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:i,7:[1,10],9:9,12:11,13:n,14:s},t(a,[2,3]),{1:[2,2]},t(a,[2,4]),t(a,[2,5]),{1:[2,6],6:i,12:15,13:n,14:s},{6:i,9:16,12:11,13:n,14:s},{6:h,7:o,10:17,11:l},t(c,[2,18],{14:[1,21]}),t(c,[2,16]),t(c,[2,17]),{6:h,7:o,10:22,11:l},{1:[2,7],6:i,12:15,13:n,14:s},t(u,[2,14],{7:d,11:y}),t(p,[2,8]),t(p,[2,9]),t(p,[2,10]),t(c,[2,15]),t(u,[2,13],{7:d,11:y}),t(p,[2,11]),t(p,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,r.K)(function(t,e){if(!e.recoverable){var i=new Error(t);throw i.hash=e,i}this.trace(t)},"parseError"),parse:(0,r.K)(function(t){var e=this,i=[0],n=[],s=[null],a=[],h=this.table,o="",l=0,c=0,u=0,d=a.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(p.yy[g]=this.yy[g]);y.setInput(t,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var f=y.yylloc;a.push(f);var k=y.options&&y.options.ranges;function m(){var t;return"number"!=typeof(t=n.pop()||y.lex()||1)&&(t instanceof Array&&(t=(n=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof p.yy.parseError?this.parseError=p.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,r.K)(function(t){i.length=i.length-2*t,s.length=s.length-t,a.length=a.length-t},"popStack"),(0,r.K)(m,"lex");for(var w,x,b,_,v,S,K,$,I,E={};;){if(b=i[i.length-1],this.defaultActions[b]?_=this.defaultActions[b]:(null==w&&(w=m()),_=h[b]&&h[b][w]),void 0===_||!_.length||!_[0]){var A="";for(S in I=[],h[b])this.terminals_[S]&&S>2&&I.push("'"+this.terminals_[S]+"'");A=y.showPosition?"Parse error on line "+(l+1)+":\n"+y.showPosition()+"\nExpecting "+I.join(", ")+", got '"+(this.terminals_[w]||w)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==w?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(A,{text:y.match,token:this.terminals_[w]||w,line:y.yylineno,loc:f,expected:I})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+w);switch(_[0]){case 1:i.push(w),s.push(y.yytext),a.push(y.yylloc),i.push(_[1]),w=null,x?(w=x,x=null):(c=y.yyleng,o=y.yytext,l=y.yylineno,f=y.yylloc,u>0&&u--);break;case 2:if(K=this.productions_[_[1]][1],E.$=s[s.length-K],E._$={first_line:a[a.length-(K||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(K||1)].first_column,last_column:a[a.length-1].last_column},k&&(E._$.range=[a[a.length-(K||1)].range[0],a[a.length-1].range[1]]),void 0!==(v=this.performAction.apply(E,[o,c,l,p.yy,_[1],s,a].concat(d))))return v;K&&(i=i.slice(0,-1*K*2),s=s.slice(0,-1*K),a=a.slice(0,-1*K)),i.push(this.productions_[_[1]][0]),s.push(E.$),a.push(E._$),$=h[i[i.length-2]][i[i.length-1]],i.push($);break;case 3:return!0}}return!0},"parse")},f=function(){return{EOF:1,parseError:(0,r.K)(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:(0,r.K)(function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,r.K)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},"input"),unput:(0,r.K)(function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var s=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,r.K)(function(){return this._more=!0,this},"more"),reject:(0,r.K)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,r.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,r.K)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,r.K)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,r.K)(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,r.K)(function(t,e){var i,n,s;if(this.options.backtrack_lexer&&(s={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(s.yylloc.range=this.yylloc.range.slice(0))),(n=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var a in s)this[a]=s[a];return!1}return!1},"test_match"),next:(0,r.K)(function(){if(this.done)return this.EOF;var t,e,i,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),a=0;a<s.length;a++)if((i=this._input.match(this.rules[s[a]]))&&(!e||i[0].length>e[0].length)){if(e=i,n=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,s[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[n]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,r.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,r.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,r.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,r.K)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,r.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,r.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,r.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,r.K)(function(t,e,i,n){switch(i){case 0:case 3:return 6;case 1:case 2:return 8;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}}}();function k(){this.yy={}}return g.lexer=f,(0,r.K)(k,"Parser"),k.prototype=g,g.Parser=k,new k}();o.parser=o;var l=o,c=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{(0,r.K)(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,(0,a.IU)()}getRoot(){return this.root}addNode(t,e){const i=a.Y2.sanitizeText(e,(0,a.D7)());if(!this.root)return this.root={text:i,children:[]},this.stack=[{level:0,node:this.root}],void(0,a.ke)(i);this.baseLevel??=t;let n=t-this.baseLevel+1;for(n<=0&&(n=1);this.stack.length>1&&this.stack[this.stack.length-1].level>=n;)this.stack.pop();const s={text:i,children:[]};this.stack[this.stack.length-1].node.children.push(s),this.stack.push({level:n,node:s})}getAccTitle(){return(0,a.iN)()}setAccTitle(t){(0,a.SV)(t)}getAccDescription(){return(0,a.m7)()}setAccDescription(t){(0,a.EI)(t)}getDiagramTitle(){return(0,a.ab)()}setDiagramTitle(t){(0,a.ke)(t)}},u=250,d=82*Math.PI/180,y=Math.cos(d),p=Math.sin(d),g=(0,r.K)((t,e,i)=>{const n=t.node().getBBox(),s=n.width+2*e,r=n.height+2*e;(0,a.a$)(t,r,s,i),t.attr("viewBox",`${n.x-e} ${n.y-e} ${s} ${r}`)},"applyPaddedViewBox"),f=(0,r.K)((t,e,i,r)=>{const o=r.db.getRoot();if(!o)return;const l=(0,a.D7)(),{look:c,handDrawnSeed:d,themeVariables:y}=l,p=(0,s.I5)(l.fontSize)[0]??14,f="handDrawn"===c,w=o.children??[],x=l.ishikawa?.diagramPadding??20,b=l.ishikawa?.useMaxWidth??!1,v=(0,n.D)(e),S=v.append("g").attr("class","ishikawa"),K=f?h.A.svg(v.node()):void 0,$=K?{roughSvg:K,seed:d??0,lineColor:y?.lineColor??"#333",fillColor:y?.mainBkg??"#fff"}:void 0,E=`ishikawa-arrow-${e}`;f||S.append("defs").append("marker").attr("id",E).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 Z").attr("class","ishikawa-arrow");let A=0,C=u;const L=f?void 0:I(S,A,C,A,C,"ishikawa-spine");if(m(S,A,C,o.text,p,$),!w.length)return f&&I(S,A,C,A,C,"ishikawa-spine",$),void g(v,x,b);A-=20;const M=w.filter((t,e)=>e%2==0),P=w.filter((t,e)=>e%2==1),T=k(M),B=k(P),D=T.total+B.total;let N=u,O=u;if(D>0){const t=500,e=75;N=Math.max(e,t*(T.total/D)),O=Math.max(e,t*(B.total/D))}const W=2*p;N=Math.max(N,T.max*W),O=Math.max(O,B.max*W),C=Math.max(N,u),L&&L.attr("y1",C).attr("y2",C),S.select(".ishikawa-head-group").attr("transform",`translate(0,${C})`);const j=Math.ceil(w.length/2);for(let t=0;t<j;t++){const e=S.append("g").attr("class","ishikawa-pair");for(const[i,n,s]of[[w[2*t],-1,N],[w[2*t+1],1,O]])i&&_(e,i,A,C,n,s,p,$);A=e.selectAll("text").nodes().reduce((t,e)=>Math.min(t,e.getBBox().x),1/0)}if(f)I(S,A,C,0,C,"ishikawa-spine",$);else{L.attr("x1",A);const t=`url(#${E})`;S.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",t)}g(v,x,b)},"draw"),k=(0,r.K)(t=>{const e=(0,r.K)(t=>t.children.reduce((t,i)=>t+1+e(i),0),"countDescendants");return t.reduce((t,i)=>{const n=e(i);return t.total+=n,t.max=Math.max(t.max,n),t},{total:0,max:0})},"sideStats"),m=(0,r.K)((t,e,i,n,s,a)=>{const r=Math.max(6,Math.floor(110/(.6*s))),h=t.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${e},${i})`),o=K(h,S(n,r),0,0,"ishikawa-head-label","start",s),l=o.node().getBBox(),c=Math.max(60,l.width+6),u=Math.max(40,2*l.height+40),d=`M 0 ${-u/2} L 0 ${u/2} Q ${2.4*c} 0 0 ${-u/2} Z`;if(a){const t=a.roughSvg.path(d,{roughness:1.5,seed:a.seed,fill:a.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:a.lineColor,strokeWidth:2});h.insert(()=>t,":first-child").attr("class","ishikawa-head")}else h.insert("path",":first-child").attr("class","ishikawa-head").attr("d",d);o.attr("transform",`translate(${(c-l.width)/2-l.x+3},${-l.y-l.height/2})`)},"drawHead"),w=(0,r.K)((t,e)=>{const i=[],n=[],s=(0,r.K)((t,a,r)=>{const h=-1===e?[...t].reverse():t;for(const t of h){const e=i.length,h=t.children??[];i.push({depth:r,text:S(t.text,15),parentIndex:a,childCount:h.length}),r%2==0?(n.push(e),h.length&&s(h,e,r+1)):(h.length&&s(h,e,r+1),n.push(e))}},"walk");return s(t,-1,2),{entries:i,yOrder:n}},"flattenTree"),x=(0,r.K)((t,e,i,n,s,a,r)=>{const h=t.append("g").attr("class","ishikawa-label-group"),o=K(h,e,i,n+11*s,"ishikawa-label cause","middle",a).node().getBBox();if(r){const t=r.roughSvg.rectangle(o.x-20,o.y-2,o.width+40,o.height+4,{roughness:1.5,seed:r.seed,fill:r.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:r.lineColor,strokeWidth:2});h.insert(()=>t,":first-child").attr("class","ishikawa-label-box")}else h.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",o.x-20).attr("y",o.y-2).attr("width",o.width+40).attr("height",o.height+4)},"drawCauseLabel"),b=(0,r.K)((t,e,i,n,s,a)=>{const r=Math.sqrt(n*n+s*s);if(0===r)return;const h=n/r,o=s/r,l=6*-o,c=6*h,u=`M ${e} ${i} L ${e-6*h*2+l} ${i-6*o*2+c} L ${e-6*h*2-l} ${i-6*o*2-c} Z`,d=a.roughSvg.path(u,{roughness:1,seed:a.seed,fill:a.lineColor,fillStyle:"solid",stroke:a.lineColor,strokeWidth:1});t.append(()=>d)},"drawArrowMarker"),_=(0,r.K)((t,e,i,n,s,a,r,h)=>{const o=e.children??[],l=a*(o.length?1:.2),c=p*l*s,u=i+-y*l,d=n+c;if(I(t,i,n,u,d,"ishikawa-branch",h),h&&b(t,i,n,i-u,n-d,h),x(t,e.text,u,d,s,r,h),!o.length)return;const{entries:g,yOrder:f}=w(o,s),k=g.length,m=new Array(k);for(const[t,e]of f.entries())m[e]=n+c*((t+1)/(k+1));const _=new Map;_.set(-1,{x0:i,y0:n,x1:u,y1:d,childCount:o.length,childrenDrawn:0});const v=-y,S=p*s,E=s<0?"ishikawa-label up":"ishikawa-label down";for(const[e,i]of g.entries()){const n=m[e],s=_.get(i.parentIndex),a=t.append("g").attr("class","ishikawa-sub-group");let o=0,l=0,c=0;if(i.depth%2==0){const t=s.y1-s.y0;o=$(s.x0,s.x1,t?(n-s.y0)/t:.5),l=n,c=o-(i.childCount>0?60+5*i.childCount:30),I(a,o,n,c,n,"ishikawa-sub-branch",h),h&&b(a,o,n,1,0,h),K(a,i.text,c,n,"ishikawa-label align","end",r)}else{const t=s.childrenDrawn++;o=$(s.x0,s.x1,(s.childCount-t)/(s.childCount+1)),l=s.y0,c=o+v*((n-l)/S),I(a,o,l,c,n,"ishikawa-sub-branch",h),h&&b(a,o,l,o-c,l-n,h),K(a,i.text,c,n,E,"end",r)}i.childCount>0&&_.set(e,{x0:o,y0:l,x1:c,y1:n,childCount:i.childCount,childrenDrawn:0})}},"drawBranch"),v=(0,r.K)(t=>t.split(/<br\s*\/?>|\n/),"splitLines"),S=(0,r.K)((t,e)=>{if(t.length<=e)return t;const i=[];for(const n of t.split(/\s+/)){const t=i.length-1;t>=0&&i[t].length+1+n.length<=e?i[t]+=" "+n:i.push(n)}return i.join("\n")},"wrapText"),K=(0,r.K)((t,e,i,n,s,a,r)=>{const h=v(e),o=1.05*r,l=t.append("text").attr("class",s).attr("text-anchor",a).attr("x",i).attr("y",n-(h.length-1)*o/2);for(const[t,e]of h.entries())l.append("tspan").attr("x",i).attr("dy",0===t?0:o).text(e);return l},"drawMultilineText"),$=(0,r.K)((t,e,i)=>t+(e-t)*i,"lerp"),I=(0,r.K)((t,e,i,n,s,a,r)=>{if(r){const h=r.roughSvg.line(e,i,n,s,{roughness:1.5,seed:r.seed,stroke:r.lineColor,strokeWidth:2});return void t.append(()=>h).attr("class",a)}return t.append("line").attr("class",a).attr("x1",e).attr("y1",i).attr("x2",n).attr("y2",s)},"drawLine"),E={draw:f},A=(0,r.K)(t=>`\n.ishikawa .ishikawa-spine,\n.ishikawa .ishikawa-branch,\n.ishikawa .ishikawa-sub-branch {\n stroke: ${t.lineColor};\n stroke-width: 2;\n fill: none;\n}\n\n.ishikawa .ishikawa-sub-branch {\n stroke-width: 1;\n}\n\n.ishikawa .ishikawa-arrow {\n fill: ${t.lineColor};\n}\n\n.ishikawa .ishikawa-head {\n fill: ${t.mainBkg};\n stroke: ${t.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa .ishikawa-label-box {\n fill: ${t.mainBkg};\n stroke: ${t.lineColor};\n stroke-width: 2;\n}\n\n.ishikawa text {\n font-family: ${t.fontFamily};\n font-size: ${t.fontSize};\n fill: ${t.textColor};\n}\n\n.ishikawa .ishikawa-head-label {\n font-weight: 600;\n text-anchor: middle;\n dominant-baseline: middle;\n font-size: 14px;\n}\n\n.ishikawa .ishikawa-label {\n text-anchor: end;\n}\n\n.ishikawa .ishikawa-label.cause {\n text-anchor: middle;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.align {\n text-anchor: end;\n dominant-baseline: middle;\n}\n\n.ishikawa .ishikawa-label.up {\n dominant-baseline: baseline;\n}\n\n.ishikawa .ishikawa-label.down {\n dominant-baseline: hanging;\n}\n`,"getStyles"),C={parser:l,get db(){return new c},renderer:E,styles:A}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7897],{87897(e,r,s){s.d(r,{diagram:()=>l});var a=s(68460),t=(s(37703),s(79762),s(98889),s(89008),s(75279),s(68741),s(31139),s(26388),s(92662),s(27280),s(56289),s(19831),s(73145),s(20886),s(84828),s(27698)),l={parser:a._$,get db(){return new a.NM},renderer:a.Lh,styles:a.tM,init:(0,t.K)(e=>{e.class||(e.class={}),e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7941],{27941(t,e,i){i.d(e,{diagram:()=>et});var r=i(99051),s=i(23980),n=i(56289),o=i(19831),a=i(73145),d=i(20886),l=i(84828),c=i(27698),h=i(63883),f=i(90165),g=i(26527),p=i(51444),u={L:"left",R:"right",T:"top",B:"bottom"},m={L:(0,c.K)(t=>`${t},${t/2} 0,${t} 0,0`,"L"),R:(0,c.K)(t=>`0,${t/2} ${t},0 ${t},${t}`,"R"),T:(0,c.K)(t=>`0,0 ${t},0 ${t/2},${t}`,"T"),B:(0,c.K)(t=>`${t/2},0 ${t},${t} 0,${t}`,"B")},y={L:(0,c.K)((t,e)=>t-e+2,"L"),R:(0,c.K)((t,e)=>t-2,"R"),T:(0,c.K)((t,e)=>t-e+2,"T"),B:(0,c.K)((t,e)=>t-2,"B")},w=(0,c.K)(function(t){return x(t)?"L"===t?"R":"L":"T"===t?"B":"T"},"getOppositeArchitectureDirection"),k=(0,c.K)(function(t){return"L"===t||"R"===t||"T"===t||"B"===t},"isArchitectureDirection"),x=(0,c.K)(function(t){return"L"===t||"R"===t},"isArchitectureDirectionX"),$=(0,c.K)(function(t){return"T"===t||"B"===t},"isArchitectureDirectionY"),b=(0,c.K)(function(t,e){const i=x(t)&&$(e),r=$(t)&&x(e);return i||r},"isArchitectureDirectionXY"),v=(0,c.K)(function(t){const e=t[0],i=t[1],r=x(e)&&$(i),s=$(e)&&x(i);return r||s},"isArchitecturePairXY"),E=(0,c.K)(function(t){return"LL"!==t&&"RR"!==t&&"TT"!==t&&"BB"!==t},"isValidArchitectureDirectionPair"),I=(0,c.K)(function(t,e){const i=`${t}${e}`;return E(i)?i:void 0},"getArchitectureDirectionPair"),T=(0,c.K)(function([t,e],i){const r=i[0],s=i[1];return x(r)?$(s)?[t+("L"===r?-1:1),e+("T"===s?1:-1)]:[t+("L"===r?-1:1),e]:x(s)?[t+("L"===s?1:-1),e+("T"===r?1:-1)]:[t,e+("T"===r?1:-1)]},"shiftPositionByArchitectureDirectionPair"),D=(0,c.K)(function(t){return"LT"===t||"TL"===t?[1,1]:"BL"===t||"LB"===t?[1,-1]:"BR"===t||"RB"===t?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),K=(0,c.K)(function(t,e){return b(t,e)?"bend":x(t)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),S=(0,c.K)(function(t){return"service"===t.type},"isArchitectureService"),M=(0,c.K)(function(t){return"junction"===t.type},"isArchitectureJunction"),L=(0,c.K)((t,e)=>{const[i,r]=[t,e].sort();return`${JSON.stringify(i)}-${JSON.stringify(r)}`},"architectureGroupAlignmentKey"),C=(0,c.K)(t=>t.data(),"edgeData"),B=(0,c.K)(t=>t.data(),"nodeData"),A=d.UI.architecture,F=class{constructor(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.elements=new Map,this.diagramId="",this.setAccTitle=d.SV,this.getAccTitle=d.iN,this.setDiagramTitle=d.ke,this.getDiagramTitle=d.ab,this.getAccDescription=d.m7,this.setAccDescription=d.EI,this.clear()}static{(0,c.K)(this,"ArchitectureDB")}setDiagramId(t){this.diagramId=t}getDiagramId(){return this.diagramId}clear(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.dataStructures=void 0,this.elements=new Map,this.diagramId="",(0,d.IU)()}addService({id:t,icon:e,in:i,title:r,iconText:s}){if(this.registeredIds.has(t))throw new Error(`The service id [${t}] is already in use by another ${this.registeredIds.get(t)}`);if(void 0!==i){if(t===i)throw new Error(`The service [${t}] cannot be placed within itself`);if(!this.registeredIds.has(i))throw new Error(`The service [${t}]'s parent does not exist. Please make sure the parent is created before this service`);if("node"===this.registeredIds.get(i))throw new Error(`The service [${t}]'s parent is not a group`)}this.registeredIds.set(t,"node"),this.nodes.set(t,{id:t,type:"service",icon:e,iconText:s,title:r,edges:[],in:i})}getServices(){return[...this.nodes.values()].filter(S)}addJunction({id:t,in:e}){if(this.registeredIds.has(t))throw new Error(`The junction id [${t}] is already in use by another ${this.registeredIds.get(t)}`);if(void 0!==e){if(t===e)throw new Error(`The junction [${t}] cannot be placed within itself`);if(!this.registeredIds.has(e))throw new Error(`The junction [${t}]'s parent does not exist. Please make sure the parent is created before this junction`);if("node"===this.registeredIds.get(e))throw new Error(`The junction [${t}]'s parent is not a group`)}this.registeredIds.set(t,"node"),this.nodes.set(t,{id:t,type:"junction",edges:[],in:e})}getJunctions(){return[...this.nodes.values()].filter(M)}getNodes(){return[...this.nodes.values()]}getNode(t){return this.nodes.get(t)??null}addGroup({id:t,icon:e,in:i,title:r}){if(this.registeredIds.has(t))throw new Error(`The group id [${t}] is already in use by another ${this.registeredIds.get(t)}`);if(void 0!==i){if(t===i)throw new Error(`The group [${t}] cannot be placed within itself`);if(!this.registeredIds.has(i))throw new Error(`The group [${t}]'s parent does not exist. Please make sure the parent is created before this group`);if("node"===this.registeredIds.get(i))throw new Error(`The group [${t}]'s parent is not a group`)}this.registeredIds.set(t,"group"),this.groups.set(t,{id:t,icon:e,title:r,in:i})}getGroups(){return[...this.groups.values()]}addEdge({lhsId:t,rhsId:e,lhsDir:i,rhsDir:r,lhsInto:s,rhsInto:n,lhsGroup:o,rhsGroup:a,title:d}){if(!k(i))throw new Error(`Invalid direction given for left hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${String(i)}`);if(!k(r))throw new Error(`Invalid direction given for right hand side of edge ${t}--${e}. Expected (L,R,T,B) got ${String(r)}`);if(!this.nodes.has(t)&&!this.groups.has(t))throw new Error(`The left-hand id [${t}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(!this.nodes.has(e)&&!this.groups.has(e))throw new Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);const l=this.nodes.get(t).in,c=this.nodes.get(e).in;if(o&&l&&c&&l==c)throw new Error(`The left-hand id [${t}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(a&&l&&c&&l==c)throw new Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);const h={lhsId:t,lhsDir:i,lhsInto:s,lhsGroup:o,rhsId:e,rhsDir:r,rhsInto:n,rhsGroup:a,title:d};this.edges.push(h);const f=this.nodes.get(t),g=this.nodes.get(e);f&&g&&(f.edges.push(this.edges[this.edges.length-1]),g.edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}addLayoutHint(t){if(t.members.length<2)throw new Error(`An align directive requires at least two members; got ${t.members.length}`);const e=new Set;t.members.forEach(i=>{if("node"!==this.registeredIds.get(i))throw new Error(`align ${t.direction} references [${i}], which is not a service or junction`);if(e.has(i))throw new Error(`align ${t.direction} lists [${i}] more than once`);e.add(i)}),this.layoutHints.push(t)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(void 0===this.dataStructures){const t=new Map,e=new Map;for(const[i,r]of this.nodes.entries()){const s=new Map;for(const e of r.edges){const r=this.getNode(e.lhsId)?.in,n=this.getNode(e.rhsId)?.in;if(r&&n&&r!==n){const i=K(e.lhsDir,e.rhsDir);"bend"!==i&&t.set(L(r,n),i)}if(e.lhsId===i){const t=I(e.lhsDir,e.rhsDir);t&&s.set(t,e.rhsId)}else{const t=I(e.rhsDir,e.lhsDir);t&&s.set(t,e.lhsId)}}e.set(i,s)}const i=new Set,r=new Set(e.keys()),s=(0,c.K)(t=>{const s=new Map([[t,[0,0]]]),n=[t];for(;n.length>0;){const t=n.shift();if(t){i.add(t),r.delete(t);const o=e.get(t);if(!o)throw new Error(`BFS error: adjacency list for id ${t} not found. Please report this as a bug.`);const a=s.get(t);if(!a)throw new Error(`BFS error: position for id ${t} not found in spatial map. Please report this as a bug.`);const[d,l]=a;o.forEach((t,e)=>{i.has(t)||(s.set(t,T([d,l],e)),n.push(t))})}}return s},"BFS"),n=[];for(;r.size>0;){const t=r.values().next().value;n.push(s(t))}this.dataStructures={adjList:e,spatialMaps:n,groupAlignments:t}}return this.dataStructures}setElementForId(t,e){this.elements.set(t,e)}getElementById(t){return this.elements.get(t)}getConfig(){return(0,a.$t)({...A,...(0,d.zj)().architecture})}getConfigField(t){return this.getConfig()[t]}},R=(0,c.K)((t,e)=>{(0,r.S)(t,e),t.groups.map(t=>e.addGroup(t)),t.services.map(t=>e.addService({...t,type:"service"})),t.junctions.map(t=>e.addJunction({...t,type:"junction"})),t.edges.map(t=>e.addEdge(t)),t.alignments?.map(t=>e.addLayoutHint({direction:t.direction,members:[...t.members]}))},"populateDb"),j={parser:{yy:void 0},parse:(0,c.K)(async t=>{const e=await(0,h.qg)("architecture",t);l.R.debug(e);const i=j.parser?.yy;if(!(i instanceof F))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");R(e,i)},"parse")},z=(0,c.K)(t=>`\n .edge {\n stroke-width: ${t.archEdgeWidth};\n stroke: ${t.archEdgeColor};\n fill: none;\n }\n\n .arrow {\n fill: ${t.archEdgeArrowColor};\n }\n\n .node-bkg {\n fill: none;\n stroke: ${t.archGroupBorderColor};\n stroke-width: ${t.archGroupBorderWidth};\n stroke-dasharray: 8;\n }\n .node-icon-text {\n display: flex; \n align-items: center;\n }\n \n .node-icon-text > div {\n color: #fff;\n margin: 1px;\n height: fit-content;\n text-align: center;\n overflow: hidden;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n }\n`,"getStyles");function G(t,e){if(0===t)return e();const i=Math.random;let r=t>>>0;Math.random=function(){r=r+1831565813>>>0;let t=r;return t=Math.imul(t^t>>>15,1|t),t^=t+Math.imul(t^t>>>7,61|t),((t^t>>>14)>>>0)/4294967296};try{return e()}finally{Math.random=i}}(0,c.K)(G,"withSeededRandom");var P=(0,c.K)(t=>`<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/>${t}</g>`,"wrapIcon"),H={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:P('<path id="b" data-name="4" d="m20,57.86c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="c" data-name="3" d="m20,45.95c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="d" data-name="2" d="m20,34.05c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse id="e" data-name="1" cx="40" cy="22.14" rx="20" ry="7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="20" y1="57.86" x2="20" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="60" y1="57.86" x2="60" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},server:{body:P('<rect x="17.5" y="17.5" width="45" height="45" rx="2" ry="2" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="32.5" x2="62.5" y2="32.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="47.5" x2="62.5" y2="47.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><g><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g>')},disk:{body:P('<rect x="20" y="15" width="40" height="50" rx="1" ry="1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="14" ry="14.58" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="4" ry="4.17" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m37.51,42.52l-4.83,13.22c-.26.71-1.1,1.02-1.76.64l-4.18-2.42c-.66-.38-.81-1.26-.33-1.84l9.01-10.8c.88-1.05,2.56-.08,2.09,1.2Z" style="fill: #fff; stroke-width: 0px;"/>')},internet:{body:P('<circle cx="40" cy="40" r="22.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="40" y1="17.5" x2="40" y2="62.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="40" x2="62.5" y2="40" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m39.99,17.51c-15.28,11.1-15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m40.01,17.51c15.28,11.1,15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="30.1" x2="60.25" y2="30.1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="49.9" x2="60.25" y2="49.9" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},cloud:{body:P('<path d="m65,47.5c0,2.76-2.24,5-5,5H20c-2.76,0-5-2.24-5-5,0-1.87,1.03-3.51,2.56-4.36-.04-.21-.06-.42-.06-.64,0-2.6,2.48-4.74,5.65-4.97,1.65-4.51,6.34-7.76,11.85-7.76.86,0,1.69.08,2.5.23,2.09-1.57,4.69-2.5,7.5-2.5,6.1,0,11.19,4.38,12.28,10.17,2.14.56,3.72,2.51,3.72,4.83,0,.03,0,.07-.01.1,2.29.46,4.01,2.48,4.01,4.9Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},unknown:o.Gc,blank:{body:P("")}}},N=(0,c.K)(async function(t,e,i,r){const s=i.getConfigField("padding"),o=i.getConfigField("iconSize"),l=o/2,c=o/6,h=c/2;await Promise.all(e.edges().map(async e=>{const{source:o,sourceDir:f,sourceArrow:g,sourceGroup:p,target:u,targetDir:w,targetArrow:k,targetGroup:E,label:T}=C(e);let{x:K,y:S}=e[0].sourceEndpoint();const{x:M,y:L}=e[0].midpoint();let{x:B,y:A}=e[0].targetEndpoint();const F=s+4;if(p&&(x(f)?K+="L"===f?-F:F:S+="T"===f?-F:F+18),E&&(x(w)?B+="L"===w?-F:F:A+="T"===w?-F:F+18),p||"junction"!==i.getNode(o)?.type||(x(f)?K+="L"===f?l:-l:S+="T"===f?l:-l),E||"junction"!==i.getNode(u)?.type||(x(w)?B+="L"===w?l:-l:A+="T"===w?l:-l),e[0]._private.rscratch){const e=t.insert("g");if(e.insert("path").attr("d",`M ${K},${S} L ${M},${L} L${B},${A} `).attr("class","edge").attr("id",`${r}-${(0,a.rY)(o,u,{prefix:"L"})}`),g){const t=x(f)?y[f](K,c):K-h,i=$(f)?y[f](S,c):S-h;e.insert("polygon").attr("points",m[f](c)).attr("transform",`translate(${t},${i})`).attr("class","arrow")}if(k){const t=x(w)?y[w](B,c):B-h,i=$(w)?y[w](A,c):A-h;e.insert("polygon").attr("points",m[w](c)).attr("transform",`translate(${t},${i})`).attr("class","arrow")}if(T){const t=b(f,w)?"XY":x(f)?"X":"Y";let i=0;i="X"===t?Math.abs(K-B):"Y"===t?Math.abs(S-A)/1.5:Math.abs(K-B)/2;const r=e.append("g");if(await(0,n.GZ)(r,T,{useHtmlLabels:!1,width:i,classes:"architecture-service-label"},(0,d.D7)()),r.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),"X"===t)r.attr("transform","translate("+M+", "+L+")");else if("Y"===t)r.attr("transform","translate("+M+", "+L+") rotate(-90)");else if("XY"===t){const t=I(f,w);if(t&&v(t)){const e=r.node().getBoundingClientRect(),[i,s]=D(t);r.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*i*s*45})`);const n=r.node().getBoundingClientRect();r.attr("transform",`\n translate(${M}, ${L-e.height/2})\n translate(${i*n.width/2}, ${s*n.height/2})\n rotate(${-1*i*s*45}, 0, ${e.height/2})\n `)}}}}}))},"drawEdges"),Y=(0,c.K)(async function(t,e,i,r){const s=.75*i.getConfigField("padding"),a=i.getConfigField("fontSize"),l=i.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async e=>{const c=B(e);if("group"===c.type){const{h,w:f,x1:g,y1:p}=e.boundingBox(),u=t.append("rect");u.attr("id",`${r}-group-${c.id}`).attr("x",g+l).attr("y",p+l).attr("width",f).attr("height",h).attr("class","node-bkg");const m=t.append("g");let y=g,w=p;if(c.icon){const t=m.append("g");t.html(`<g>${await(0,o.WY)(c.icon,{height:s,width:s,fallbackPrefix:H.prefix})}</g>`),t.attr("transform","translate("+(y+l+1)+", "+(w+l+1)+")"),y+=s,w+=a/2-1-2}if(c.label){const t=m.append("g");await(0,n.GZ)(t,c.label,{useHtmlLabels:!1,width:f,classes:"architecture-service-label"},(0,d.D7)()),t.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),t.attr("transform","translate("+(y+l+4)+", "+(w+l+2)+")")}i.setElementForId(c.id,u)}}))},"drawGroups"),Z=(0,c.K)(async function(t,e,i,r){const s=(0,d.D7)();for(const a of i){const i=e.append("g"),l=t.getConfigField("iconSize");if(a.title){const t=i.append("g");await(0,n.GZ)(t,a.title,{useHtmlLabels:!1,width:1.5*l,classes:"architecture-service-label"},s),t.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),t.attr("transform","translate("+l/2+", "+l+")")}const c=i.append("g");if(a.icon)c.html(`<g>${await(0,o.WY)(a.icon,{height:l,width:l,fallbackPrefix:H.prefix})}</g>`);else if(a.iconText){c.html(`<g>${await(0,o.WY)("blank",{height:l,width:l,fallbackPrefix:H.prefix})}</g>`);const t=c.append("g").append("foreignObject").attr("width",l).attr("height",l).append("div").attr("class","node-icon-text").attr("style",`height: ${l}px;`).append("div").html((0,d.jZ)(a.iconText,s)),e=parseInt(window.getComputedStyle(t.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;t.attr("style",`-webkit-line-clamp: ${Math.floor((l-2)/e)};`)}else c.append("path").attr("class","node-bkg").attr("id",`${r}-node-${a.id}`).attr("d",`M0,${l} V5 Q0,0 5,0 H${l-5} Q${l},0 ${l},5 V${l} Z`);i.attr("id",`${r}-service-${a.id}`).attr("class","architecture-service");const{width:h,height:f}=i.node().getBBox();a.width=h,a.height=f,t.setElementForId(a.id,i)}return 0},"drawServices"),J=(0,c.K)(function(t,e,i,r){i.forEach(i=>{const s=e.append("g"),n=t.getConfigField("iconSize");s.append("g").append("rect").attr("id",`${r}-node-${i.id}`).attr("fill-opacity","0").attr("width",n).attr("height",n),s.attr("class","architecture-junction");const{width:o,height:a}=s._groups[0][0].getBBox();s.width=o,s.height=a,t.setElementForId(i.id,s)})},"drawJunctions");function X(t,e,i){t.forEach(t=>{e.add({group:"nodes",data:{type:"service",id:t.id,icon:t.icon,label:t.title,parent:t.in,width:i.getConfigField("iconSize"),height:i.getConfigField("iconSize")},classes:"node-service"})})}function O(t,e,i){t.forEach(t=>{e.add({group:"nodes",data:{type:"junction",id:t.id,parent:t.in,width:i.getConfigField("iconSize"),height:i.getConfigField("iconSize")},classes:"node-junction"})})}function W(t,e){e.nodes().map(e=>{const i=B(e);if("group"===i.type)return;i.x=e.position().x,i.y=e.position().y;t.getElementById(i.id).attr("transform","translate("+(i.x||0)+","+(i.y||0)+")")})}function q(t,e){t.forEach(t=>{e.add({group:"nodes",data:{type:"group",id:t.id,icon:t.icon,label:t.title,parent:t.in},classes:"node-group"})})}function V(t,e){t.forEach(t=>{const{lhsId:i,rhsId:r,lhsInto:s,lhsGroup:n,rhsInto:o,lhsDir:a,rhsDir:d,rhsGroup:l,title:c}=t,h=b(t.lhsDir,t.rhsDir)?"segments":"straight",f={id:`${i}-${r}`,label:c,source:i,sourceDir:a,sourceArrow:s,sourceGroup:n,sourceEndpoint:"L"===a?"0 50%":"R"===a?"100% 50%":"T"===a?"50% 0":"50% 100%",target:r,targetDir:d,targetArrow:o,targetGroup:l,targetEndpoint:"L"===d?"0 50%":"R"===d?"100% 50%":"T"===d?"50% 0":"50% 100%"};e.add({group:"edges",data:f,classes:h})})}function Q(t,e,i,r=[]){const s=(0,c.K)((t,e)=>{const r=new Map;for(const[s,n]of t.entries()){const t=`${s}`;let o=0;const a=[...n.entries()];if(1!==a.length)for(let s=0;s<a.length-1;s++)for(let n=s+1;n<a.length;n++){const[d,l]=a[s],[c,h]=a[n];if(i.get(L(d,c))===e)r.set(t,[...r.get(t)??[],...l,...h]);else if("default"===d||"default"===c)r.set(t,[...r.get(t)??[],...l,...h]);else{const e=`${t}-${o++}`;r.set(e,l);const i=`${t}-${o++}`;r.set(i,h)}}else r.set(t,a[0][1])}return r},"flattenAlignments"),n=e.map(e=>{const i=new Map,r=new Map;return e.forEach(([e,s],n)=>{const o=t.getNode(n)?.in??"default",a=i.get(s)??new Map;i.has(s)||i.set(s,a);const d=r.get(e)??new Map;r.has(e)||r.set(e,d);for(const t of[a,d]){const e=t.get(o)??[];t.has(o)||t.set(o,e),e.push(n)}}),{horiz:[...s(i,"horizontal").values()].filter(t=>t.length>1),vert:[...s(r,"vertical").values()].filter(t=>t.length>1)}}),[o,a]=n.reduce(([t,e],{horiz:i,vert:r})=>[[...t,...i],[...e,...r]],[[],[]]),d=new Set;r.forEach(t=>t.members.forEach(t=>d.add(t)));const l=(0,c.K)(t=>t.filter(t=>!t.some(t=>d.has(t))),"dropOverlapping"),h=l(o),f=l(a);return r.forEach(t=>{t.members.length<2||("row"===t.direction?h.push([...t.members]):f.push([...t.members]))}),{horizontal:h,vertical:f}}function U(t,e,i=[]){const r=[],s=e.getConfigField("iconSize"),n=e.getConfigField("idealEdgeLengthMultiplier"),o=n*s,a=new Set;i.forEach(t=>{for(let e=0;e<t.members.length-1;e++){const i=t.members[e],s=t.members[e+1];a.add(`${i}|${s}`),a.add(`${s}|${i}`),"row"===t.direction?r.push({left:i,right:s,gap:o}):r.push({top:i,bottom:s,gap:o})}});const d=(0,c.K)(t=>`${t[0]},${t[1]}`,"posToStr"),l=(0,c.K)(t=>t.split(",").map(t=>parseInt(t)),"strToPos");return t.forEach(t=>{const e=new Map([...t.entries()].map(([t,e])=>[d(e),t])),i=[d([0,0])],o={},c={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;i.length>0;){const t=i.shift();if(t){o[t]=1;const h=e.get(t);if(h){const f=l(t);Object.entries(c).forEach(([t,l])=>{const c=d([f[0]+l[0],f[1]+l[1]]),g=e.get(c);if(g&&!o[c]){if(i.push(c),a.has(`${h}|${g}`))return;r.push({[u[t]]:g,[u[w(t)]]:h,gap:n*s})}})}}}}),r}function _(t,e,i,r,s,{spatialMaps:n,groupAlignments:o}){return new Promise(a=>{const d=(0,p.Ltv)("body").append("div").attr("id","cy").attr("style","display:none"),h=(0,f.A)({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${s.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${s.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});d.remove(),q(i,h),X(t,h,s),O(e,h,s),V(r,h);const g=s.getLayoutHints(),u=Q(s,n,o,g),m=U(n,s,g),y=s.getConfigField("iconSize"),w=s.getConfigField("idealEdgeLengthMultiplier")*y,k=.5*y,x=s.getConfigField("edgeElasticity"),b=s.getConfigField("seed"),v=h.layout({name:"fcose",quality:"proof",randomize:s.getConfigField("randomize"),nodeSeparation:s.getConfigField("nodeSeparation"),numIter:s.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(t){const[e,i]=t.connectedNodes(),{parent:r}=B(e),{parent:s}=B(i);return r===s?w:k},edgeElasticity(t){const[e,i]=t.connectedNodes(),{parent:r}=B(e),{parent:s}=B(i);return r===s?x:.001},alignmentConstraint:u,relativePlacementConstraint:m});v.one("layoutstop",()=>{function t(t,e,i,r){let s,n;const{x:o,y:a}=t,{x:d,y:l}=e;n=(r-a+(o-i)*(a-l)/(o-d))/Math.sqrt(1+Math.pow((a-l)/(o-d),2)),s=Math.sqrt(Math.pow(r-a,2)+Math.pow(i-o,2)-Math.pow(n,2));s/=Math.sqrt(Math.pow(d-o,2)+Math.pow(l-a,2));let c=(d-o)*(r-a)-(l-a)*(i-o);switch(!0){case c>=0:c=1;break;case c<0:c=-1}let h=(d-o)*(i-o)+(l-a)*(r-a);switch(!0){case h>=0:h=1;break;case h<0:h=-1}return n=Math.abs(n)*c,s*=h,{distances:n,weights:s}}(0,c.K)(t,"getSegmentWeights"),h.startBatch();for(const e of Object.values(h.edges()))if(e.data?.()){const{x:i,y:r}=e.source().position(),{x:s,y:n}=e.target().position();if(i!==s&&r!==n){const i=e.sourceEndpoint(),r=e.targetEndpoint(),{sourceDir:s}=C(e),[n,o]=$(s)?[i.x,r.y]:[r.x,i.y],{weights:a,distances:d}=t(i,r,n,o);e.style("segment-distances",d),e.style("segment-weights",a)}}h.endBatch(),G(b,()=>v.run())});try{G(b,()=>v.run())}catch(t){if(t instanceof RangeError&&t.message.includes("Invalid array length"))throw new Error("Architecture layout failed: a declared `align row|column` directive likely contradicts the edge directions, or two declared alignments overlap on a shared node. Check that the order of members in each `align` chain is consistent with the edges between them, and that no node appears in two `align` directives along the same axis.");throw t}h.ready(t=>{l.R.info("Ready",t),a(h)})})}(0,o.pC)([{name:H.prefix,icons:H}]),f.A.use(g),(0,c.K)(X,"addServices"),(0,c.K)(O,"addJunctions"),(0,c.K)(W,"positionNodes"),(0,c.K)(q,"addGroups"),(0,c.K)(V,"addEdges"),(0,c.K)(Q,"getAlignments"),(0,c.K)(U,"getRelativeConstraints"),(0,c.K)(_,"layoutArchitecture");var tt={draw:(0,c.K)(async(t,e,i,r)=>{const n=r.db;n.setDiagramId(e);const o=n.getServices(),a=n.getJunctions(),l=n.getGroups(),c=n.getEdges(),h=n.getDataStructures(),f=(0,s.D)(e),g=f.append("g");g.attr("class","architecture-edges");const p=f.append("g");p.attr("class","architecture-services");const u=f.append("g");u.attr("class","architecture-groups"),await Z(n,p,o,e),J(n,p,a,e);const m=await _(o,a,l,c,n,h);await N(g,m,n,e),await Y(u,m,n,e),W(n,m),(0,d.ot)(void 0,f,n.getConfigField("padding"),n.getConfigField("useMaxWidth"))},"draw")},et={parser:j,get db(){return new F},renderer:tt,styles:z}},99051(t,e,i){function r(t,e){t.accDescr&&e.setAccDescription?.(t.accDescr),t.accTitle&&e.setAccTitle?.(t.accTitle),t.title&&e.setDiagramTitle?.(t.title)}i.d(e,{S:()=>r}),(0,i(27698).K)(r,"populateCommonDb")}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7953],{77953(e,c,t){t.d(c,{createArchitectureServices:()=>a.S});var a=t(48066);t(41303)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7954],{89117(t,e,n){n.d(e,{Hm:()=>s,U6:()=>l});const r=["mermaid","svg"];function s(t){return r.includes(t)}let o=null;let i=0;async function a(t){const e=t.trim();if(!e)return{svg:"",error:null};const r=await(o||(o=Promise.all([n.e(7514),n.e(9465)]).then(n.bind(n,9465)).then(t=>{const e=t.default;return e.initialize({startOnLoad:!1,securityLevel:"loose",theme:"default",fontFamily:"inherit",suppressErrorRendering:!0}),e})),o),s="md-mermaid-"+ ++i;try{const{svg:t}=await r.render(s,e);return{svg:t,error:null}}catch(t){return document.getElementById(s)?.remove(),document.getElementById(`d${s}`)?.remove(),{svg:"",error:t?.message??String(t)}}}async function l(t,e){return"svg"===t?function(t){const e=t.trim();if(!e)return{svg:"",error:null};const n=(new DOMParser).parseFromString(e,"image/svg+xml").querySelector("parsererror");return n?{svg:"",error:n.textContent?.trim()||"SVG 解析失败"}:{svg:e,error:null}}(e):a(e)}},41105(t,e,n){n.d(e,{KR:()=>c,Ne:()=>i,op:()=>f,pC:()=>o,sL:()=>l});var r=n(14284),s=n(19878);function o(t){return btoa(unescape(encodeURIComponent(t)))}function i(t){return decodeURIComponent(escape(atob(t)))}let a="";function l(t){a=t||""}function c(t){if(/^(https?:|data:|blob:|\/\/|\/)/i.test(t))return t;const e=t.replace(/^\.\//,"");return r.$M.getDownloadUrl(a+e)}const u=new Set(["a","abbr","b","blockquote","br","code","dd","del","details","div","dl","dt","em","h1","h2","h3","h4","h5","h6","hr","i","img","ins","kbd","li","mark","ol","p","pre","q","s","samp","small","span","strong","sub","summary","sup","table","tbody","td","tfoot","th","thead","tr","u","ul","var","wbr"]),h=new Set(["align","alt","border","cellpadding","cellspacing","class","colspan","height","href","id","rowspan","src","style","target","title","valign","width"]);function d(t){const e=(new DOMParser).parseFromString(`<div>${t}</div>`,"text/html").body.firstElementChild,n=document.createDocumentFragment();if(!e)return n;const r=(t,e)=>{t.childNodes.forEach(t=>{if(t.nodeType===Node.TEXT_NODE)return void e.appendChild(document.createTextNode(t.textContent??""));if(t.nodeType!==Node.ELEMENT_NODE)return;const n=t;if(!u.has(n.tagName.toLowerCase()))return void r(n,e);const s=document.createElement(n.tagName.toLowerCase());for(const t of Array.from(n.attributes)){const e=t.name.toLowerCase();e.startsWith("on")||(h.has(e)||e.startsWith("data-"))&&("href"!==e&&"src"!==e||!/^\s*javascript:/i.test(t.value))&&("src"!==e?s.setAttribute(e,t.value):s.setAttribute(e,c(t.value)))}r(n,s),e.appendChild(s)})};return r(e,n),n}class m{dom;node;view;get_pos;render_box;source_box;source_input;source_hl;source_hl_code;mode="preview";draft=null;constructor(t,e,n){this.node=t,this.view=e,this.get_pos=n,this.dom=document.createElement("div"),this.dom.className="md-html-block",this.dom.setAttribute("data-mode","preview"),this.render_box=document.createElement("div"),this.render_box.className="md-html-block__render",this.source_box=document.createElement("div"),this.source_box.className="md-html-block__source",this.source_input=document.createElement("textarea"),this.source_input.className="md-html-block__input",this.source_input.setAttribute("spellcheck","false"),this.source_input.setAttribute("wrap","off"),this.source_hl=document.createElement("pre"),this.source_hl.className="md-html-block__highlight",this.source_hl.setAttribute("aria-hidden","true");const r=document.createElement("code");this.source_hl.appendChild(r),this.source_hl_code=r,this.source_box.append(this.source_hl,this.source_input);const s=document.createElement("span");s.className="md-html-block__toggle",s.setAttribute("contenteditable","false"),s.textContent="HTML",s.addEventListener("mousedown",t=>{t.preventDefault(),t.stopPropagation(),this.toggle_mode()}),this.source_input.addEventListener("blur",()=>this.commit()),this.source_input.addEventListener("keydown",t=>{"Escape"===t.key&&(t.preventDefault(),this.draft=null,this.toggle_mode()),t.stopPropagation()}),this.source_input.addEventListener("input",()=>{this.draft=this.source_input.value,this.paint_highlight(),this.source_hl.scrollLeft=this.source_input.scrollLeft}),this.source_hl.addEventListener("scroll",()=>{this.source_input.scrollLeft=this.source_hl.scrollLeft});for(const t of["beforeinput","paste","input","keyup","keypress"])this.source_input.addEventListener(t,t=>t.stopPropagation());this.dom.append(this.render_box,this.source_box,s),this.render_box.replaceChildren(d(t.attrs.value)),this.set_source_value(t.attrs.value)}set_source_value(t){this.source_input.value=t,this.paint_highlight()}paint_highlight(){const t=this.source_input.value;this.source_hl_code.innerHTML=s.A.highlight(t+"\n",{language:"xml",ignoreIllegals:!0}).value}toggle_mode(){if("source"===this.mode)return this.commit(),this.mode="preview",void this.dom.setAttribute("data-mode","preview");this.mode="source",this.dom.setAttribute("data-mode","source"),this.set_source_value(this.node.attrs.value),this.draft=null,this.source_input.focus()}commit(){if(null===this.draft)return;const t=this.draft;if(this.draft=null,t===this.node.attrs.value)return;const e=this.get_pos(),n=this.view.state.doc.nodeAt(e);n&&this.view.dispatch(this.view.state.tr.setNodeMarkup(e,void 0,{...n.attrs,value:t}))}update(t){return t.type===this.node.type&&(this.node=t,null===this.draft&&(this.render_box.replaceChildren(d(t.attrs.value)),"preview"===this.mode&&this.set_source_value(t.attrs.value)),!0)}stopEvent(t){return this.dom.contains(t.target)}ignoreMutation(){return!0}}class p{dom;node;view;get_pos;constructor(t,e,n){this.node=t,this.view=e,this.get_pos=n,this.dom=document.createElement("span"),this.dom.className="md-html-inline",this.dom.setAttribute("contenteditable","true"),this.dom.textContent=t.attrs.value,this.dom.addEventListener("blur",()=>this.commit());for(const t of["beforeinput","paste","input"])this.dom.addEventListener(t,t=>t.stopPropagation())}commit(){const t=this.dom.textContent??"";if(t===this.node.attrs.value)return;const e=this.get_pos(),n=this.view.state.doc.nodeAt(e);n&&this.view.dispatch(this.view.state.tr.setNodeMarkup(e,void 0,{...n.attrs,value:t}))}update(t){return t.type===this.node.type&&(this.node=t,!0)}stopEvent(t){return this.dom.contains(t.target)}ignoreMutation(){return!0}}function f(){return{html_block:(t,e,n)=>new m(t,e,n),html_inline:(t,e,n)=>new p(t,e,n)}}},89334(t,e,n){n.d(e,{Rh:()=>p,V:()=>a,lG:()=>o,rg:()=>f,z$:()=>h});var r=n(41105);n(6704);const s=["math","latex","katex"];function o(t){return s.includes(t.toLowerCase())}const i=[{open:"$$",close:"$$",mode:"block"},{open:"\\[",close:"\\]",mode:"block"},{open:"\\(",close:"\\)",mode:"inline"},{open:"$",close:"$",mode:"inline"}];function a(t){const e=t.trim();if(!e)return null;for(const t of i){if(e.length<=t.open.length+t.close.length)continue;if(!e.startsWith(t.open)||!e.endsWith(t.close))continue;const n=e.slice(t.open.length,e.length-t.close.length);if(("$"!==t.open||!e.startsWith("$$"))&&n.trim())return{tex:n,mode:t.mode,raw:e}}return null}let l=null;const c=new Map;async function u(t,e){const r=t.trim();if(!r)return{html:"",error:null};const s=`${e}\0${r}`,o=c.get(s);if(o)return o;let i;try{const{renderToString:t}=await(l||(l=n.e(2130).then(n.bind(n,99749))),l);i={html:t(r,{displayMode:"block"===e,throwOnError:!1,strict:!1,trust:!1,output:"html"}),error:null}}catch(t){i={html:"",error:t?.message??String(t)}}return c.size>=500&&c.clear(),c.set(s,i),i}async function h(t,e,n,r){const s=await u(e,n);if(t.isConnected){if(t.classList.remove("md-math--loading","md-math--error"),s.error)return t.classList.add("md-math--error"),t.textContent=r,void(t.title=s.error);t.innerHTML=s.html}}function d(t,e){const n=t.pos,r=t.src;if(r.startsWith("$$",n))return!1;const s=[{open:"\\(",close:"\\)"},{open:"$",close:"$"}];for(const o of s){if(!r.startsWith(o.open,n))continue;const s=n+o.open.length,i=r.indexOf(o.close,s);if(i<0)continue;const a=r.slice(s,i);if(a.trim()){if("$"===o.open){const t=r[i+1];if(void 0!==t&&/\d/.test(t))continue}if(!e){const e=t.push("math_inline","span",0);e.content=a,e.markup=o.open,e.meta={raw:r.slice(n,i+o.close.length)}}return t.pos=i+o.close.length,!0}}return!1}function m(t,e,n,r){const s=t.bMarks[e]+t.tShift[e],o=t.eMarks[e],i=t.src.slice(s,o).trim(),a=[{open:"\\[",close:"\\]"},{open:"$$",close:"$$"}];for(const o of a){if(!i.startsWith(o.open))continue;if(i.endsWith(o.close)&&i.length>o.open.length+o.close.length){if(r)return!0;const n=t.push("math_block","div",0);return n.content=i.slice(o.open.length,i.length-o.close.length),n.markup=o.open,n.meta={raw:i},n.map=[e,e+1],t.line=e+1,!0}const a=i.slice(o.open.length);for(let i=e+1;i<n;i++){const n=t.bMarks[i]+t.tShift[i],l=t.eMarks[i],c=t.src.slice(n,l);if(!c.trimEnd().endsWith(o.close))continue;if(r)return!0;const u=[];a.trim()&&u.push(a),t.getLines(e+1,i,t.tShift[e],!1).split("\n").forEach(t=>u.push(t)),u.push(c.trimEnd().slice(0,-o.close.length));const h=t.push("math_block","div",0);return h.content=u.join("\n").trim(),h.markup=o.open,h.meta={raw:t.src.slice(s,t.eMarks[i]).trimEnd()},h.map=[e,i+1],t.line=i+1,!0}}return!1}function p(t,e){t.inline.ruler.before("escape","math_inline",d),t.block.ruler.before("fence","math_block",m,{alt:["paragraph","reference","blockquote","list"]}),t.renderer.rules.math_inline=(t,n)=>`<span data-math-inline="${e(t[n].meta.raw)}"></span>`,t.renderer.rules.math_block=(t,n)=>`<div data-math-block="${e(t[n].meta.raw)}"></div>`;const n=t.renderer.rules.fence||function(t,e,n,r,s){return s.renderToken(t,e,n)};t.renderer.rules.fence=(t,r,s,i,a)=>o(t[r].info.trim())?`<div data-math-block="${e(`$$\n${t[r].content.trim()}\n$$`)}"></div>`:n(t,r,s,i,a)}async function f(t){const e=t.querySelectorAll("[data-math-inline], [data-math-block]");for(const t of Array.from(e)){const e=t.getAttribute("data-math-inline"),n=t.getAttribute("data-math-block"),s=e??n;if(null===s)continue;const o=a((0,r.Ne)(s));if(!o)continue;const i=null!==e?"inline":"block";t.classList.add("md-math","block"===i?"md-math--block":"md-math--inline"),await h(t,o.tex,i,o.raw)}}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[7959],{37959(e,c,a){a.d(c,{createCynefinServices:()=>s.t});var s=a(2831);a(41303)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[8034],{34826(t,n,e){function i(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let i=-1;for(let r of t)null!=(r=n(r,++i,t))&&(e>r||void 0===e&&r>=r)&&(e=r)}return e}e.d(n,{A:()=>i})},19818(t,n,e){e.d(n,{gX:()=>a,kb:()=>s,pD:()=>l,pG:()=>o});var i=e(34826);function r(t){return t.target.depth}function s(t){return t.depth}function o(t,n){return n-1-t.height}function l(t,n){return t.sourceLinks.length?t.depth:n-1}function a(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?(0,i.A)(t.sourceLinks,r)-1:0}},39375(t,n,e){function i(t,n){let e=0;if(void 0===n)for(let n of t)(n=+n)&&(e+=n);else{let i=-1;for(let r of t)(r=+n(r,++i,t))&&(e+=r)}return e}function r(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e<n||void 0===e&&n>=n)&&(e=n);else{let i=-1;for(let r of t)null!=(r=n(r,++i,t))&&(e<r||void 0===e&&r>=r)&&(e=r)}return e}e.d(n,{A:()=>_});var s=e(34826),o=e(19818);function l(t){return function(){return t}}function a(t,n){return h(t.source,n.source)||t.index-n.index}function c(t,n){return h(t.target,n.target)||t.index-n.index}function h(t,n){return t.y0-n.y0}function u(t){return t.value}function f(t){return t.index}function y(t){return t.nodes}function d(t){return t.links}function g(t,n){const e=t.get(n);if(!e)throw new Error("missing: "+n);return e}function p({nodes:t}){for(const n of t){let t=n.y0,e=t;for(const e of n.sourceLinks)e.y0=t+e.width/2,t+=e.width;for(const t of n.targetLinks)t.y1=e+t.width/2,e+=t.width}}function _(){let t,n,e,_=0,k=0,x=1,m=1,b=24,v=8,w=f,L=o.pD,S=y,A=d,E=6;function K(){const o={nodes:S.apply(null,arguments),links:A.apply(null,arguments)};return function({nodes:t,links:n}){for(const[n,e]of t.entries())e.index=n,e.sourceLinks=[],e.targetLinks=[];const i=new Map(t.map((n,e)=>[w(n,e,t),n]));for(const[t,e]of n.entries()){e.index=t;let{source:n,target:r}=e;"object"!=typeof n&&(n=e.source=g(i,n)),"object"!=typeof r&&(r=e.target=g(i,r)),n.sourceLinks.push(e),r.targetLinks.push(e)}if(null!=e)for(const{sourceLinks:n,targetLinks:i}of t)n.sort(e),i.sort(e)}(o),function({nodes:t}){for(const n of t)n.value=void 0===n.fixedValue?Math.max(i(n.sourceLinks,u),i(n.targetLinks,u)):n.fixedValue}(o),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,r=0;for(;e.size;){for(const t of e){t.depth=r;for(const{target:n}of t.sourceLinks)i.add(n)}if(++r>n)throw new Error("circular link");e=i,i=new Set}}(o),function({nodes:t}){const n=t.length;let e=new Set(t),i=new Set,r=0;for(;e.size;){for(const t of e){t.height=r;for(const{source:n}of t.targetLinks)i.add(n)}if(++r>n)throw new Error("circular link");e=i,i=new Set}}(o),function(e){const o=function({nodes:t}){const e=r(t,t=>t.depth)+1,i=(x-_-b)/(e-1),s=new Array(e);for(const n of t){const t=Math.max(0,Math.min(e-1,Math.floor(L.call(null,n,e))));n.layer=t,n.x0=_+t*i,n.x1=n.x0+b,s[t]?s[t].push(n):s[t]=[n]}if(n)for(const t of s)t.sort(n);return s}(e);t=Math.min(v,(m-k)/(r(o,t=>t.length)-1)),function(n){const e=(0,s.A)(n,n=>(m-k-(n.length-1)*t)/i(n,u));for(const i of n){let n=k;for(const r of i){r.y0=n,r.y1=n+r.value*e,n=r.y1+t;for(const t of r.sourceLinks)t.width=t.value*e}n=(m-n+t)/(i.length+1);for(let t=0;t<i.length;++t){const e=i[t];e.y0+=n*(t+1),e.y1+=n*(t+1)}P(i)}}(o);for(let t=0;t<E;++t){const n=Math.pow(.99,t),e=Math.max(1-n,(t+1)/E);I(o,n,e),M(o,n,e)}}(o),p(o),o}function M(t,e,i){for(let r=1,s=t.length;r<s;++r){const s=t[r];for(const t of s){let n=0,i=0;for(const{source:e,value:r}of t.targetLinks){let s=r*(t.layer-e.layer);n+=$(e,t)*s,i+=s}if(!(i>0))continue;let r=(n/i-t.y0)*e;t.y0+=r,t.y1+=r,N(t)}void 0===n&&s.sort(h),T(s,i)}}function I(t,e,i){for(let r=t.length-2;r>=0;--r){const s=t[r];for(const t of s){let n=0,i=0;for(const{target:e,value:r}of t.sourceLinks){let s=r*(e.layer-t.layer);n+=O(t,e)*s,i+=s}if(!(i>0))continue;let r=(n/i-t.y0)*e;t.y0+=r,t.y1+=r,N(t)}void 0===n&&s.sort(h),T(s,i)}}function T(n,e){const i=n.length>>1,r=n[i];D(n,r.y0-t,i-1,e),C(n,r.y1+t,i+1,e),D(n,m,n.length-1,e),C(n,k,0,e)}function C(n,e,i,r){for(;i<n.length;++i){const s=n[i],o=(e-s.y0)*r;o>1e-6&&(s.y0+=o,s.y1+=o),e=s.y1+t}}function D(n,e,i,r){for(;i>=0;--i){const s=n[i],o=(s.y1-e)*r;o>1e-6&&(s.y0-=o,s.y1-=o),e=s.y0-t}}function N({sourceLinks:t,targetLinks:n}){if(void 0===e){for(const{source:{sourceLinks:t}}of n)t.sort(c);for(const{target:{targetLinks:n}}of t)n.sort(a)}}function P(t){if(void 0===e)for(const{sourceLinks:n,targetLinks:e}of t)n.sort(c),e.sort(a)}function $(n,e){let i=n.y0-(n.sourceLinks.length-1)*t/2;for(const{target:r,width:s}of n.sourceLinks){if(r===e)break;i+=s+t}for(const{source:t,width:r}of e.targetLinks){if(t===n)break;i-=r}return i}function O(n,e){let i=e.y0-(e.targetLinks.length-1)*t/2;for(const{source:r,width:s}of e.targetLinks){if(r===n)break;i+=s+t}for(const{target:t,width:r}of n.sourceLinks){if(t===e)break;i-=r}return i}return K.update=function(t){return p(t),t},K.nodeId=function(t){return arguments.length?(w="function"==typeof t?t:l(t),K):w},K.nodeAlign=function(t){return arguments.length?(L="function"==typeof t?t:l(t),K):L},K.nodeSort=function(t){return arguments.length?(n=t,K):n},K.nodeWidth=function(t){return arguments.length?(b=+t,K):b},K.nodePadding=function(n){return arguments.length?(v=t=+n,K):v},K.nodes=function(t){return arguments.length?(S="function"==typeof t?t:l(t),K):S},K.links=function(t){return arguments.length?(A="function"==typeof t?t:l(t),K):A},K.linkSort=function(t){return arguments.length?(e=t,K):e},K.size=function(t){return arguments.length?(_=k=0,x=+t[0],m=+t[1],K):[x-_,m-k]},K.extent=function(t){return arguments.length?(_=+t[0][0],x=+t[1][0],k=+t[0][1],m=+t[1][1],K):[[_,k],[x,m]]},K.iterations=function(t){return arguments.length?(E=+t,K):E},K}},18754(t,n,e){e.d(n,{A:()=>m});var i=Math.PI,r=2*i,s=1e-6,o=r-s;function l(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function a(){return new l}l.prototype=a.prototype={constructor:l,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,e,i){this._+="Q"+ +t+","+ +n+","+(this._x1=+e)+","+(this._y1=+i)},bezierCurveTo:function(t,n,e,i,r,s){this._+="C"+ +t+","+ +n+","+ +e+","+ +i+","+(this._x1=+r)+","+(this._y1=+s)},arcTo:function(t,n,e,r,o){t=+t,n=+n,e=+e,r=+r,o=+o;var l=this._x1,a=this._y1,c=e-t,h=r-n,u=l-t,f=a-n,y=u*u+f*f;if(o<0)throw new Error("negative radius: "+o);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(y>s)if(Math.abs(f*c-h*u)>s&&o){var d=e-l,g=r-a,p=c*c+h*h,_=d*d+g*g,k=Math.sqrt(p),x=Math.sqrt(y),m=o*Math.tan((i-Math.acos((p+y-_)/(2*k*x)))/2),b=m/x,v=m/k;Math.abs(b-1)>s&&(this._+="L"+(t+b*u)+","+(n+b*f)),this._+="A"+o+","+o+",0,0,"+ +(f*d>u*g)+","+(this._x1=t+v*c)+","+(this._y1=n+v*h)}else this._+="L"+(this._x1=t)+","+(this._y1=n);else;},arc:function(t,n,e,l,a,c){t=+t,n=+n,c=!!c;var h=(e=+e)*Math.cos(l),u=e*Math.sin(l),f=t+h,y=n+u,d=1^c,g=c?l-a:a-l;if(e<0)throw new Error("negative radius: "+e);null===this._x1?this._+="M"+f+","+y:(Math.abs(this._x1-f)>s||Math.abs(this._y1-y)>s)&&(this._+="L"+f+","+y),e&&(g<0&&(g=g%r+r),g>o?this._+="A"+e+","+e+",0,1,"+d+","+(t-h)+","+(n-u)+"A"+e+","+e+",0,1,"+d+","+(this._x1=f)+","+(this._y1=y):g>s&&(this._+="A"+e+","+e+",0,"+ +(g>=i)+","+d+","+(this._x1=t+e*Math.cos(a))+","+(this._y1=n+e*Math.sin(a))))},rect:function(t,n,e,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +e+"v"+ +i+"h"+-e+"Z"},toString:function(){return this._}};const c=a;var h=Array.prototype.slice;function u(t){return function(){return t}}function f(t){return t[0]}function y(t){return t[1]}function d(t){return t.source}function g(t){return t.target}function p(t){var n=d,e=g,i=f,r=y,s=null;function o(){var o,l=h.call(arguments),a=n.apply(this,l),u=e.apply(this,l);if(s||(s=o=c()),t(s,+i.apply(this,(l[0]=a,l)),+r.apply(this,l),+i.apply(this,(l[0]=u,l)),+r.apply(this,l)),o)return s=null,o+""||null}return o.source=function(t){return arguments.length?(n=t,o):n},o.target=function(t){return arguments.length?(e=t,o):e},o.x=function(t){return arguments.length?(i="function"==typeof t?t:u(+t),o):i},o.y=function(t){return arguments.length?(r="function"==typeof t?t:u(+t),o):r},o.context=function(t){return arguments.length?(s=t??null,o):s},o}function _(t,n,e,i,r){t.moveTo(n,e),t.bezierCurveTo(n=(n+i)/2,e,n,r,i,r)}function k(t){return[t.source.x1,t.y0]}function x(t){return[t.target.x0,t.y1]}function m(){return p(_).source(k).target(x)}e.dn(u),e.dn(m)},18034(t,n,e){e.d(n,{diagram:()=>I});var i=e(20886),r=(e(84828),e(27698)),s=e(51444),o=e(39375),l=e(19818),a=e(18754),c=function(){var t=(0,r.K)(function(t,n,e,i){for(e=e||{},i=t.length;i--;e[t[i]]=n);return e},"o"),n=[1,9],e=[1,10],i=[1,5,10,12],s={trace:(0,r.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:(0,r.K)(function(t,n,e,i,r,s,o){var l=s.length-1;switch(r){case 7:const t=i.findOrCreateNode(s[l-4].trim().replaceAll('""','"')),n=i.findOrCreateNode(s[l-2].trim().replaceAll('""','"')),e=parseFloat(s[l].trim());i.addLink(t,n,e);break;case 8:case 9:case 11:this.$=s[l];break;case 10:this.$=s[l-1]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:e},{1:[2,6],7:11,10:[1,12]},t(e,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(i,[2,8]),t(i,[2,9]),{19:[1,16]},t(i,[2,11]),{1:[2,1]},{1:[2,5]},t(e,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:e},{15:18,16:7,17:8,18:n,20:e},{18:[1,19]},t(e,[2,3]),{12:[1,20]},t(i,[2,10]),{15:21,16:7,17:8,18:n,20:e},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:(0,r.K)(function(t,n){if(!n.recoverable){var e=new Error(t);throw e.hash=n,e}this.trace(t)},"parseError"),parse:(0,r.K)(function(t){var n=this,e=[0],i=[],s=[null],o=[],l=this.table,a="",c=0,h=0,u=0,f=o.slice.call(arguments,1),y=Object.create(this.lexer),d={yy:{}};for(var g in this.yy)Object.prototype.hasOwnProperty.call(this.yy,g)&&(d.yy[g]=this.yy[g]);y.setInput(t,d.yy),d.yy.lexer=y,d.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var p=y.yylloc;o.push(p);var _=y.options&&y.options.ranges;function k(){var t;return"number"!=typeof(t=i.pop()||y.lex()||1)&&(t instanceof Array&&(t=(i=t).pop()),t=n.symbols_[t]||t),t}"function"==typeof d.yy.parseError?this.parseError=d.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,r.K)(function(t){e.length=e.length-2*t,s.length=s.length-t,o.length=o.length-t},"popStack"),(0,r.K)(k,"lex");for(var x,m,b,v,w,L,S,A,E,K={};;){if(b=e[e.length-1],this.defaultActions[b]?v=this.defaultActions[b]:(null==x&&(x=k()),v=l[b]&&l[b][x]),void 0===v||!v.length||!v[0]){var M="";for(L in E=[],l[b])this.terminals_[L]&&L>2&&E.push("'"+this.terminals_[L]+"'");M=y.showPosition?"Parse error on line "+(c+1)+":\n"+y.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[x]||x)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==x?"end of input":"'"+(this.terminals_[x]||x)+"'"),this.parseError(M,{text:y.match,token:this.terminals_[x]||x,line:y.yylineno,loc:p,expected:E})}if(v[0]instanceof Array&&v.length>1)throw new Error("Parse Error: multiple actions possible at state: "+b+", token: "+x);switch(v[0]){case 1:e.push(x),s.push(y.yytext),o.push(y.yylloc),e.push(v[1]),x=null,m?(x=m,m=null):(h=y.yyleng,a=y.yytext,c=y.yylineno,p=y.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[v[1]][1],K.$=s[s.length-S],K._$={first_line:o[o.length-(S||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(S||1)].first_column,last_column:o[o.length-1].last_column},_&&(K._$.range=[o[o.length-(S||1)].range[0],o[o.length-1].range[1]]),void 0!==(w=this.performAction.apply(K,[a,h,c,d.yy,v[1],s,o].concat(f))))return w;S&&(e=e.slice(0,-1*S*2),s=s.slice(0,-1*S),o=o.slice(0,-1*S)),e.push(this.productions_[v[1]][0]),s.push(K.$),o.push(K._$),A=l[e[e.length-2]][e[e.length-1]],e.push(A);break;case 3:return!0}}return!0},"parse")},o=function(){return{EOF:1,parseError:(0,r.K)(function(t,n){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,n)},"parseError"),setInput:(0,r.K)(function(t,n){return this.yy=n||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,r.K)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},"input"),unput:(0,r.K)(function(t){var n=t.length,e=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var i=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),e.length-1&&(this.yylineno-=e.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:e?(e.length===i.length?this.yylloc.first_column:0)+i[i.length-e.length].length-e[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:(0,r.K)(function(){return this._more=!0,this},"more"),reject:(0,r.K)(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:(0,r.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,r.K)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,r.K)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,r.K)(function(){var t=this.pastInput(),n=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+n+"^"},"showPosition"),test_match:(0,r.K)(function(t,n){var e,i,r;if(this.options.backtrack_lexer&&(r={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(r.yylloc.range=this.yylloc.range.slice(0))),(i=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e)return e;if(this._backtrack){for(var s in r)this[s]=r[s];return!1}return!1},"test_match"),next:(0,r.K)(function(){if(this.done)return this.EOF;var t,n,e,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var r=this._currentRules(),s=0;s<r.length;s++)if((e=this._input.match(this.rules[r[s]]))&&(!n||e[0].length>n[0].length)){if(n=e,i=s,this.options.backtrack_lexer){if(!1!==(t=this.test_match(e,r[s])))return t;if(this._backtrack){n=!1;continue}return!1}if(!this.options.flex)break}return n?!1!==(t=this.test_match(n,r[i]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:(0,r.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,r.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,r.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,r.K)(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:(0,r.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,r.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,r.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,r.K)(function(t,n,e,i){switch(e){case 0:case 1:return this.pushState("csv"),4;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;case 6:return 20;case 7:return this.popState("escaped_text"),18;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}}}();function l(){this.yy={}}return s.lexer=o,(0,r.K)(l,"Parser"),l.prototype=s,s.Parser=l,new l}();c.parser=c;var h=c,u=[],f=[],y=new Map,d=(0,r.K)(()=>{u=[],f=[],y=new Map,(0,i.IU)()},"clear"),g=class{constructor(t,n,e=0){this.source=t,this.target=n,this.value=e}static{(0,r.K)(this,"SankeyLink")}},p=(0,r.K)((t,n,e)=>{u.push(new g(t,n,e))},"addLink"),_=class{constructor(t){this.ID=t}static{(0,r.K)(this,"SankeyNode")}},k=(0,r.K)(t=>{t=i.Y2.sanitizeText(t,(0,i.D7)());let n=y.get(t);return void 0===n&&(n=new _(t),y.set(t,n),f.push(n)),n},"findOrCreateNode"),x=(0,r.K)(()=>f,"getNodes"),m=(0,r.K)(()=>u,"getLinks"),b=(0,r.K)(()=>({nodes:f.map(t=>({id:t.ID})),links:u.map(t=>({source:t.source.ID,target:t.target.ID,value:t.value}))}),"getGraph"),v={nodesMap:y,getConfig:(0,r.K)(()=>(0,i.D7)().sankey,"getConfig"),getNodes:x,getLinks:m,getGraph:b,addLink:p,findOrCreateNode:k,getAccTitle:i.iN,setAccTitle:i.SV,getAccDescription:i.m7,setAccDescription:i.EI,getDiagramTitle:i.ab,setDiagramTitle:i.ke,clear:d},w=class t{static{(0,r.K)(this,"Uid")}static{this.count=0}static next(n){return new t(n+ ++t.count)}constructor(t){this.id=t,this.href=`#${t}`}toString(){return"url("+this.href+")"}},L={left:l.kb,right:l.pG,center:l.gX,justify:l.pD},S=(0,r.K)(t=>{let n=0,e=0;for(const i of t){const t=i.value??0;t>n&&(n=t,e=i.layer??0)}return e},"findCentralNodeLayer"),A={draw:(0,r.K)(function(t,n,e,l){const{securityLevel:c,sankey:h}=(0,i.D7)(),u=i.ME.sankey;let f;"sandbox"===c&&(f=(0,s.Ltv)("#i"+n));const y="sandbox"===c?(0,s.Ltv)(f.nodes()[0].contentDocument.body):(0,s.Ltv)("body"),d="sandbox"===c?y.select(`[id="${n}"]`):(0,s.Ltv)(`[id="${n}"]`),g=h?.width??u.width,p=h?.height??u.width,_=h?.useMaxWidth??u.useMaxWidth,k=h?.nodeAlignment??u.nodeAlignment,x=h?.prefix??u.prefix,m=h?.suffix??u.suffix,b=h?.showValues??u.showValues,v=h?.nodeWidth??u.nodeWidth??10,A=h?.nodePadding??u.nodePadding??12,E=h?.labelStyle??u.labelStyle??"legacy",K=h?.nodeColors??{},M=l.db.getGraph(),I=L[k];(0,o.A)().nodeId(t=>t.id).nodeWidth(v).nodePadding(A+(b?15:0)).nodeAlign(I).extent([[0,0],[g,p]])(M);const T=S(M.nodes),C=(0,s.UMr)(s.zt),D=(0,r.K)(t=>K[t]??C(t),"getNodeColor");d.append("g").attr("class","nodes").selectAll(".node").data(M.nodes).join("g").attr("class","node").attr("id",t=>(t.uid=w.next("node-")).id).attr("transform",function(t){return"translate("+t.x0+","+t.y0+")"}).attr("x",t=>t.x0).attr("y",t=>t.y0).append("rect").attr("height",t=>t.y1-t.y0).attr("width",t=>t.x1-t.x0).attr("fill",t=>D(t.id));const N=(0,r.K)(({id:t,value:n})=>b?`${t}\n${x}${Math.round(100*n)/100}${m}`:t,"getText"),P=(0,r.K)(t=>{if("outlined"===E){return(t.layer??0)<T?{x:t.x0-6,anchor:"end"}:{x:t.x1+6,anchor:"start"}}return t.x0<g/2?{x:t.x1+6,anchor:"start"}:{x:t.x0-6,anchor:"end"}},"getLabelPosition"),$=d.append("g").attr("class","node-labels").attr("font-size",14),O=(0,r.K)(t=>$.selectAll(t?`.${t}`:"text").data(M.nodes).join("text").attr("class",t??null).attr("x",t=>P(t).x).attr("y",t=>(t.y1+t.y0)/2).attr("dy",(b?"0":"0.35")+"em").attr("text-anchor",t=>P(t).anchor).text(N),"appendLabel");"outlined"===E?(O("sankey-label-bg"),O("sankey-label-fg")):O();const j=d.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",.5).selectAll(".link").data(M.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),z=h?.linkColor??"gradient";if("gradient"===z){const t=j.append("linearGradient").attr("id",t=>(t.uid=w.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",t=>t.source.x1).attr("x2",t=>t.target.x0);t.append("stop").attr("offset","0%").attr("stop-color",t=>D(t.source.id)),t.append("stop").attr("offset","100%").attr("stop-color",t=>D(t.target.id))}let F;switch(z){case"gradient":F=(0,r.K)(t=>t.uid,"coloring");break;case"source":F=(0,r.K)(t=>D(t.source.id),"coloring");break;case"target":F=(0,r.K)(t=>D(t.target.id),"coloring");break;default:F=z}j.append("path").attr("d",(0,a.A)()).attr("stroke",F).attr("stroke-width",t=>Math.max(1,t.width)),(0,i.ot)(void 0,d,0,_)},"draw")},E=(0,r.K)(t=>t.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,"\n").trim(),"prepareTextForParsing"),K=(0,r.K)(t=>`.label {\n font-family: ${t.fontFamily};\n }\n\n .node-labels {\n font-family: ${t.fontFamily};\n }\n\n /* Outlined label style - background stroke for better readability */\n .sankey-label-bg {\n stroke: ${t.mainBkg||t.background||"#fff"};\n stroke-width: 4px;\n stroke-linejoin: round;\n paint-order: stroke;\n }\n\n /* Foreground label text */\n .sankey-label-fg {\n fill: ${t.textColor};\n }\n\n /* Node styling */\n .node rect {\n shape-rendering: crispEdges;\n }\n\n /* Link styling */\n .link {\n fill: none;\n stroke-opacity: 0.5;\n mix-blend-mode: multiply;\n }\n`,"getStyles"),M=h.parse.bind(h);h.parse=t=>M(E(t));var I={styles:K,parser:h,db:v,renderer:A}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[8080],{86035(e,t,n){n.d(t,{$:()=>N,U:()=>B,db:()=>f});var i=n(15319),r=n(89983),a=n(31293),o=n(86827),l="",s="",d="",c=[],m=new Map,h=(0,o.K)(e=>(0,r.jZ)(e,(0,r.D7)()),"sanitizeText"),p=(0,o.K)(e=>{switch(e.type){case"terminal":return{...e,value:h(e.value)};case"nonterminal":return{...e,name:h(e.name)};case"sequence":return{...e,elements:e.elements.map(p)};case"choice":return{...e,alternatives:e.alternatives.map(p)};case"optional":return{...e,element:p(e.element)};case"repetition":return{...e,element:p(e.element),separator:e.separator?p(e.separator):void 0};case"special":return{...e,text:h(e.text)}}},"sanitizeAstNode"),u=(0,o.K)(()=>{l="",s="",d="",c.length=0,m.clear(),(0,r.IU)(),a.R.debug("[Railroad] Database cleared")},"clear"),g=(0,o.K)(e=>{l=h(e),a.R.debug("[Railroad] Title set:",e)},"setTitle"),T=(0,o.K)(()=>l,"getTitle"),f={clear:u,setTitle:g,getTitle:T,addRule:(0,o.K)(e=>{const t={...e,name:h(e.name),definition:p(e.definition),comment:e.comment?h(e.comment):void 0};a.R.debug("[Railroad] Adding rule:",t.name),m.has(t.name)&&a.R.warn(`[Railroad] Rule '${t.name}' is already defined. Overwriting.`),c.push(t),m.set(t.name,t)},"addRule"),getRules:(0,o.K)(()=>c,"getRules"),getRule:(0,o.K)(e=>m.get(e),"getRule"),setAccTitle:(0,o.K)(e=>{s=h(e).replace(/^\s+/g,""),a.R.debug("[Railroad] Accessibility title set:",e)},"setAccTitle"),getAccTitle:(0,o.K)(()=>s,"getAccTitle"),setAccDescription:(0,o.K)(e=>{d=h(e).replace(/\n\s+/g,"\n"),a.R.debug("[Railroad] Accessibility description set:",e)},"setAccDescription"),getAccDescription:(0,o.K)(()=>d,"getAccDescription"),setDiagramTitle:g,getDiagramTitle:T},x={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},w=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,k=/^[\w "',.-]+$/,C=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),F=(0,o.K)(e=>!!e&&Object.keys(e).every(e=>"railroad"===e||C.has(e)),"isRailroadStyleOptions"),S=(0,o.K)(e=>e?"railroad"in e&&e.railroad?e.railroad:F(e)?e:{}:{},"extractRailroadOverrides"),$=(0,o.K)(e=>{if(!e||F(e))return{};const{railroad:t,svgId:n,theme:i,look:r,...a}=e;return a},"extractThemeOverrides"),y=(0,o.K)((e,t)=>{if("string"!=typeof e)return t;const n=e.trim();return w.test(n)?n:t},"sanitizeColorValue"),R=(0,o.K)((e,t)=>{if("string"!=typeof e)return t;const n=e.trim();return k.test(n)?n:t},"sanitizeFontFamilyValue"),b=(0,o.K)((e,t)=>{const n="number"==typeof e?e:"string"==typeof e?Number.parseFloat(e):Number.NaN;return Number.isFinite(n)&&n>=0?n:t},"sanitizeNumberValue"),v=(0,o.K)(e=>{const t="number"==typeof e?e:"string"==typeof e?Number.parseFloat(e):Number.NaN;return Number.isFinite(t)&&t>0?t:void 0},"parseThemeFontSize"),z=(0,o.K)(e=>{const t=R(e.fontFamily,x.fontFamily),n=v(e.fontSize)??x.fontSize;return{...x,fontFamily:t,fontSize:n,terminalFill:y(e.secondBkg??e.secondaryColor,x.terminalFill),terminalStroke:y(e.secondaryBorderColor??e.lineColor,x.terminalStroke),terminalTextColor:y(e.secondaryTextColor??e.textColor,x.terminalTextColor),nonTerminalFill:y(e.mainBkg??e.background,x.nonTerminalFill),nonTerminalStroke:y(e.primaryBorderColor??e.lineColor,x.nonTerminalStroke),nonTerminalTextColor:y(e.primaryTextColor??e.textColor,x.nonTerminalTextColor),lineColor:y(e.lineColor,x.lineColor),markerFill:y(e.lineColor,x.markerFill),commentFill:y(e.labelBackground??e.tertiaryColor,x.commentFill),commentStroke:y(e.tertiaryBorderColor??e.lineColor,x.commentStroke),commentTextColor:y(e.tertiaryTextColor??e.textColor,x.commentTextColor),specialFill:y(e.tertiaryColor??e.secondaryColor,x.specialFill),specialStroke:y(e.tertiaryBorderColor??e.secondaryBorderColor,x.specialStroke),ruleNameColor:y(e.titleColor??e.textColor,x.ruleNameColor)}},"buildThemeDefaults"),K=(0,o.K)(e=>{const t=(0,r.zj)(),n={...(0,r.P$)(),...t.themeVariables??{},...$(e)},i=z(n),a={...t.railroad??{},...S(e)};return{compactMode:a.compactMode??i.compactMode,padding:b(a.padding,i.padding),verticalSeparation:b(a.verticalSeparation,i.verticalSeparation),horizontalSeparation:b(a.horizontalSeparation,i.horizontalSeparation),arcRadius:b(a.arcRadius,i.arcRadius),fontSize:b(a.fontSize,i.fontSize),fontFamily:R(a.fontFamily,i.fontFamily),terminalFill:y(a.terminalFill,i.terminalFill),terminalStroke:y(a.terminalStroke,i.terminalStroke),terminalTextColor:y(a.terminalTextColor,i.terminalTextColor),nonTerminalFill:y(a.nonTerminalFill,i.nonTerminalFill),nonTerminalStroke:y(a.nonTerminalStroke,i.nonTerminalStroke),nonTerminalTextColor:y(a.nonTerminalTextColor,i.nonTerminalTextColor),lineColor:y(a.lineColor,i.lineColor),strokeWidth:b(a.strokeWidth,i.strokeWidth),markerFill:y(a.markerFill,i.markerFill),commentFill:y(a.commentFill,i.commentFill),commentStroke:y(a.commentStroke,i.commentStroke),commentTextColor:y(a.commentTextColor,i.commentTextColor),specialFill:y(a.specialFill,i.specialFill),specialStroke:y(a.specialStroke,i.specialStroke),ruleNameColor:y(a.ruleNameColor,i.ruleNameColor),showMarkers:a.showMarkers??i.showMarkers,markerRadius:b(a.markerRadius,i.markerRadius)}},"buildRailroadStyleOptions"),N=(0,o.K)(e=>{const{fontFamily:t,fontSize:n,terminalFill:i,terminalStroke:r,terminalTextColor:a,nonTerminalFill:o,nonTerminalStroke:l,nonTerminalTextColor:s,lineColor:d,strokeWidth:c,markerFill:m,commentFill:h,commentStroke:p,commentTextColor:u,specialFill:g,specialStroke:T,ruleNameColor:f}=K(e);return`\n .railroad-diagram {\n font-family: ${t};\n font-size: ${n}px;\n }\n\n .railroad-terminal rect {\n fill: ${i};\n stroke: ${r};\n stroke-width: ${c}px;\n }\n\n .railroad-terminal text {\n fill: ${a};\n font-family: ${t};\n font-size: ${n}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-nonterminal rect {\n fill: ${o};\n stroke: ${l};\n stroke-width: ${c}px;\n }\n\n .railroad-nonterminal text {\n fill: ${s};\n font-family: ${t};\n font-size: ${n}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-line {\n stroke: ${d};\n stroke-width: ${c}px;\n fill: none;\n }\n\n .railroad-start circle,\n .railroad-end circle {\n fill: ${m};\n }\n\n .railroad-comment ellipse {\n fill: ${h};\n stroke: ${p};\n stroke-width: ${c}px;\n }\n\n .railroad-comment text {\n fill: ${u};\n font-style: italic;\n font-family: ${t};\n font-size: ${n}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-special rect {\n fill: ${g};\n stroke: ${T};\n stroke-width: ${c}px;\n stroke-dasharray: 5,3;\n }\n\n .railroad-special text {\n fill: ${s};\n font-family: ${t};\n font-size: ${n}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-rule-name {\n font-weight: bold;\n fill: ${f};\n font-family: ${t};\n font-size: ${n}px;\n }\n\n .railroad-group {\n /* Grouping container, no specific styles */\n }\n`},"getStyles"),M=class{constructor(){this.d=""}static{(0,o.K)(this,"PathBuilder")}moveTo(e,t){return this.d+=`M ${e} ${t} `,this}lineTo(e,t){return this.d+=`L ${e} ${t} `,this}horizontalTo(e){return this.d+=`H ${e} `,this}verticalTo(e){return this.d+=`V ${e} `,this}arcTo(e,t,n,i,r,a,o){return this.d+=`A ${e} ${t} ${n} ${i?1:0} ${r?1:0} ${a} ${o} `,this}build(){return this.d.trim()}},A=class{constructor(e,t=K()){this.textCache=new Map,this.svg=e,this.config=t}static{(0,o.K)(this,"RailroadRenderer")}measureText(e){if(this.textCache.has(e))return this.textCache.get(e);const t=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(e),n=t.node().getBBox(),i={width:n.width,height:n.height};return t.remove(),this.textCache.set(e,i),i}renderTerminal(e,t){const n=this.measureText(t),i=n.width+2*this.config.padding,r=n.height+2*this.config.padding,a=e.append("g").attr("class","railroad-terminal");return a.append("rect").attr("x",0).attr("y",0).attr("width",i).attr("height",r).attr("rx",10).attr("ry",10),a.append("text").attr("x",i/2).attr("y",r/2).text(t),{element:a.node(),dimensions:{width:i,height:r,up:r/2,down:r/2}}}renderNonTerminal(e,t){const n=this.measureText(t),i=n.width+2*this.config.padding,r=n.height+2*this.config.padding,a=e.append("g").attr("class","railroad-nonterminal");return a.append("rect").attr("x",0).attr("y",0).attr("width",i).attr("height",r),a.append("text").attr("x",i/2).attr("y",r/2).text(t),{element:a.node(),dimensions:{width:i,height:r,up:r/2,down:r/2}}}renderSequence(e,t){const n=t.map(t=>this.renderExpression(e,t));let i=0,r=0,a=0;for(const e of n)i+=e.dimensions.width,r=Math.max(r,e.dimensions.up),a=Math.max(a,e.dimensions.down);i+=(n.length-1)*this.config.horizontalSeparation;const o=e.append("g").attr("class","railroad-sequence");let l=0;for(let e=0;e<n.length;e++){const t=n[e],i=r-t.dimensions.up;if(o.node().appendChild(t.element).setAttribute("transform",`translate(${l}, ${i})`),e<n.length-1){const e=l+t.dimensions.width,n=e+this.config.horizontalSeparation,i=r;o.append("path").attr("class","railroad-line").attr("d",(new M).moveTo(e,i).lineTo(n,i).build())}l+=t.dimensions.width+this.config.horizontalSeparation}return{element:o.node(),dimensions:{width:i,height:r+a,up:r,down:a}}}renderChoice(e,t){const n=t.map(t=>this.renderExpression(e,t));let i=0,r=0;for(const e of n)i=Math.max(i,e.dimensions.width),r+=e.dimensions.height;r+=(n.length-1)*this.config.verticalSeparation;const a=this.config.arcRadius,o=i+4*a,l=e.append("g").attr("class","railroad-choice");let s=0;const d=r/2;for(const e of n){const t=s,n=t+e.dimensions.up,r=2*a+(i-e.dimensions.width)/2;l.node().appendChild(e.element).setAttribute("transform",`translate(${r}, ${t})`);const c=new M,m=n>d;n===d?c.moveTo(0,d).lineTo(r,n):c.moveTo(0,d).arcTo(a,a,0,!1,m,a,d+(m?a:-a)).lineTo(a,n-(m?a:-a)).arcTo(a,a,0,!1,!m,2*a,n).lineTo(r,n),l.append("path").attr("class","railroad-line").attr("d",c.build());const h=new M,p=r+e.dimensions.width,u=o-2*a;n===d?h.moveTo(p,n).lineTo(o,d):h.moveTo(p,n).lineTo(u,n).arcTo(a,a,0,!1,!m,o-a,n+(m?-a:a)).lineTo(o-a,d+(m?a:-a)).arcTo(a,a,0,!1,m,o,d),l.append("path").attr("class","railroad-line").attr("d",h.build()),s+=e.dimensions.height+this.config.verticalSeparation}return{element:l.node(),dimensions:{width:o,height:r,up:d,down:r-d}}}renderOptional(e,t){const n=this.renderExpression(e,t),i=this.config.arcRadius,r=2*i,a=n.dimensions.width+4*i,o=n.dimensions.height+r,l=e.append("g").attr("class","railroad-optional"),s=2*i,d=r;l.node().appendChild(n.element).setAttribute("transform",`translate(${s}, ${d})`);const c=d+n.dimensions.up,m=(new M).moveTo(0,c).lineTo(2*i,c);l.append("path").attr("class","railroad-line").attr("d",m.build());const h=(new M).moveTo(s+n.dimensions.width,c).lineTo(a,c);l.append("path").attr("class","railroad-line").attr("d",h.build());const p=(new M).moveTo(0,c).arcTo(i,i,0,!1,!1,i,c-i).lineTo(i,i).arcTo(i,i,0,!1,!0,2*i,0).lineTo(a-2*i,0).arcTo(i,i,0,!1,!0,a-i,i).lineTo(a-i,c-i).arcTo(i,i,0,!1,!1,a,c);return l.append("path").attr("class","railroad-line").attr("d",p.build()),{element:l.node(),dimensions:{width:a,height:o,up:c,down:o-c}}}renderRepetition(e,t,n){const i=this.renderExpression(e,t),r=this.config.arcRadius,a=2*r,o=i.dimensions.width+4*r,l=0===n,s=i.dimensions.height+a+(l?a:0),d=e.append("g").attr("class","railroad-repetition"),c=2*r,m=l?a:0;d.node().appendChild(i.element).setAttribute("transform",`translate(${c}, ${m})`);const h=m+i.dimensions.up;d.append("path").attr("class","railroad-line").attr("d",(new M).moveTo(0,h).lineTo(2*r,h).build()),d.append("path").attr("class","railroad-line").attr("d",(new M).moveTo(c+i.dimensions.width,h).lineTo(o,h).build());const p=m+i.dimensions.height+r,u=(new M).moveTo(c+i.dimensions.width,h).arcTo(r,r,0,!1,!0,c+i.dimensions.width+r,h+r).lineTo(c+i.dimensions.width+r,p).arcTo(r,r,0,!1,!0,c+i.dimensions.width,p+r).lineTo(2*r,p+r).arcTo(r,r,0,!1,!0,r,p).lineTo(r,h+r).arcTo(r,r,0,!1,!0,2*r,h);if(d.append("path").attr("class","railroad-line").attr("d",u.build()),l){const e=(new M).moveTo(0,h).arcTo(r,r,0,!1,!1,r,h-r).lineTo(r,r).arcTo(r,r,0,!1,!0,2*r,0).lineTo(o-2*r,0).arcTo(r,r,0,!1,!0,o-r,r).lineTo(o-r,h-r).arcTo(r,r,0,!1,!1,o,h);d.append("path").attr("class","railroad-line").attr("d",e.build())}return{element:d.node(),dimensions:{width:o,height:s,up:h,down:s-h}}}renderSpecial(e,t){const n=this.measureText("? "+t+" ?"),i=n.width+2*this.config.padding,r=n.height+2*this.config.padding,a=e.append("g").attr("class","railroad-special");return a.append("rect").attr("x",0).attr("y",0).attr("width",i).attr("height",r),a.append("text").attr("x",i/2).attr("y",r/2).text("? "+t+" ?"),{element:a.node(),dimensions:{width:i,height:r,up:r/2,down:r/2}}}renderExpression(e,t){switch(t.type){case"terminal":return this.renderTerminal(e,t.value);case"nonterminal":return this.renderNonTerminal(e,t.name);case"sequence":return this.renderSequence(e,t.elements);case"choice":return this.renderChoice(e,t.alternatives);case"optional":return this.renderOptional(e,t.element);case"repetition":return this.renderRepetition(e,t.element,t.min);case"special":return this.renderSpecial(e,t.text);default:throw new Error(`Unknown node type: ${t.type}`)}}renderRule(e,t){const n=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${t})`),i=e.name+" =",r=this.measureText(i).width+20,a=r+20,o=n.append("g"),l=this.renderExpression(o,e.definition),s=Math.max(20,l.dimensions.up),d=s-l.dimensions.up;o.attr("transform",`translate(${a}, ${d})`);n.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",s).text(i);n.append("g").attr("class","railroad-start").append("circle").attr("cx",r).attr("cy",s).attr("r",this.config.markerRadius);return n.append("g").attr("class","railroad-end").append("circle").attr("cx",a+l.dimensions.width+10).attr("cy",s).attr("r",this.config.markerRadius),n.append("path").attr("class","railroad-line").attr("d",(new M).moveTo(r+this.config.markerRadius,s).lineTo(a,s).build()),n.append("path").attr("class","railroad-line").attr("d",(new M).moveTo(a+l.dimensions.width,s).lineTo(a+l.dimensions.width+10-this.config.markerRadius,s).build()),{height:Math.max(40,d+l.dimensions.height+2*this.config.padding),width:a+l.dimensions.width+10+this.config.markerRadius}}renderDiagram(e){let t=this.config.padding,n=0;for(const i of e){const e=this.renderRule(i,t);t+=e.height+this.config.verticalSeparation,n=Math.max(n,e.width)}return{width:n+2*this.config.padding,height:t+this.config.padding}}},D=(0,o.K)((e,t,n)=>{(0,r.a$)(e,t.height,t.width,n),e.attr("viewBox",`0 0 ${t.width} ${t.height}`)},"configureRailroadSvgSize"),B={draw:(0,o.K)((e,t,n)=>{a.R.debug("[Railroad] Rendering diagram\n"+e);try{const e=(0,i.D)(t);e.attr("class","railroad-diagram");const n=(0,r.zj)().railroad,o=n?.useMaxWidth??!0,l=f.getRules();if(a.R.debug(`[Railroad] Rendering ${l.length} rules`),0===l.length)return a.R.warn("[Railroad] No rules to render"),void D(e,{height:100,width:200},o);const s=new A(e,K()).renderDiagram(l);D(e,s,o),a.R.debug("[Railroad] Render complete")}catch(e){throw a.R.error("[Railroad] Render error:",e),e}},"draw")}},77454(e,t,n){function i(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}n.d(t,{S:()=>i}),(0,n(86827).K)(i,"populateCommonDb")}}]);