filecat 7.7.1 → 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.
- package/build/dist/1045.0e4bdc838c37771a7f50.js +1 -0
- package/build/dist/1075.493acb74297c1e753de2.js +1 -0
- package/build/dist/1128.b80776fbdbdda36034c3.js +1 -0
- package/build/dist/1388.1dcf844b452e3aae3dc0.js +1 -0
- package/build/dist/1671.fb137d27b5763953487e.js +1 -0
- package/build/dist/{6887.93191dae462af3692775.js → 1738.b8ab2bd79df131e60051.js} +1 -1
- package/build/dist/1802.e43e833638f6ba8e22d7.js +1 -0
- package/build/dist/1964.bd3d684b50aa5191b413.js +1 -0
- package/build/dist/200.bb7f6ce5543bd7ff6d97.js +1 -0
- package/build/dist/2105.e4ba1c1d506b3fe14e8e.js +1 -0
- package/build/dist/2122.bc10dcdbbfc38e0ef883.js +1 -0
- package/build/dist/{3457.18b45379d8bcf7f5f3b5.js → 2180.df641ebaead77c4ada71.js} +1 -1
- package/build/dist/2300.9e1baa1c0368abe53d96.js +2 -0
- package/build/dist/2479.15722ac55b05c521f4f7.js +1 -0
- package/build/dist/2572.8fdddfebb4da2f29dbd8.js +1 -0
- package/build/dist/259.81bb9e049e5ef587a96f.js +1 -0
- package/build/dist/2674.0c822a9c458f923a4eff.js +1 -0
- package/build/dist/{1001.44a1a25c7d6d3f294bf3.js → 2822.9417e764a14f8f5f57dc.js} +1 -1
- package/build/dist/2994.c492be0d907fa468a9be.js +1 -0
- package/build/dist/{3140.b078ec311f99170b7f4c.js → 3140.794a212da633caf38b3a.js} +2 -2
- package/build/dist/3230.7798ab546facfa058b34.js +1 -0
- package/build/dist/3233.fb6bffd5e097e4ac9423.js +1 -0
- package/build/dist/3283.9386fc7f67aef46604fb.js +1 -0
- package/build/dist/3299.d01f5a742d80f4e6e25b.js +1 -0
- package/build/dist/3300.b8a3bc571293a6280ed8.js +1 -0
- package/build/dist/{3402.d412940350051a52d7ac.js → 3402.b6dc28d2f9bace7cde85.js} +1 -1
- package/build/dist/3509.cbcb309fbf49db53229f.js +1 -0
- package/build/dist/{3727.b8d9cbae9de47bf8d49b.js → 3510.b975b8bfdee5e8518215.js} +1 -1
- package/build/dist/{587.c75ed69a8373139346f9.js → 3566.ba323afadcf41fad2fa7.js} +1 -1
- package/build/dist/3608.aff9429024b740ac5cd0.js +1 -0
- package/build/dist/3990.5e16453f57b90b01d539.js +1 -0
- package/build/dist/4004.de90f1192487a24a0a9a.js +1 -0
- package/build/dist/4061.c0eb5824eeb6a59fa827.js +1 -0
- package/build/dist/4220.b65b40382726a69ba0bc.js +1 -0
- package/build/dist/{3883.70d42c3a335d6833f07e.js → 4376.b022a792fb34fbe50398.js} +1 -1
- package/build/dist/4437.4d5a0965043471411a00.js +1 -0
- package/build/dist/4469.536491f90535e831ce3e.js +1 -0
- package/build/dist/453.8877eb10f13258c290bc.js +1 -0
- package/build/dist/4560.8ef2e4b60cc86d019dd6.js +1 -0
- package/build/dist/4735.838cd0f656bbf7d99ff6.js +1 -0
- package/build/dist/4772.9b95c402a4def0f576e3.js +1 -0
- package/build/dist/4985.44cb7d829ca477e368b8.js +1 -0
- package/build/dist/5516.645e4a900df9bdc1806c.js +1 -0
- package/build/dist/5526.6b4867751becda056ed8.js +1 -0
- package/build/dist/5614.fb6bffd5e097e4ac9423.js +1 -0
- package/build/dist/5617.8efc3b1d218f80df9b39.js +1 -0
- package/build/dist/5744.e9f1efb88a617b05b709.js +1 -0
- package/build/dist/583.cef46d6b21c6fa6454cf.js +1 -0
- package/build/dist/6089.6d5d19a327284ff3b11c.js +1 -0
- package/build/dist/6164.7dae9989dd129479f952.js +1 -0
- package/build/dist/6284.10deb80685728f50aa45.js +1 -0
- package/build/dist/629.b75b024aacc43e0d69cf.js +1 -0
- package/build/dist/6344.291e5dadc74e62739774.js +1 -0
- package/build/dist/6492.3ee4060598de873d8e8f.js +1 -0
- package/build/dist/6571.b381c44055704e3ba649.js +1 -0
- package/build/dist/6731.6763296ce5ae210bc0fe.js +1 -0
- package/build/dist/6759.f88b50c41207cb8345d1.js +1 -0
- package/build/dist/{4951.88718d978aea2dd40006.js → 6789.34921a30c8a81f0a6407.js} +1 -1
- package/build/dist/6800.ee99fd0a88b6acbaaf2c.js +1 -0
- package/build/dist/6803.fe4297b1e51c3bfc7f50.js +1 -0
- package/build/dist/{313.d51fc773856f078487ad.js → 6806.9ebf089eba60f3b8e946.js} +1 -1
- package/build/dist/7038.4e4fc8e405c56d3080e2.js +1 -0
- package/build/dist/7310.bf944d03f24fcf109680.js +1 -0
- package/build/dist/{359.1b95bd6368196ccaa731.js → 7430.25bf8437ad8f7c1fd36f.js} +1 -1
- package/build/dist/7483.5e26ada69b33418c31a8.js +1 -0
- package/build/dist/{4087.4796ff56340985c35542.js → 7486.fe0b5f867c08b40a3360.js} +1 -1
- package/build/dist/7567.09e1b34ad9bd3e463eb4.js +1 -0
- package/build/dist/7834.7a593dcb80ca09f58586.js +1 -0
- package/build/dist/784.48a3b71205680f427109.js +1 -0
- package/build/dist/7943.54c702542d55f576a576.js +1 -0
- package/build/dist/7954.6ce241a8ed27cb26efc6.js +1 -0
- package/build/dist/8079.f6f2be43e5d933ae1f6f.js +1 -0
- package/build/dist/8677.860320b7f36947e57d11.js +1 -0
- package/build/dist/8727.3628c746061aed7a4077.js +1 -0
- package/build/dist/9299.ed4de6cd4f4bfa0a966a.js +1 -0
- package/build/dist/9324.ef229da9b943484298ba.js +1 -0
- package/build/dist/9364.d2570d78afc50fe1b23e.js +1 -0
- package/build/dist/9463.2629a7daf4c2865b9b96.js +1 -0
- package/build/dist/index.html +1 -1
- package/build/dist/main.98bb29605335d9b2219f.js +2 -0
- package/build/main.js +1 -1
- package/build/threads.work.filecat.js +1 -1
- package/package.json +4 -5
- package/shell/config/webpack.web.config.js +2 -2
- package/build/dist/1075.3ef2e1902e9f7e9e37b1.js +0 -1
- package/build/dist/1312.199a506fb836a2412255.js +0 -1
- package/build/dist/136.e3bb3c50051edb17454d.js +0 -1
- package/build/dist/1478.c58a43bb24820a13eaed.js +0 -1
- package/build/dist/1491.901cce0168c42ad319fa.js +0 -1
- package/build/dist/1566.4f405afd26063b55129c.js +0 -1
- package/build/dist/161.98f6c2a50bf3824a6efb.js +0 -1
- package/build/dist/1654.a21a099e2749ef167ea9.js +0 -1
- package/build/dist/1875.46dd3a6cc071d45a32f1.js +0 -1
- package/build/dist/1883.14c90bbe93fe206906f0.js +0 -1
- package/build/dist/1924.c7bd2a2aa0e9bc78c9ba.js +0 -1
- package/build/dist/2000.f55ddba9e6313243f028.js +0 -1
- package/build/dist/2101.d4efa6a2c1e9169d9225.js +0 -1
- package/build/dist/2180.60fe32ab12c2fa1570a4.js +0 -1
- package/build/dist/2191.4c4f2fd5127168a81877.js +0 -1
- package/build/dist/2213.ceffb8fd7be66b35d079.js +0 -1
- package/build/dist/2463.6e530d1e9b5c58dba166.js +0 -1
- package/build/dist/2623.8b1e5e391dd4e05fc119.js +0 -1
- package/build/dist/2674.3713c09449bdd57b1066.js +0 -1
- package/build/dist/2894.8395ec5e280cc6b6c4dc.js +0 -1
- package/build/dist/3042.f490cfa4208208262398.js +0 -1
- package/build/dist/3096.d0b2c77a23418c545c01.js +0 -1
- package/build/dist/311.da79ace98b69a635c41c.js +0 -1
- package/build/dist/3166.088cf4a0356c3a6e30a0.js +0 -1
- package/build/dist/3233.80bcbba8a50c0f85ceee.js +0 -1
- package/build/dist/3357.4f1bf81ecc3c11a3f813.js +0 -1
- package/build/dist/3475.d10d21b637761d7d886d.js +0 -1
- package/build/dist/3708.04401b24d95214d641e5.js +0 -1
- package/build/dist/3752.01fc1f14b29f340e41fd.js +0 -1
- package/build/dist/3871.7a387a9dc21883d08423.js +0 -1
- package/build/dist/3994.19fb81947d65fc81b0a2.js +0 -1
- package/build/dist/4012.b516fdc981e55be2ebb2.js +0 -1
- package/build/dist/4122.9ea6b5dd8dc9d2265825.js +0 -1
- package/build/dist/4141.06960673a6a484e7b88d.js +0 -1
- package/build/dist/4190.ff72264b4f07f6542d33.js +0 -1
- package/build/dist/4239.1b49d7c26192fb637d57.js +0 -1
- package/build/dist/4288.8dc8f5d962720e084952.js +0 -1
- package/build/dist/434.04cdc2a05316f92d1d38.js +0 -1
- package/build/dist/4376.f3c60897f70dd4e33d2f.js +0 -1
- package/build/dist/4472.38816dfb835d527175d6.js +0 -1
- package/build/dist/4473.b42b37616f13be64199b.js +0 -1
- package/build/dist/449.3fd75e05da22fe1c5ecc.js +0 -1
- package/build/dist/452.4974390f4f4d991216e5.js +0 -1
- package/build/dist/4547.36b5848220c04c47bc80.js +0 -1
- package/build/dist/4605.ef0f4204b3bf3a18efa6.js +0 -1
- package/build/dist/4804.fbd0ffcf57d9dffc15b7.js +0 -1
- package/build/dist/482.0c7512372a1fbf61d704.js +0 -1
- package/build/dist/4963.22d7db9b376a42d3f00b.js +0 -1
- package/build/dist/5097.a0de16bf7b90a8b1157d.js +0 -1
- package/build/dist/5123.d9ed79af478b5cc4f1b2.js +0 -1
- package/build/dist/5332.8b6e85d8764e907a01d5.js +0 -1
- package/build/dist/536.660d866952b46ba53180.js +0 -1
- package/build/dist/548.d3d912d0c0c7e835e1dc.js +0 -1
- package/build/dist/5516.cc92dfbf06ddcd133dbc.js +0 -1
- package/build/dist/5590.585778da623ec71f7722.js +0 -1
- package/build/dist/5614.80bcbba8a50c0f85ceee.js +0 -1
- package/build/dist/5616.14df0fe505c4dadf4042.js +0 -1
- package/build/dist/5695.95dc69f3b02812eb9e93.js +0 -1
- package/build/dist/5697.6ac62f99ca19a979f1eb.js +0 -1
- package/build/dist/5741.237d817efc942de875e5.js +0 -1
- package/build/dist/5849.d26365d4b19533db6fd6.js +0 -1
- package/build/dist/5902.3969a79465383ff4bbb4.js +0 -1
- package/build/dist/5937.c3f14ccc441bfd06e13d.js +0 -1
- package/build/dist/5942.981e03467a3b2c653ab8.js +0 -1
- package/build/dist/6029.63e4beb66df7afc65a90.js +0 -1
- package/build/dist/6054.f91307b52046172fc5f8.js +0 -1
- package/build/dist/6089.0863a6a09be2b97e84e1.js +0 -1
- package/build/dist/6095.d845e356a4db8a241cdb.js +0 -1
- package/build/dist/6114.ca67e88c701691b3bb1e.js +0 -1
- package/build/dist/612.74d77e32957a5c6eb197.js +0 -1
- package/build/dist/625.d9e531476b3306e0b837.js +0 -1
- package/build/dist/6318.66541f9cef18d14ea3ea.js +0 -1
- package/build/dist/6455.5c950f6eb61015409eb6.js +0 -1
- package/build/dist/6527.436d2d5d81376e6a54ae.js +0 -1
- package/build/dist/6530.2f1b283a902603262048.js +0 -1
- package/build/dist/6610.b92f337fcc1b347350fb.js +0 -1
- package/build/dist/6926.2786af754adcdabfbede.js +0 -1
- package/build/dist/697.62f8b1ec6d2cd40ed316.js +0 -1
- package/build/dist/70.be2f9130c93c4175d12f.js +0 -1
- package/build/dist/7081.9e1e196fecfcccb4bfb9.js +0 -1
- package/build/dist/7128.3573ab2a5f28b79ba89e.js +0 -1
- package/build/dist/7163.ad09accaa87e565b8dc0.js +0 -1
- package/build/dist/72.a1d87dabb7f0615b3a21.js +0 -1
- package/build/dist/7229.50a1700104d1e4732735.js +0 -1
- package/build/dist/7332.d024ae75a3da2f7674a1.js +0 -1
- package/build/dist/7509.370c49d7ff43e289190c.js +0 -1
- package/build/dist/7514.dbf525bade6ffbd70af6.js +0 -2
- package/build/dist/7557.7d62939c56391a647067.js +0 -1
- package/build/dist/7588.2d840229f62de92b22e5.js +0 -1
- package/build/dist/7632.5660653552f755580adc.js +0 -1
- package/build/dist/7639.b3c6382de2fde652a40b.js +0 -1
- package/build/dist/779.91614fabf5c9eb3aafa0.js +0 -1
- package/build/dist/7810.979796e8a3aad6d4d72f.js +0 -1
- package/build/dist/7897.8b8070d6abe5c2327168.js +0 -1
- package/build/dist/7941.dbef0b0f412899800b13.js +0 -1
- package/build/dist/7953.5cd280effe2e967ea490.js +0 -1
- package/build/dist/7954.efecc100b407af204add.js +0 -1
- package/build/dist/7959.e31a21f28ff463d9d5e9.js +0 -1
- package/build/dist/8034.301f1099c4a7ce6c2829.js +0 -1
- package/build/dist/8080.e1c9af30bdd818b08c6e.js +0 -1
- package/build/dist/8087.6452b67614a0855535a4.js +0 -1
- package/build/dist/8140.bbccc589b007f9d410d1.js +0 -1
- package/build/dist/8162.e47cccbe327b26a2ea6f.js +0 -1
- package/build/dist/8177.d669c6337f8814781f49.js +0 -1
- package/build/dist/8322.56c8f4b4ad93b1a866c8.js +0 -1
- package/build/dist/8376.01a9f23ba06a78922364.js +0 -1
- package/build/dist/8433.e54d57e2cc9408e5e411.js +0 -1
- package/build/dist/8460.25f0859cb2266f764113.js +0 -1
- package/build/dist/8524.7945bff0063dc5c5903d.js +0 -1
- package/build/dist/8782.a5498372f1eb6bab41b7.js +0 -1
- package/build/dist/8953.23fe6fe13b28168428d3.js +0 -1
- package/build/dist/8964.bdf168262ab40956654a.js +0 -1
- package/build/dist/9003.69a0d15e722e1ed455b0.js +0 -1
- package/build/dist/9299.c2699815e5339e4045f8.js +0 -1
- package/build/dist/9385.2b1afe7b55d4c16f97ad.js +0 -1
- package/build/dist/9428.3176bab8f5780f060d51.js +0 -1
- package/build/dist/9456.506d55e351dec4f45566.js +0 -1
- package/build/dist/9465.8ff5871fb708cf7c1021.js +0 -1
- package/build/dist/9500.95d19d78b580734ec35e.js +0 -1
- package/build/dist/9512.03215278f26dc63c056d.js +0 -1
- package/build/dist/9614.cfdbe03d8e2960b0a53a.js +0 -1
- package/build/dist/9651.6bf3e34362f10c1aa35d.js +0 -1
- package/build/dist/9788.4a1c2f3626e532d3b44c.js +0 -1
- package/build/dist/9943.b62436bd9d0730c715a9.js +0 -1
- package/build/dist/9967.216bc8d26440bcbaf785.js +0 -1
- package/build/dist/9970.aa60aa700a790ba226f0.js +0 -1
- package/build/dist/main.401995af1fd441fa9164.js +0 -2
- /package/build/dist/{7514.dbf525bade6ffbd70af6.js.LICENSE.txt → 2300.9e1baa1c0368abe53d96.js.LICENSE.txt} +0 -0
- /package/build/dist/{3140.b078ec311f99170b7f4c.js.LICENSE.txt → 3140.794a212da633caf38b3a.js.LICENSE.txt} +0 -0
- /package/build/dist/{main.401995af1fd441fa9164.js.LICENSE.txt → main.98bb29605335d9b2219f.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[5849],{37703(t,e,n){n.d(e,{o:()=>i});var i=(0,n(27698).K)(()=>"\n /* Font Awesome icon styling - consolidated */\n .label-icon {\n display: inline-block;\n height: 1em;\n overflow: visible;\n vertical-align: -0.125em;\n }\n \n .node .label-icon path {\n fill: currentColor;\n stroke: revert;\n stroke-width: revert;\n }\n","getIconStyles")},45849(t,e,n){n.d(e,{diagram:()=>C});var i=n(23980),s=n(37703),r=n(83544),o=n(68741),a=n(26388),c=(n(92662),n(27280),n(56289),n(19831),n(73145),n(20886)),l=n(84828),h=n(27698),u=n(5097),g=n(78041),d=n(75263),p=function(){var t=(0,h.K)(function(t,e,n,i){for(n=n||{},i=t.length;i--;n[t[i]]=e);return n},"o"),e=[1,4],n=[1,13],i=[1,12],s=[1,15],r=[1,16],o=[1,20],a=[1,19],c=[6,7,8],l=[1,26],u=[1,24],g=[1,25],d=[6,7,11],p=[1,31],y=[6,7,11,24],f=[1,6,13,16,17,20,23],m=[1,35],b=[1,36],k=[1,6,7,11,13,16,17,20,23],_=[1,38],E={trace:(0,h.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},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,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:(0,h.K)(function(t,e,n,i,s,r,o){var a=r.length-1;switch(s){case 6:case 7:return i;case 8:i.getLogger().trace("Stop NL ");break;case 9:i.getLogger().trace("Stop EOF ");break;case 11:i.getLogger().trace("Stop NL2 ");break;case 12:i.getLogger().trace("Stop EOF2 ");break;case 15:i.getLogger().info("Node: ",r[a-1].id),i.addNode(r[a-2].length,r[a-1].id,r[a-1].descr,r[a-1].type,r[a]);break;case 16:i.getLogger().info("Node: ",r[a].id),i.addNode(r[a-1].length,r[a].id,r[a].descr,r[a].type);break;case 17:i.getLogger().trace("Icon: ",r[a]),i.decorateNode({icon:r[a]});break;case 18:case 23:i.decorateNode({class:r[a]});break;case 19:i.getLogger().trace("SPACELIST");break;case 20:i.getLogger().trace("Node: ",r[a-1].id),i.addNode(0,r[a-1].id,r[a-1].descr,r[a-1].type,r[a]);break;case 21:i.getLogger().trace("Node: ",r[a].id),i.addNode(0,r[a].id,r[a].descr,r[a].type);break;case 22:i.decorateNode({icon:r[a]});break;case 27:i.getLogger().trace("node found ..",r[a-2]),this.$={id:r[a-1],descr:r[a-1],type:i.getType(r[a-2],r[a])};break;case 28:this.$={id:r[a],descr:r[a],type:0};break;case 29:i.getLogger().trace("node found ..",r[a-3]),this.$={id:r[a-3],descr:r[a-1],type:i.getType(r[a-2],r[a])};break;case 30:this.$=r[a-1]+r[a];break;case 31:this.$=r[a]}},"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:n,7:[1,10],9:9,12:11,13:i,14:14,16:s,17:r,18:17,19:18,20:o,23:a},t(c,[2,3]),{1:[2,2]},t(c,[2,4]),t(c,[2,5]),{1:[2,6],6:n,12:21,13:i,14:14,16:s,17:r,18:17,19:18,20:o,23:a},{6:n,9:22,12:11,13:i,14:14,16:s,17:r,18:17,19:18,20:o,23:a},{6:l,7:u,10:23,11:g},t(d,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:o,23:a}),t(d,[2,19]),t(d,[2,21],{15:30,24:p}),t(d,[2,22]),t(d,[2,23]),t(y,[2,25]),t(y,[2,26]),t(y,[2,28],{20:[1,32]}),{21:[1,33]},{6:l,7:u,10:34,11:g},{1:[2,7],6:n,12:21,13:i,14:14,16:s,17:r,18:17,19:18,20:o,23:a},t(f,[2,14],{7:m,11:b}),t(k,[2,8]),t(k,[2,9]),t(k,[2,10]),t(d,[2,16],{15:37,24:p}),t(d,[2,17]),t(d,[2,18]),t(d,[2,20],{24:_}),t(y,[2,31]),{21:[1,39]},{22:[1,40]},t(f,[2,13],{7:m,11:b}),t(k,[2,11]),t(k,[2,12]),t(d,[2,15],{24:_}),t(y,[2,30]),{22:[1,41]},t(y,[2,27]),t(y,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:(0,h.K)(function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},"parseError"),parse:(0,h.K)(function(t){var e=this,n=[0],i=[],s=[null],r=[],o=this.table,a="",c=0,l=0,u=0,g=r.slice.call(arguments,1),d=Object.create(this.lexer),p={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(p.yy[y]=this.yy[y]);d.setInput(t,p.yy),p.yy.lexer=d,p.yy.parser=this,void 0===d.yylloc&&(d.yylloc={});var f=d.yylloc;r.push(f);var m=d.options&&d.options.ranges;function b(){var t;return"number"!=typeof(t=i.pop()||d.lex()||1)&&(t instanceof Array&&(t=(i=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,h.K)(function(t){n.length=n.length-2*t,s.length=s.length-t,r.length=r.length-t},"popStack"),(0,h.K)(b,"lex");for(var k,_,E,S,N,x,D,L,I,v={};;){if(E=n[n.length-1],this.defaultActions[E]?S=this.defaultActions[E]:(null==k&&(k=b()),S=o[E]&&o[E][k]),void 0===S||!S.length||!S[0]){var C="";for(x in I=[],o[E])this.terminals_[x]&&x>2&&I.push("'"+this.terminals_[x]+"'");C=d.showPosition?"Parse error on line "+(c+1)+":\n"+d.showPosition()+"\nExpecting "+I.join(", ")+", got '"+(this.terminals_[k]||k)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==k?"end of input":"'"+(this.terminals_[k]||k)+"'"),this.parseError(C,{text:d.match,token:this.terminals_[k]||k,line:d.yylineno,loc:f,expected:I})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+k);switch(S[0]){case 1:n.push(k),s.push(d.yytext),r.push(d.yylloc),n.push(S[1]),k=null,_?(k=_,_=null):(l=d.yyleng,a=d.yytext,c=d.yylineno,f=d.yylloc,u>0&&u--);break;case 2:if(D=this.productions_[S[1]][1],v.$=s[s.length-D],v._$={first_line:r[r.length-(D||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(D||1)].first_column,last_column:r[r.length-1].last_column},m&&(v._$.range=[r[r.length-(D||1)].range[0],r[r.length-1].range[1]]),void 0!==(N=this.performAction.apply(v,[a,l,c,p.yy,S[1],s,r].concat(g))))return N;D&&(n=n.slice(0,-1*D*2),s=s.slice(0,-1*D),r=r.slice(0,-1*D)),n.push(this.productions_[S[1]][0]),s.push(v.$),r.push(v._$),L=o[n[n.length-2]][n[n.length-1]],n.push(L);break;case 3:return!0}}return!0},"parse")},S=function(){return{EOF:1,parseError:(0,h.K)(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:(0,h.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,h.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,h.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 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: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=[s[0],s[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,h.K)(function(){return this._more=!0,this},"more"),reject:(0,h.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,h.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,h.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,h.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,h.K)(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,h.K)(function(t,e){var n,i,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))),(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 r in s)this[r]=s[r];return!1}return!1},"test_match"),next:(0,h.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 s=this._currentRules(),r=0;r<s.length;r++)if((n=this._input.match(this.rules[s[r]]))&&(!e||n[0].length>e[0].length)){if(e=n,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,s[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,s[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,h.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,h.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,h.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,h.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,h.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,h.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,h.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,h.K)(function(t,e,n,i){switch(n){case 0:return this.pushState("shapeData"),e.yytext="",24;case 1:return this.pushState("shapeDataStr"),24;case 2:return this.popState(),24;case 3:const n=/\n\s*/g;return e.yytext=e.yytext.replace(n,"<br/>"),24;case 4:return 24;case 5:case 10:case 29:case 32:this.popState();break;case 6:return t.getLogger().trace("Found comment",e.yytext),6;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;case 11:t.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return t.getLogger().trace("SPACELINE"),6;case 13:return 7;case 14:return 16;case 15:t.getLogger().trace("end icon"),this.popState();break;case 16:return t.getLogger().trace("Exploding node"),this.begin("NODE"),20;case 17:return t.getLogger().trace("Cloud"),this.begin("NODE"),20;case 18:return t.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;case 19:return t.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;case 20:case 21:case 22:case 23:return this.begin("NODE"),20;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 30:t.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return t.getLogger().trace("description:",e.yytext),"NODE_DESCR";case 33:return this.popState(),t.getLogger().trace("node end ))"),"NODE_DEND";case 34:return this.popState(),t.getLogger().trace("node end )"),"NODE_DEND";case 35:return this.popState(),t.getLogger().trace("node end ...",e.yytext),"NODE_DEND";case 36:case 39:case 40:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";case 37:case 38:return this.popState(),t.getLogger().trace("node end (-"),"NODE_DEND";case 41:case 42:return t.getLogger().trace("Long description:",e.yytext),21}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}}}();function N(){this.yy={}}return E.lexer=S,(0,h.K)(N,"Parser"),N.prototype=E,E.Parser=N,new N}();p.parser=p;var y=p,f=[],m=[],b=0,k={},_=(0,h.K)(()=>{f=[],m=[],b=0,k={}},"clear"),E=(0,h.K)(t=>{if(0===f.length)return null;const e=f[0].level;let n=null;for(let t=f.length-1;t>=0;t--)if(f[t].level!==e||n||(n=f[t]),f[t].level<e)throw new Error('Items without section detected, found section ("'+f[t].label+'")');return t===n?.level?null:n},"getSection"),S=(0,h.K)(function(){return m},"getSections"),N=(0,h.K)(function(){const t=[],e=S(),n=(0,c.D7)();for(const i of e){const e={id:i.id,label:(0,c.jZ)(i.label??"",n),labelType:"markdown",isGroup:!0,ticket:i.ticket,shape:"kanbanSection",level:i.level,look:n.look};t.push(e);const s=f.filter(t=>t.parentId===i.id);for(const e of s){const s={id:e.id,parentId:i.id,label:(0,c.jZ)(e.label??"",n),labelType:"markdown",isGroup:!1,ticket:e?.ticket,priority:e?.priority,assigned:e?.assigned,icon:e?.icon,shape:"kanbanItem",level:e.level,rx:5,ry:5,cssStyles:["text-align: left"]};t.push(s)}}return{nodes:t,edges:[],other:{},config:(0,c.D7)()}},"getData"),x=(0,h.K)((t,e,n,i,s)=>{const o=(0,c.D7)();let a=o.mindmap?.padding??c.UI.mindmap.padding;switch(i){case D.ROUNDED_RECT:case D.RECT:case D.HEXAGON:a*=2}const l={id:(0,c.jZ)(e,o)||"kbn"+b++,level:t,label:(0,c.jZ)(n,o),width:o.mindmap?.maxNodeWidth??c.UI.mindmap.maxNodeWidth,padding:a,isGroup:!1};if(void 0!==s){let t;t=s.includes("\n")?s+"\n":"{\n"+s+"\n}";const e=(0,r.H)(t,{schema:r.r});if(e.shape&&(e.shape!==e.shape.toLowerCase()||e.shape.includes("_")))throw new Error(`No such shape: ${e.shape}. Shape names should be lowercase.`);e?.shape&&"kanbanItem"===e.shape&&(l.shape=e?.shape),e?.label&&(l.label=e?.label),e?.icon&&(l.icon=e?.icon.toString()),e?.assigned&&(l.assigned=e?.assigned.toString()),e?.ticket&&(l.ticket=e?.ticket.toString()),e?.priority&&(l.priority=e?.priority)}const h=E(t);h?l.parentId=h.id||"kbn"+b++:m.push(l),f.push(l)},"addNode"),D={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},L={clear:_,addNode:x,getSections:S,getData:N,nodeType:D,getType:(0,h.K)((t,e)=>{switch(l.R.debug("In get type",t,e),t){case"[":return D.RECT;case"(":return")"===e?D.ROUNDED_RECT:D.CLOUD;case"((":return D.CIRCLE;case")":return D.CLOUD;case"))":return D.BANG;case"{{":return D.HEXAGON;default:return D.DEFAULT}},"getType"),setElementForId:(0,h.K)((t,e)=>{k[t]=e},"setElementForId"),decorateNode:(0,h.K)(t=>{if(!t)return;const e=(0,c.D7)(),n=f[f.length-1];t.icon&&(n.icon=(0,c.jZ)(t.icon,e)),t.class&&(n.cssClasses=(0,c.jZ)(t.class,e))},"decorateNode"),type2Str:(0,h.K)(t=>{switch(t){case D.DEFAULT:return"no-border";case D.RECT:return"rect";case D.ROUNDED_RECT:return"rounded-rect";case D.CIRCLE:return"circle";case D.CLOUD:return"cloud";case D.BANG:return"bang";case D.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),getLogger:(0,h.K)(()=>l.R,"getLogger"),getElementById:(0,h.K)(t=>k[t],"getElementById")},I={draw:(0,h.K)(async(t,e,n,s)=>{l.R.debug("Rendering kanban diagram\n"+t);const r=s.db.getData(),h=(0,c.D7)();h.htmlLabels=!1;const u=(0,i.D)(e);for(const t of r.nodes)t.domId=`${e}-${t.id}`;const g=u.append("g");g.attr("class","sections");const d=u.append("g");d.attr("class","items");const p=r.nodes.filter(t=>t.isGroup);let y=0;const f=[];let m=25;for(const t of p){const e=h?.kanban?.sectionWidth||200;y+=1,t.x=e*y+10*(y-1)/2,t.width=e,t.y=0,t.height=3*e,t.rx=5,t.ry=5,t.cssClasses=t.cssClasses+" section-"+y;const n=await(0,o.U)(g,t);m=Math.max(m,n?.labelBBox?.height),f.push(n)}let b=0;for(const t of p){const e=f[b];b+=1;const n=h?.kanban?.sectionWidth||200,i=3*-n/2+m;let s=i;const o=r.nodes.filter(e=>e.parentId===t.id);for(const e of o){if(e.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");e.x=t.x,e.width=n-15;const i=(await(0,a.on)(d,e,{config:h})).node().getBBox();e.y=s+i.height/2,await(0,a.U_)(e),s=e.y+i.height/2+5}const c=e.cluster.select("rect"),l=Math.max(s-i+30,50)+(m-25);c.attr("height",l)}(0,c.ot)(void 0,u,h.mindmap?.padding??c.UI.kanban.padding,h.mindmap?.useMaxWidth??c.UI.kanban.useMaxWidth)},"draw")},v=(0,h.K)(t=>{let e="";for(let e=0;e<t.THEME_COLOR_LIMIT;e++)t["lineColor"+e]=t["lineColor"+e]||t["cScaleInv"+e],(0,u.A)(t["lineColor"+e])?t["lineColor"+e]=(0,g.A)(t["lineColor"+e],20):t["lineColor"+e]=(0,d.A)(t["lineColor"+e],20);const n=(0,h.K)((e,n)=>t.darkMode?(0,d.A)(e,n):(0,g.A)(e,n),"adjuster");for(let i=0;i<t.THEME_COLOR_LIMIT;i++){const s=""+(17-3*i);e+=`\n .section-${i-1} rect, .section-${i-1} path, .section-${i-1} circle, .section-${i-1} polygon, .section-${i-1} path {\n fill: ${n(t["cScale"+i],10)};\n stroke: ${n(t["cScale"+i],10)};\n\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: ${s};\n }\n .section-${i-1} line {\n stroke: ${t["cScaleInv"+i]} ;\n stroke-width: 3;\n }\n\n .disabled, .disabled circle, .disabled text {\n fill: lightgray;\n }\n .disabled text {\n fill: #efefef;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${t.background};\n stroke: ${t.nodeBorder};\n stroke-width: 1px;\n }\n\n .kanban-ticket-link {\n fill: ${t.background};\n stroke: ${t.nodeBorder};\n text-decoration: underline;\n }\n `}return e},"genSections"),C={db:L,renderer:I,parser:y,styles:(0,h.K)(t=>`\n .edge {\n stroke-width: 3;\n }\n ${v(t)}\n .section-root rect, .section-root path, .section-root circle, .section-root polygon {\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 .cluster-label, .label {\n color: ${t.textColor};\n fill: ${t.textColor};\n }\n .kanban-label {\n dy: 1em;\n alignment-baseline: middle;\n text-anchor: middle;\n dominant-baseline: middle;\n text-align: center;\n }\n ${(0,s.o)()}\n`,"getStyles")}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[5902],{33395(e,t,n){n.d(t,{m:()=>o});var i=n(27698),o=class{constructor(e){this.init=e,this.records=this.init()}static{(0,i.K)(this,"ImperativeState")}reset(){this.records=this.init()}}},99051(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(27698).K)(i,"populateCommonDb")},35902(e,t,n){n.d(t,{diagram:()=>W});var i=n(33395),o=n(99051),r=n(23980),s=n(19831),c=n(73145),a=n(20886),d=n(84828),l=n(27698),h=n(63883),p=/[─━│┃└┗├┣]/,g=/[└┗├┣]/,f=/[─━]/,u=/^[\s│┃]+$/,w=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,x=/^\s*%%/;function m(e){return e.some(e=>p.test(e))}function b(e){for(const t of e){const e=g.exec(t);if(e?.index&&e.index>0)return e.index}return 4}function y(e,t){return e.replace(/\bline\s+(\d+)\b/gi,(e,n)=>{const i=parseInt(n,10),o=t.get(i);return o?`line ${o}`:e})}function k(e){const t=e.split("\n"),n=new Map;let i=-1;for(const[e,n]of t.entries())if("treeView-beta"===n.trim()){i=e;break}if(-1===i)return{text:e,lineMap:n};const o=[];for(let e=i+1;e<t.length;e++){const n=t[e];""===n.trim()||x.test(n)||w.test(n)||(u.test(n)||o.push(n.replace(/\t/g," ")))}if(!m(o))return{text:e,lineMap:n};const r=b(o),s=[];let c=0;for(let e=0;e<=i;e++)s.push(t[e]),c++,n.set(c,e+1);for(let e=i+1;e<t.length;e++){const i=t[e],o=e+1;if(""===i.trim()){s.push(i),c++,n.set(c,o);continue}if(x.test(i)){s.push(i),c++,n.set(c,o);continue}if(w.test(i)){s.push(i),c++,n.set(c,o);continue}if(u.test(i))continue;const a=i.replace(/\t/g," "),d=g.exec(a);if(void 0!==d?.index){const e=d.index,t=Math.round(e/r)+1;let i=e+1;for(;i<a.length&&f.test(a[i]);)i++;for(;i<a.length&&" "===a[i];)i++;const l=a.slice(i).trimEnd();if(!l)throw new Error(`Line ${o}: Empty node — expected a filename or directory name after the box-drawing prefix`);const h=" ".repeat(t);s.push(h+l),c++,n.set(c,o)}else{if(/^[\s─━│┃└┗├┣]+$/.test(a))continue;if(p.test(a))s.push(i),c++,n.set(c,o);else{if(/^\s+/.test(a))throw new Error(`Line ${o}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);s.push(i),c++,n.set(c,o)}}}return{text:s.join("\n"),lineMap:n}}(0,l.K)(m,"isBoxDrawingFormat"),(0,l.K)(b,"inferSegmentWidth"),(0,l.K)(y,"remapErrorLines"),(0,l.K)(k,"preprocessBoxDrawing");var $=new i.m(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),v=(0,l.K)(()=>{$.reset(),(0,a.IU)()},"clear"),C=(0,l.K)(()=>$.records.stack[0],"getRoot"),K=(0,l.K)(()=>$.records.cnt,"getCount"),V=a.UI.treeView,B=(0,l.K)(()=>(0,c.$t)(V,(0,a.zj)().treeView),"getConfig"),T={clear:v,addNode:(0,l.K)((e,t,n,i,o,r)=>{for(;e<=$.records.stack[$.records.stack.length-1].level;)$.records.stack.pop();const s={id:$.records.cnt++,level:e,name:t,nodeType:n,icon:o,cssClass:i,description:r,children:[]};$.records.stack[$.records.stack.length-1].children.push(s),$.records.stack.push(s)},"addNode"),getRoot:C,getCount:K,getConfig:B,getAccTitle:a.iN,getAccDescription:a.m7,getDiagramTitle:a.ab,setAccDescription:a.EI,setAccTitle:a.SV,setDiagramTitle:a.ke},I=(0,l.K)(e=>{(0,o.S)(e,T);for(const t of e.nodes){const e="number"==typeof t.indent?t.indent:0;let n=t.name;const i=n.endsWith("/");i&&(n=n.slice(0,-1));const o=i?"directory":"file",r=t.classAnnotation||void 0,s=t.iconAnnotation,c=void 0!==s?s||"none":void 0,d=t.descAnnotation||void 0,l=d?(0,a.jZ)(d,(0,a.zj)()):void 0;T.addNode(e,n,o,r,c,l)}},"populate"),M={parse:(0,l.K)(async e=>{const{text:t,lineMap:n}=k(e);try{const e=await(0,h.qg)("treeView",t);d.R.debug(e),I(e)}catch(e){throw n.size>0&&e instanceof Error&&(e.message=y(e.message,n)),e}},"parse")},D={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function A(e,t){const n=t?.filenameIcons?.[e];if(n)return n;const i=e.lastIndexOf(".");if(i>0){const n=e.substring(i).toLowerCase(),o=t?.extensionIcons;return o?.[n]??o?.[n.slice(1)]}}function E(e,t){return e.includes(":")?e:e in D.icons||!t?`${D.prefix}:${e}`:`${t}:${e}`}function S(e,t){if("none"!==e.icon){if(e.icon)return E(e.icon,t.defaultIconPack);if(t.showIcons){if("file"===e.nodeType){const n=A(e.name,t);if("none"===n)return;if(n)return E(n,t.defaultIconPack)}return`${D.prefix}:${"directory"===e.nodeType?"folder":"file"}`}}}(0,l.K)(A,"detectIcon"),(0,l.K)(E,"qualifyIcon"),(0,l.K)(S,"getNodeIcon"),(0,s.pC)([{name:D.prefix,icons:D}]);var z=(0,l.K)(async(e,t)=>{const n=[],i=(0,l.K)(e=>{const o=S(e,t);o&&n.push({icon:o,node:e}),e.children.forEach(i)},"collect");i(e);const o=await Promise.all(n.map(async({icon:e,node:t})=>({id:t.id,svg:await(0,s.WY)(e,{height:14,width:14})})));return new Map(o.map(({id:e,svg:t})=>[e,t]))},"resolveNodeIcons"),N=(0,l.K)((e,t,n,i,o,r)=>{const s=i.append("g");let c="treeView-node-label";"directory"===n.nodeType&&(c+=" treeView-node-dir"),n.cssClass&&(c+=` ${n.cssClass}`);const a=S(n,o),d=void 0!==a;a&&s.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${e+o.paddingX}, ${t+o.paddingY})`).html(r.get(n.id)??"");const l=s.append("text").text(n.name).attr("dominant-baseline","middle").attr("class",c),{height:h,width:p}=l.node().getBBox(),g=h+2*o.paddingY,f=e+o.paddingX+(d?18:0);l.attr("x",f),l.attr("y",t+g/2);const u=f+p,w=p+2*o.paddingX+(d?18:0);return n.BBox={x:e,y:t,width:w,height:g},n.cssClass?.split(/\s+/).includes("highlight")&&s.insert("rect",":first-child").attr("x",e).attr("y",t+1).attr("width",0).attr("height",g-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:n,nodeGroup:s,labelRightEdge:u,centerY:t+g/2}},"positionLabel"),R=(0,l.K)((e,t,n,i,o,r)=>e.append("line").attr("x1",t).attr("y1",n).attr("x2",i).attr("y2",o).attr("stroke-width",r).attr("class","treeView-node-line"),"positionLine"),X=(0,l.K)((e,t,n,i)=>{let o=0,r=0;const s=[],c=(0,l.K)((e,t,n,c)=>{const a=c*(n.rowIndent+n.paddingX),d=N(a,o,t,e,n,i);s.push(d);const{height:l,width:h}=t.BBox;R(e,a-n.rowIndent,o+l/2,a,o+l/2,n.lineThickness),r=Math.max(r,a+h),o+=l},"drawNode"),a=(0,l.K)((t,i=0)=>{c(e,t,n,i),t.children.forEach(e=>{a(e,i+1)});const{x:o,y:r,height:s}=t.BBox;if(t.children.length){const{y:i,height:c}=t.children[t.children.length-1].BBox;R(e,o+n.paddingX,r+s,o+n.paddingX,i+c/2+n.lineThickness/2,n.lineThickness)}},"processNode");a(t);const d=s.filter(e=>e.node.description);if(d.length>0){const e=Math.max(...s.map(e=>e.labelRightEdge))+16;for(const t of d){const i=t.nodeGroup.append("text").text(t.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",e).attr("y",t.centerY).node().getBBox();r=Math.max(r,e+i.width+n.paddingX)}}for(const e of s)if(e.node.cssClass?.split(/\s+/).includes("highlight")){const t=e.nodeGroup.select(".treeView-highlight-bg");if(!t.empty()){const n=r-e.node.BBox.x+8;t.attr("width",n),r=Math.max(r,e.node.BBox.x+n+2)}}return{totalHeight:o,totalWidth:r}},"drawTree"),L={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},W={db:T,renderer:{draw:(0,l.K)(async(e,t,n,i)=>{d.R.debug("Rendering treeView diagram\n"+e);const o=i.db,s=o.getRoot(),c=o.getConfig(),l=(0,r.D)(t),h=l.append("g");h.attr("class","tree-view");const p=await z(s,c),{totalHeight:g,totalWidth:f}=X(h,s,c,p);l.attr("viewBox",`-${c.lineThickness/2} 0 ${f} ${g}`),(0,a.a$)(l,g,f,c.useMaxWidth)},"draw")},parser:M,styles:(0,l.K)(({treeView:e})=>{const{labelFontSize:t,labelColor:n,lineColor:i,iconColor:o,descriptionColor:r,highlightBg:s,highlightStroke:a}=(0,c.$t)(L,e);return`\n .treeView-node-label {\n font-size: ${t};\n fill: ${n};\n white-space: pre;\n }\n .treeView-node-dir {\n font-weight: bold;\n }\n .treeView-node-line {\n stroke: ${i};\n }\n .treeView-node-icon {\n color: ${o};\n }\n .treeView-node-description {\n font-size: ${t};\n fill: ${r};\n font-style: italic;\n white-space: pre;\n }\n .treeView-highlight-bg {\n fill: ${s};\n stroke: ${a};\n stroke-width: 1;\n }\n `},"styles")}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[5937],{8694(e,t,a){a.d(t,{$K:()=>s,RB:()=>i,l5:()=>l,vo:()=>o,vr:()=>r});let n=function(e){return e[e.tcp=0]="tcp",e[e.udp=1]="udp",e}({});class s{open=!1;port;key="";async_ips=[]}class o{client_num_id;client_name;open=!1;ip;mask;serverIp;serverPort;key="";model=n.udp}let i=function(e){return e[e.row=1]="row",e[e.json=2]="json",e[e.form=3]="form",e}({});class r{body_type;header_type;url;method;headers;data;form_data_list;local_download_path}class l{enabled;ip;port;bypass;useForLocal;type}},75007(e,t,a){a.d(t,{h:()=>o});a(96540);var n=a(85997),s=a(74848);function o(e){return(0,s.jsxs)("h2",{className:"message",children:[(0,s.jsx)(n.In,{icon:"sentiment_dissatisfied"}),(0,s.jsx)("span",{children:e.context})]})}},47374(e,t,a){a.d(t,{e:()=>p});var n=a(96540),s=a(52671),o=a(64694),i=a(34289),r=a(61443),l=a(75725),c=a(22022),d=a(85997),u=a(74848);function p(e){let t=(0,s.zy)();const[a,p]=(0,n.useState)([]),[h,m]=(0,n.useState)("/"),[f,y]=(0,n.useState)(void 0),{t:_,i18n:v}=(0,c.Bd)();n.useEffect(()=>{let t="",a=(0,i.vX)().split("/");a=a.filter(e=>e);const n=a.indexOf(e.baseRoute),s=[];if(-1!=n){t=(0,o.IO)(a.slice(0,n),e.baseRoute);const i=a.slice(n+1);for(let e=0;e<i.length;e++){const a=i[e];s.push({value:a,href:0===e?`${t}${a}/`:(0,o.IO)(s[e-1].href,a)})}m(t),p(s)}},[t]);const x=t=>{t.stopPropagation(),e.clickFun(t)};return(0,u.jsx)("div",{className:"breadcrumbs",onClick:e=>{y(void 0!==f?void 0:"")},children:(0,u.jsx)(n.Fragment,{children:void 0===f?(0,u.jsxs)(n.Fragment,{children:[(0,u.jsx)("span",{className:"chevron",children:(0,u.jsx)(s.N_,{to:h,onClick:x,children:(0,u.jsx)(d.In,{icon:"home"})})}),a.map((e,t)=>(0,u.jsxs)("span",{className:"chevron",children:[(0,u.jsx)(d.In,{icon:"keyboard_arrow_right"}),(0,u.jsx)(s.N_,{to:e.href,onClick:x,children:decodeURIComponent(e.value)})]},t))]}):(0,u.jsx)(l.QM,{click:()=>{y(void 0)},children:(0,u.jsx)(r.Sm,{width:"100%",placeholder:_("输入跳转的目录"),handlerEnter:t=>{e.input_path_enter&&e.input_path_enter(t),y(void 0)}})})})})}},77481(e,t,a){a.d(t,{S:()=>r,X:()=>i});var n=a(96540),s=a(61443),o=a(74848);function i(e){const[t,a]=n.useState([]),i=(0,n.useRef)(-1),[r,l]=(0,n.useState)(-1),[c,d]=(0,n.useState)(-1);(0,n.useEffect)(()=>{e.children?a(Array.isArray(e.children)?e.children:[e.children]):a(e.rows)},[e.rows,e.children]);const u=()=>{i.current=-1,l(-1),d(-1)};return(0,o.jsxs)("table",{children:[(0,o.jsx)("thead",{children:(0,o.jsx)("tr",{children:e.headers?.map((t,a)=>{const n=!!e.filter&&(e.filter.column??0)===a;let i=t;if(n){const a=e.filter,n=a.options.find(e=>e.value===a.value);null!=a.value&&n&&(i=`${t} (${n.label})`)}return(0,o.jsx)("th",{className:n?"table-filter-col":"",children:n?(0,o.jsx)(s.l6,{value:e.filter.value,options:e.filter.options,onChange:e.filter.onChange,bare:!0,trigger_label:i}):t},a)})})}),(0,o.jsx)("tbody",{children:t.map((t,a)=>{const n=!!e.onRowDrag;return(0,o.jsx)("tr",{className:n?(r===a?"row-dragging":"")+(c===a?" row-drop-target":""):"",draggable:n,onContextMenu:()=>{e.handleContextMenu&&e.handleContextMenu(t)},onDragStart:e=>{n&&(i.current=a,l(a),e.dataTransfer.effectAllowed="move")},onDragOver:e=>{!n||i.current<0||(e.preventDefault(),e.dataTransfer.dropEffect="move",d(a))},onDrop:t=>{n&&(t.preventDefault(),(()=>{const t=i.current,a=c;u(),t<0||a<0||t===a||e.onRowDrag?.(t,a)})())},onDragEnd:u,children:t.map((a,n)=>{const s=n===t.length-1?"small":"";return(0,o.jsx)("td",{className:s,style:{width:e.width??"auto"},children:a},n)})},a)})})]})}function r(e){return(0,o.jsx)("div",{style:{display:e.isFlex?"flex":"block"},children:e.columns.map((e,t)=>(0,o.jsx)("div",{children:e},t))})}},83029(e,t,a){a.d(t,{N:()=>v});var n=a(96540),s=a(34843),o=a(82893),i=a(74848);function r(e){const[t,a]=(0,s.fp)(o.AG.user_base_info);return(0,i.jsx)("div",{children:e.div?(0,i.jsx)("div",{className:"nav_list_a",style:{background:e.color},children:e.name}):e.clickItem||"dir"===e._type?(0,i.jsx)("div",{className:"nav_list_a",style:{background:e.color},onClick:()=>{"dir"!==e._type?e.clickItem&&e.clickItem(e):e.click_dir(e.item)},children:e.name}):(0,i.jsx)("a",{href:e.url,target:e.target,className:"nav_list_a",style:{background:e.color},children:e.name})})}var l=a(64694),c=a(61443),d=a(85997),u=a(52671),p=a(22022);const h=["#ffffff","#fefff8","#fcfdf1","#d3d2dc","#f8f9fd","#ebf4fe","#ebebeb","#e8f7eb","#eaf2f9"];let m,f,y=[];const _=[];function v(e){const[t,a]=(0,n.useState)([]),[v,x]=(0,n.useState)(-1),g=(0,u.zy)(),[w,j]=(0,n.useState)(!1),[k,N]=(0,n.useState)(!1),{t:b}=(0,p.Bd)(),[K,S]=(0,n.useState)([]),[C,A]=(0,s.fp)(o.AG.nav_index_add_item_by_now_list),F=e=>{-1!==v?_[v]._children=e:y=e};(0,n.useEffect)(()=>{(async()=>{if(!e.getItems)return;const t=await e.getItems();y=t,a(y)})()},[g]);(0,n.useEffect)(()=>{if(C){const e=[...t,{name:"",color:(0,l.Lr)(h),...C}];F(e),a(e),j(!0),A(void 0)}},[C]);const D=e=>{x(v+1),a(e._children),_.push(e)};return(0,i.jsxs)("div",{className:"nav_list_div scroll-div-y",children:[-1!==v&&(0,i.jsx)(d.rA,{title:"返回",icon:"arrow_back",onClick:()=>{a(0===v?y:_[v-1]._children),x(v-1),_.pop()}}),t.map((s,o)=>(0,i.jsxs)("div",{draggable:!0,onDragOver:e=>{e.preventDefault()},onDragStart:e=>((e,t)=>{m=t})(0,o),onDrop:e=>((e,n)=>{e.preventDefault();const s=t[m],o=t[n];if(o&&"dir"===o._type){const e=[...t];return e.splice(m,1),o._children||(o._children=[]),o._children.push(s),F(e),void a(e)}const i=[...t],r=i[m];i.splice(m,1),i.splice(n,0,r),F(i),a(i)})(e,o),style:{cursor:w?"move":"pointer"},children:[(0,i.jsx)(r,{name:s.name,item:s,...s,div:w,target:"_blank",click_dir:D,clickItem:e.clickItem}),w&&(void 0!==K.find(e=>e===o)||k)&&(0,i.jsxs)("div",{className:k?"":" site_edit ",children:["dir"===s._type?(0,i.jsxs)(n.Fragment,{children:[(0,i.jsx)(c.Sm,{value:s.name,handleInputChange:e=>{s.name=e},placeholder:b("输入类目名"),no_border:!0}),(0,i.jsx)(c.Sm,{value:s.color,handleInputChange:e=>{s.color=e},placeholder:"color",no_border:!0})]}):e.items.map((e,t)=>(0,i.jsx)("div",{children:(0,i.jsx)(c.Sm,{value:s[e.key],handleInputChange:t=>{s[e.key]=t},placeholder:e.preName,no_border:!0})},t)),!k&&(0,i.jsx)(d.C3,{text:b("折叠"),clickFun:()=>{S((0,l.P1)(K,o))}})]}),w&&(0,i.jsx)("div",{style:{display:"block"},children:(0,i.jsxs)("span",{className:"div-row ",children:[(0,i.jsx)(d.C3,{text:b("删除"),clickFun:()=>{(e=>{const n=[...t];n.splice(e,1),F(n),a(n)})(o)}}),(0,i.jsx)(d.C3,{text:b("编辑"),clickFun:()=>{void 0===K.find(e=>e===o)&&S([...K,o])}})]})})]},o)),w&&(0,i.jsxs)("div",{style:{display:"block"},children:[(0,i.jsx)(d.rA,{title:b("取消"),icon:"cancel",onClick:()=>{S([]),j(!1),f&&(a(f),F(f)),N(!1)}}),(0,i.jsx)(d.rA,{title:b("添加"),icon:"add",onClick:async()=>{const n=[...t,{name:"",color:(0,l.Lr)(h),...e.get_pre_add_item&&await e.get_pre_add_item()}];F(n),a(n)}}),(0,i.jsx)(d.rA,{title:b("添加类目"),icon:"add_box",onClick:()=>{const e=[...t,{name:"",_type:"dir",_children:[],color:"#c1edfb"}];F(e),a(e)}}),(0,i.jsx)(d.rA,{title:b("全部编辑"),icon:k?"unfold_less":"unfold_more",onClick:()=>{N(!k)}})]}),(void 0===e.have_auth_edit||!0===e.have_auth_edit)&&(0,i.jsx)(d.rA,{icon:w?"save":"edit",title:b(w?"保存":"编辑"),onClick:async()=>{w?e.save&&await e.save(y):f=t,j(!w)}})]})}},15937(e,t,a){a.r(t),a.d(t,{default:()=>xe});var n=a(96540),s=a(70447),o=a(75725),i=a(61443),r=a(85997),l=a(4412),c=a(14284),d=a(53459),u=a(83029),p=a(22022),h=a(82893),m=a(34843),f=a(78247),y=a(23430),_=a(62042),v=a(21469),x=a(74848);const g="browser_proxy",w="browser_proxy_url";function j(e){const t=new URL(e),a=v.m.base_url||"",n=t.pathname+t.search+t.hash,s=encodeURIComponent(function(){try{return localStorage.getItem("token")||""}catch(e){return""}}());return`${a}/${g}/${s}/${t.protocol.replace(":","")}/${t.host}${n||"/"}`}function k(e){const t=`/${g}/`,a=e.indexOf(t);if(-1===a)return"";let n=e.slice(a+t.length);const s=n.indexOf("#"),o=-1===s?"":n.slice(s);-1!==s&&(n=n.slice(0,s));const i=n.indexOf("/");if(-1===i)return"";n=n.slice(i+1);const r=n.indexOf("/"),l=-1===r?n:n.slice(0,r),c=-1===r?"":n.slice(r+1),d=c.indexOf("/"),u=-1===d?c:c.slice(0,d),p=-1===d?"/":c.slice(d);return l&&u?`${l}://${u}${p}${o}`:""}function N(e){const{t}=(0,p.Bd)(),[a,s]=(0,m.fp)(h.AG.header_min),[v,g]=(0,n.useState)(""),[N,b]=(0,n.useState)(()=>{try{return sessionStorage.getItem(w)||""}catch{return""}}),[K,S]=(0,n.useState)(!1),{check_user_auth:C}=(0,f.MH)(),A=n.useRef(null);(0,n.useEffect)(()=>{try{N?sessionStorage.setItem(w,N):sessionStorage.removeItem(w)}catch(e){}},[N]),(0,n.useEffect)(()=>{N&&!v&&g(k(N))},[]);const F=e=>{const a="string"==typeof e?e:v;if(!a.startsWith("http"))return void(0,_.zN)(t("must start with http[s]://"));let n;try{n=j(a)}catch(e){return void(0,_.zN)(t("地址格式不正确"))}b(n)};return(0,x.jsxs)("div",{children:[(0,x.jsxs)(l.aZ,{position:"right",children:[(0,x.jsx)(i.$Z,{placeholder:t("要代理的url"),icon:"link",value:v,handleInputChange:e=>{g(e)}}),(0,x.jsx)(r.rA,{icon:"play_arrow",title:t("开始代理"),onClick:()=>F()}),N&&(0,x.jsx)(r.rA,{icon:"home",title:t("首页"),onClick:()=>{const e=k(N);if(e)try{const t=new URL(e);b(j(`${t.protocol}//${t.host}/`))}catch(e){}}}),N&&(0,x.jsx)(r.rA,{icon:"refresh",title:t("刷新"),onClick:()=>{try{A.current?.contentWindow?.location.reload()}catch(e){b(e=>e)}}}),N&&(0,x.jsx)(r.rA,{icon:"open_in_new",title:t("新窗口打开"),onClick:()=>{N&&window.open(N,"_blank")}}),(0,x.jsx)(r.rA,{icon:"fullscreen",title:t("全屏"),onClick:()=>{S(!K),s(!K)}}),(0,x.jsx)(r.rA,{icon:"close",title:t(t("关闭")),onClick:()=>{b(""),S(!1),g("");try{sessionStorage.removeItem(w)}catch(e){}}})]}),(0,x.jsx)(o.jW,{isFull:K,children:(0,x.jsxs)("div",{id:"browser",children:[!N&&(0,x.jsx)(u.N,{have_auth_edit:C(y.oV.browser_proxy_tag_update),getItems:async()=>{const e=await c._U.get("tag");return e.code===d.m.Success?e.data:[]},save:async e=>{(await c._U.post("tag/save",e)).code!==d.m.Success&&(0,_.zN)("网络错误")},clickItem:async e=>{g(e.url),F(e.url)},items:[{key:"name",preName:t("名字")},{key:"url",preName:"url"},{key:"color",preName:"color"}]}),N&&(0,x.jsx)("iframe",{id:"webview",ref:A,src:N,onLoad:()=>{try{const e=A.current?.contentWindow?.location.href;if(!e)return;const t=k(e);t&&(g(t),b(e))}catch(e){}}})]})})]})}var b=a(34289),K=(a(75007),a(97856)),S=a(92275),C=a(14944),A=a(64405);const F=n.lazy(()=>Promise.all([a.e(4924),a.e(5614)]).then(a.bind(a,85614)));function D(e){const[t,a]=(0,n.useState)(null),[s,o]=(0,m.fp)(h.AG.remoteShellShow),[i,r]=(0,n.useState)(!1),[l,c]=(0,m.fp)(h.AG.sshInfo),[d,u]=(0,m.fp)(h.AG.shellNowDir),[p,f]=(0,m.fp)(h.AG.user_base_info),y=p.user_data.theme?.includes("dark")?"#FFFFFF":"#000000",_=()=>{(async()=>{t&&(t.dispose(),a(null))})()};(0,n.useEffect)(()=>()=>{_()},[]),(0,n.useEffect)(()=>{s.show?t||((async()=>{const e=new K.Terminal({fontFamily:"Monaco, Menlo, Consolas, 'Courier New', monospace",theme:{background:"#FFFFFF",foreground:y,cursor:y,selectionBackground:"#a6d2ff"},cursorBlink:!0,cursorStyle:"bar",scrollback:1e3,scrollSensitivity:1,tabStopWidth:4});let t;const n=t=>{e.write(t)};t=a=>{e.clear(),e.write(a),t=n},C.ws.addMsg(S.HK.remote_shell_getting,e=>{t(e.context)}),e.onData(async e=>{const t=new A.x;t.key=l.key,t.cmd=e;const a=new S.hf(S.HK.remote_shell_send);a.context=t,await C.ws.send(a)}),a(e)})(),r(!0)):_()},[s]);return(0,x.jsx)(F,{show:s.show,terminal:t,init:(e,a)=>{t.writeln("[38;2;29;153;243mopen shell...[0m ");const n=new S.hf(S.HK.remote_shell_open),o=new A.x;o.key=l.key,o.init_path=s.path,o.rows=e,o.cols=a,n.context=o,C.ws.send(n)}})}var L=a(47374),I=a(52671),M=a(99214),B=a(47022),R=a(88815),E=a(6960),P=a(79240),$=a(83529),O=a(12730);function G(e){const{t}=(0,p.Bd)();(0,I.zy)();(0,I.Zp)();const{check_user_auth:a}=(0,f.MH)(),[s,o]=(0,m.fp)(h.AG.nowFileList),[i,l]=(0,m.fp)(h.AG.uploadFiles),[c,d]=(0,m.fp)(h.AG.showPrompt),[u,y]=(0,m.fp)(h.AG.selectedFileList),[v,g]=(0,m.fp)(h.AG.enterKey),[w,j]=(0,m.fp)(h.AG.copyedFileList),[k,N]=(0,m.fp)(h.AG.cutedFileList),[K,S]=(0,m.fp)(h.AG.selectedFileList),[C,A]=(0,m.fp)(h.AG.clickFileList),[F,D]=(0,m.fp)(h.AG.remoteShellShow),[L,R]=(0,m.fp)(h.AG.sshInfo),E=(0,M.Vs)();function P(e){(0,_.SK)(e)}return(0,x.jsxs)(n.Fragment,{children:[u.length>0&&(0,x.jsx)(r.rA,{icon:"delete",title:t("删除"),onClick:()=>{d({show:!0,type:$.PromptEnum.SshDelete,overlay:!0,data:{}})}}),u.length>0&&(0,x.jsx)(r.rA,{icon:"content_copy",title:t("复制"),onClick:function(){const e=(0,M.ib)(s,u);j(e.map(e=>`/${(0,b.GG)("remoteShell",(0,b.vX)())}${e.name}`)),N([]),P("已复制")}}),u.length>0&&(0,x.jsx)(r.rA,{icon:"content_cut",title:t("剪切"),onClick:function(){const e=(0,M.ib)(s,u);N(e.map(e=>`/${(0,b.GG)("remoteShell",(0,b.vX)())}${e.name}`)),j([]),P("已剪切")}}),(w.length>0||k.length>0)&&(0,x.jsx)(r.rA,{onClick:function(){d({show:!0,type:$.PromptEnum.SshPaste,overlay:!0,data:{}})},icon:"content_paste",title:t("粘贴到此处"),tip:w.length+k.length}),1===u.length&&s.files.length>=1&&(0,M.ib)(s,u)[0].type!==B.Iw.folder&&(0,x.jsx)(r.rA,{icon:"download",title:t("下载"),onClick:function(){const e=(0,M.ib)(s,u),t=`/api/ssh/download?file=${`/${(0,b.GG)("remoteShell",(0,b.vX)())}${decodeURIComponent(e[0].name)}`}&key=${L.key}&token=${localStorage.getItem("token")}`;window.open(t)}}),1===u.length&&(0,x.jsx)(r.rA,{icon:"edit_attributes",title:t("重命名"),onClick:function(){d({show:!0,type:$.PromptEnum.SshReName,overlay:!0,data:{}})}}),(0,x.jsx)(r.rA,{icon:"terminal",title:"shell",onClick:function(){F.show?D({show:!1,path:""}):D({show:!0,path:`/${(0,b.GG)("remoteShell",(0,b.vX)())}`})}}),(0,x.jsx)(r.rA,{icon:"grid_view",title:t("切换样式"),onClick:E}),(0,x.jsx)(r.rA,{icon:"create_new_folder",title:t("创建文件夹"),onClick:function(){d({show:!0,type:$.PromptEnum.SshNewDir,overlay:!0,data:{}})}}),(0,x.jsx)(r.rA,{icon:"note_add",title:t("创建文本文件"),onClick:function(){d({show:!0,type:$.PromptEnum.SshNewFile,overlay:!0,data:{}})}}),(0,x.jsx)(r.rA,{icon:"upload_file",title:"上传",onClick:()=>{d({show:!0,type:$.PromptEnum.UploadFile,overlay:!0,data:{call:e=>{let t=e.currentTarget?.files;if(!t)return;let a=!!t[0].webkitRelativePath;const n=[],s=new Set;for(let e=0;e<t.length;e++){const o=t[e],i=a?o.webkitRelativePath:`${o.webkitRelativePath}${o.name}`;o.fullPath=i,a&&s.add((0,O.S)(i)),n.push(o)}const o=[];if(a)for(const e of Array.from(s))o.push({isDir:!0,fullPath:e,name:e});o.push(...n),l(o),d({show:!0,type:$.PromptEnum.SshUpload,overlay:!1,data:{}})}}})}}),(0,x.jsx)(r.rA,{icon:"close",title:t("关闭"),onClick:()=>{e.close()}})]})}var H=a(60096),z=a(21499);let T;function U(e){const{t}=(0,p.Bd)(),a=(0,I.zy)(),[s,o]=(0,m.fp)(h.AG.nowFileList),[r,u]=(0,m.fp)(h.AG.selectedFileList),[f,v]=(0,m.fp)(h.AG.clickFileList),[g,w]=(0,m.fp)(h.AG.sshInfo),[j,k]=(0,n.useState)(""),N=(0,I.Zp)(),[K,S]=(0,m.fp)(h.AG.user_base_info),C=async e=>{const t=new A.x;t.key=g.key,t.dir=e||`/${(0,b.GG)("remoteShell",(0,b.vX)())}`;const a=await c.Fg.post("get/dir",t);if(a.code!==d.m.Success)return void(0,_.zN)("连接失败");const{folders:n,files:s}=a.data||{};for(const e of s??[])e.origin_size=e.size,e.size=(0,R.v7)(e.size),K.user_data.file_time_show_type===y.KD.time?e.show_mtime=e.mtime?(0,z.Yq)(e.mtime):"":e.show_mtime=e.mtime?(0,E.s)(e.mtime):"";for(const e of n??[])K.user_data.file_time_show_type===y.KD.time?e.show_mtime=e.mtime?(0,z.Yq)(e.mtime):"":e.show_mtime=e.mtime?(0,E.s)(e.mtime):"";const i={folders:n||[],files:s||[]};(0,M.yC)(i,K.user_data.dir_show_type),o(i),T=i};function F(){u([]),v([])}(0,n.useEffect)(()=>{F(),(async()=>{await C()})()},[a]);return(0,x.jsxs)(n.Fragment,{children:[(0,x.jsx)(l.aZ,{children:(0,x.jsx)(i.$Z,{handleEnterPress:()=>{if(!T)return;u([]),v([]);const e=[],t=[];for(const t of T.files??[])t.name.includes(j)&&e.push(t);for(const e of T.folders??[])e.name.includes(j)&&t.push(e);o({files:e,folders:t})},placeholder:t("搜索当前目录"),icon:"search",value:"",handleInputChange:e=>{k(e)},max_width:"25em"})}),(0,x.jsx)(l.aZ,{position:"right",children:(0,x.jsx)(G,{close:e.close})}),(0,x.jsx)(L.e,{baseRoute:"remoteShell",clickFun:F,input_path_enter:e=>{(0,P.Z1)(e)?C(e):N((0,P.Jn)((0,b.vX)(),e)),u([]),v([]),o({files:[],folders:[]})}}),(0,x.jsx)(H.Ic,{handleContextMenu:()=>{},clickBlank:e=>{e.target===e.currentTarget&&u([])},file_list:s.files,folder_list:s.folders,fileHandler:C}),(0,x.jsx)(D,{})]})}function Z(e){const{t}=(0,p.Bd)(),a=(0,I.Zp)(),[s,o]=(0,n.useState)(""),[v,g]=(0,n.useState)(""),[w,j]=(0,n.useState)(""),[k,N]=(0,n.useState)(""),[b,K]=(0,n.useState)(void 0),[S,C]=(0,n.useState)(""),[F,D]=(0,m.fp)(h.AG.shellNowDir),[L,M]=(0,m.fp)(h.AG.sshInfo),{check_user_auth:B}=(0,f.MH)(),R=async e=>{const t=new A.x;if(t.password=e?e.password:v,t.domain=e?e.domain:k,t.port=e?e.port:b,t.username=e?e.username:s,t.private_path=e?e.private_path:w,t.dir=e?e.dir:S,!t.dir)return void(0,_.zN)("dir not found");if(!t.username)return void(0,_.zN)("username not found");if(!t.domain)return void(0,_.zN)("domain not found");if(!t.port)return void(0,_.zN)("port not found");if(!t.private_path&&!t.password)return void(0,_.zN)("private_path password not found");const n=await c.Fg.post("start",t);n&&n.code===d.m.Success&&(a((0,P.Jn)("/proxy/remoteShell",t.dir)),D([t.dir]),M(n.data))};return(0,x.jsxs)(n.Fragment,{children:[!L.key&&(0,x.jsxs)(l.aZ,{position:"right",children:[(0,x.jsx)(i.$Z,{placeholder:t("目录"),icon:"home",value:S,handleInputChange:e=>C(e),max_width:"15rem"}),(0,x.jsx)(i.$Z,{placeholder:t("账号"),icon:"verified_user",value:s,handleInputChange:e=>o(e),max_width:"15rem"}),(0,x.jsx)(i.$Z,{type:"password",placeholder:t("密码"),icon:"password",value:v,handleInputChange:e=>g(e),max_width:"15rem"}),(0,x.jsx)(i.$Z,{placeholder:t("私钥路径"),icon:"private_connectivity",value:w,handleInputChange:e=>j(e),max_width:"15rem"}),(0,x.jsx)(i.$Z,{placeholder:t("连接地址"),icon:"location_on",value:k,handleInputChange:e=>{N(e)},max_width:"15rem"}),(0,x.jsx)(i.$Z,{placeholder:t("端口"),icon:"outlet",value:b,handleInputChange:e=>{if(!e)return;/^\d+$/.test(e)||(0,_.zN)("不是数字"),K(parseInt(e))},max_width:"7rem"}),(0,x.jsx)(r.rA,{icon:"play_arrow",title:t("连接"),onClick:()=>{R()}})]}),L.key?(0,x.jsx)(U,{close:async()=>{const e=new A.x;e.key=L.key;await c.Fg.post("close",e);M({})},data:{port:b,password:v,username:s,domain:k,dir:S}}):(0,x.jsx)(u.N,{have_auth_edit:B(y.oV.ssh_proxy_tag_update),getItems:async()=>{const e=await c.Fg.get("tag");return e.code===d.m.Success?e.data:[]},save:async e=>{await c.Fg.post("tag/save",e)},clickItem:async e=>{N(e.domain),C(e.dir),K(e.port),o(e.username),g(e.password),j(e.private_path),await R(e)},items:[{key:"name",preName:t("名字")},{key:"domain",preName:t("地址")},{key:"port",preName:t("端口")},{key:"username",preName:t("账号")},{key:"password",preName:t("密码")},{key:"private_path",preName:t("私钥路径")},{key:"dir",preName:t("访问目录")},{key:"color",preName:"color"}]})]})}function V(e){switch(e){case 0:return 1;case 2:return 2;default:return 0}}class J{constructor(e){this.canvas=e,this.render=new ee.Canvas.create(this.canvas),this.activeSession=!1,this.install()}close(){this.activeSession=!1}install(){var e=this;return this.canvas.addEventListener("mousemove",function(t){var a=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.mouse,{x:t.clientX-a.left,y:t.clientY-a.top,button:0,isPressed:!1}),t.preventDefault||e.activeSession(),!1}),this.canvas.addEventListener("mousedown",function(t){var a=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.mouse,{x:t.clientX-a.left,y:t.clientY-a.top,button:V(t.button),isPressed:!0}),t.preventDefault(),!1}),this.canvas.addEventListener("mouseup",function(t){if(e.activeSession){var a=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.mouse,{x:t.clientX-a.left,y:t.clientY-a.top,button:V(t.button),isPressed:!1}),t.preventDefault(),!1}}),this.canvas.addEventListener("contextmenu",function(t){if(e.activeSession){var a=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.mouse,{x:t.clientX-a.left,y:t.clientY-a.top,button:V(t.button),isPressed:!1}),t.preventDefault(),!1}}),this.canvas.addEventListener("DOMMouseScroll",function(t){if(e.activeSession){var a=t.detail,n=Math.round(15*Math.abs(a)/8),s=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.wheel,{x:t.clientX-s.left,y:t.clientY-s.top,step:n,isNegative:a>0,isHorizontal:!1}),t.preventDefault(),!1}}),this.canvas.addEventListener("mousewheel",function(t){if(e.activeSession){var a=Math.abs(t.deltaX)>Math.abs(t.deltaY),n=a?t.deltaX:t.deltaY,s=Math.round(15*Math.abs(n)/8),o=ee.elementOffset(e.canvas);return C.ws.sendData(S.HK.wheel,{x:t.clientX-o.left,y:t.clientY-o.top,step:s,isNegative:n>0,isHorizontal:a}),t.preventDefault(),!1}}),window.addEventListener("keydown",function(t){if(e.activeSession)return C.ws.sendData(S.HK.scancode,{code:ee.scancode(t),isPressed:!0}),t.preventDefault(),!1}),window.addEventListener("keyup",function(t){if(e.activeSession)return C.ws.sendData(S.HK.scancode,{code:ee.scancode(t),isPressed:!1}),t.preventDefault(),!1}),this}connect(e,t,a,n,s,o){var i=this;C.ws.addMsg(S.HK.rdp_connect,e=>{console.log("[mstsc.js] connected"),i.activeSession=!0}),C.ws.addMsg(S.HK.rdp_bitmap,e=>{const t=e.context;t.data=e.bin_context,i.render.update(t)}),C.ws.addMsg(S.HK.rdp_close,e=>{o(null),console.log("[mstsc.js] close"),i.activeSession=!1}),C.ws.addMsg(S.HK.rdp_error,e=>{i.activeSession=!1});const r=new S.hf;r.cmdType=S.HK.infos,r.context={ip:e.indexOf(":")>-1?e.split(":")[0]:e,port:a,screen:{width:this.canvas.width,height:this.canvas.height},domain:t,username:n,password:s,locale:ee.locale()},C.ws.send(r)}}class X{constructor(e){this.canvas=e,this.ctx=e.getContext("2d")}update(e){var t=null;t=e.isCompress?function(e){var t=null;switch(e.bitsPerPixel){case 15:t="bitmap_decompress_15";break;case 16:t="bitmap_decompress_16";break;case 24:t="bitmap_decompress_24";break;case 32:t="bitmap_decompress_32";break;default:throw"invalid bitmap data format"}var a=new Uint8Array(e.data),n=Module._malloc(a.length),s=new Uint8Array(Module.HEAPU8.buffer,n,a.length);s.set(a);var o=e.destRight-e.destLeft+1,i=e.destBottom-e.destTop+1,r=o*i*4,l=Module._malloc(r),c=new Uint8Array(Module.HEAPU8.buffer,l,r),d=(Module.ccall(t,"number",["number","number","number","number","number","number","number","number"],[c.byteOffset,o,i,e.width,e.height,s.byteOffset,a.length]),new Uint8ClampedArray(c.buffer,c.byteOffset,r));return Module._free(n),Module._free(l),{width:o,height:i,data:d}}(e):function(e){return{width:e.width,height:e.height,data:new Uint8ClampedArray(e.data)}}(e);var a=this.ctx.createImageData(t.width,t.height);a.data.set(t.data),this.ctx.putImageData(a,e.destLeft,e.destTop)}}var Y={"":0,Escape:1,Digit1:2,Digit2:3,Digit3:4,Digit4:5,Digit5:6,Digit6:7,Digit7:8,Digit8:9,Digit9:10,Digit0:11,Minus:12,Equal:13,Backspace:14,Tab:15,KeyQ:16,KeyW:17,KeyE:18,KeyR:19,KeyT:20,KeyY:21,KeyU:22,KeyI:23,KeyO:24,KeyP:25,BracketLeft:26,BracketRight:27,Enter:28,ControlLeft:29,KeyA:30,KeyS:31,KeyD:32,KeyF:33,KeyG:34,KeyH:35,KeyJ:36,KeyK:37,KeyL:38,Semicolon:39,Quote:40,Backquote:41,ShiftLeft:42,Backslash:43,KeyZ:44,KeyX:45,KeyC:46,KeyV:47,KeyB:48,KeyN:49,KeyM:50,Comma:51,Period:52,Slash:53,ShiftRight:54,NumpadMultiply:55,AltLeft:56,Space:57,CapsLock:58,F1:59,F2:60,F3:61,F4:62,F5:63,F6:64,F7:65,F8:66,F9:67,F10:68,Pause:69,ScrollLock:70,Numpad7:71,Numpad8:72,Numpad9:73,NumpadSubtract:74,Numpad4:75,Numpad5:76,Numpad6:77,NumpadAdd:78,Numpad1:79,Numpad2:80,Numpad3:81,Numpad0:82,NumpadDecimal:83,PrintScreen:84,IntlBackslash:86,F11:87,F12:88,NumpadEqual:89,F13:100,F14:101,F15:102,F16:103,F17:104,F18:105,F19:106,F20:107,F21:108,F22:109,F23:110,KanaMode:112,Lang2:113,Lang1:114,IntlRo:115,F24:118,Convert:121,NonConvert:123,IntlYen:125,NumpadComma:126,MediaTrackPrevious:57360,MediaTrackNext:57369,NumpadEnter:57372,ControlRight:57373,VolumeMute:57376,LaunchApp2:57377,MediaPlayPause:57378,MediaStop:57380,VolumeDown:57390,VolumeUp:57392,BrowserHome:57394,NumpadDivide:57397,PrintScreen:57399,AltRight:57400,NumLock:57413,Pause:57414,Home:57415,ArrowUp:57416,PageUp:57417,ArrowLeft:57419,ArrowRight:57421,End:57423,ArrowDown:57424,PageDown:57425,Insert:57426,Delete:57427,OSLeft:57435,OSRight:57436,ContextMenu:57437,Power:57438,BrowserSearch:57445,BrowserFavorites:57446,BrowserRefresh:57447,BrowserStop:57448,BrowserForward:57449,BrowserBack:57450,LaunchApp1:57451,LaunchMail:57452,MediaSelect:57453},W={27:"Escape",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",192:"Backquote",49:"Digit1",50:"Digit2",51:"Digit3",52:"Digit4",53:"Digit5",54:"Digit6",55:"Digit7",56:"Digit8",57:"Digit9",48:"Digit0",173:"Minus",61:"Equal",8:"Backspace",9:"Tab",81:"KeyQ",87:"KeyW",69:"KeyE",82:"KeyR",84:"KeyT",89:"KeyY",85:"KeyU",73:"KeyI",79:"KeyO",80:"KeyP",219:"BracketLeft",221:"BracketRight",13:"Enter",20:"CapsLock",65:"KeyA",83:"KeyS",68:"KeyD",70:"KeyF",71:"KeyG",72:"KeyH",74:"KeyJ",75:"KeyK",76:"KeyL",59:"Semicolon",222:"Quote",220:"Backslash",16:"ShiftLeft",220:"IntlBackslash",90:"KeyZ",88:"KeyX",67:"KeyC",86:"KeyV",66:"KeyB",78:"KeyN",77:"KeyM",188:"Comma",190:"Period",191:"Slash",16:"ShiftRight",17:"ControlLeft",18:"AltLeft",91:"OSLeft",32:"Space",18:"AltRight",91:"OSRight",93:"ContextMenu",17:"ControlRight",37:"ArrowLeft",38:"ArrowUp",40:"ArrowDown",39:"ArrowRight",144:"NumLock",144:"NumLock",111:"NumpadDivide",106:"NumpadMultiply",109:"NumpadSubtract",103:"Numpad7",104:"Numpad8",105:"Numpad9",107:"NumpadAdd",100:"Numpad4",101:"Numpad5",102:"Numpad6",97:"Numpad1",98:"Numpad2",99:"Numpad3",13:"NumpadEnter",96:"Numpad0",110:"NumpadDecimal",17:"ControlLeft"},q={firefox:{fr:{27:"Escape",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",0:"Backquote",49:"Digit1",50:"Digit2",51:"Digit3",52:"Digit4",53:"Digit5",54:"Digit6",55:"Digit7",56:"Digit8",57:"Digit9",48:"Digit0",169:"Minus",61:"Equal",8:"Backspace",9:"Tab",65:"KeyQ",90:"KeyW",69:"KeyE",82:"KeyR",84:"KeyT",89:"KeyY",85:"KeyU",73:"KeyI",79:"KeyO",80:"KeyP",160:"BracketLeft",164:"BracketRight",13:"Enter",20:"CapsLock",20:"CapsLock",81:"KeyA",83:"KeyS",68:"KeyD",70:"KeyF",71:"KeyG",72:"KeyH",74:"KeyJ",75:"KeyK",76:"KeyL",77:"Semicolon",165:"Quote",170:"Backslash",16:"ShiftLeft",60:"IntlBackslash",87:"KeyZ",88:"KeyX",67:"KeyC",86:"KeyV",66:"KeyB",78:"KeyN",188:"KeyM",59:"Comma",58:"Period",161:"Slash",16:"ShiftRight",17:"ControlLeft",91:"OSLeft",18:"AltLeft",32:"Space",17:"ControlLeft",18:"AltRight",91:"OSRight",93:"ContextMenu",17:"ControlRight",37:"ArrowLeft",38:"ArrowUp",40:"ArrowDown",39:"ArrowRight",144:"NumLock",144:"NumLock",111:"NumpadDivide",106:"NumpadMultiply",109:"NumpadSubtract",103:"Numpad7",104:"Numpad8",105:"Numpad9",107:"NumpadAdd",100:"Numpad4",101:"Numpad5",102:"Numpad6",97:"Numpad1",98:"Numpad2",99:"Numpad3",96:"Numpad0",110:"NumpadDecimal",13:"NumpadEnter",17:"ControlLeft",67:"KeyC",17:"ControlLeft"},en:W},chrome:{fr:{27:"Escape",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",0:"Backquote",49:"Digit1",50:"Digit2",51:"Digit3",52:"Digit4",53:"Digit5",54:"Digit6",55:"Digit7",56:"Digit8",57:"Digit9",48:"Digit0",219:"Minus",187:"Equal",8:"Backspace",9:"Tab",65:"KeyQ",90:"KeyW",69:"KeyE",82:"KeyR",84:"KeyT",89:"KeyY",85:"KeyU",73:"KeyI",79:"KeyO",80:"KeyP",221:"BracketLeft",186:"BracketRight",13:"Enter",20:"CapsLock",20:"CapsLock",81:"KeyA",83:"KeyS",68:"KeyD",70:"KeyF",71:"KeyG",72:"KeyH",74:"KeyJ",75:"KeyK",76:"KeyL",77:"Semicolon",192:"Quote",220:"Backslash",16:"ShiftLeft",60:"IntlBackslash",87:"KeyZ",88:"KeyX",67:"KeyC",86:"KeyV",66:"KeyB",78:"KeyN",188:"KeyM",190:"Comma",191:"Period",223:"Slash",16:"ShiftRight",17:"ControlLeft",91:"OSLeft",18:"AltLeft",32:"Space",17:"ControlLeft",18:"AltRight",91:"OSRight",93:"ContextMenu",17:"ControlRight",37:"ArrowLeft",38:"ArrowUp",40:"ArrowDown",39:"ArrowRight",144:"NumLock",144:"NumLock",111:"NumpadDivide",106:"NumpadMultiply",109:"NumpadSubtract",103:"Numpad7",104:"Numpad8",105:"Numpad9",107:"NumpadAdd",100:"Numpad4",101:"Numpad5",102:"Numpad6",97:"Numpad1",98:"Numpad2",99:"Numpad3",96:"Numpad0",110:"NumpadDecimal",13:"NumpadEnter",17:"ControlLeft",67:"KeyC",17:"ControlLeft"},en:W}};function Q(){}Q.prototype={$:function(e){return document.getElementById(e)},elementOffset:function(e){for(var t=0,a=0;e&&!isNaN(e.offsetLeft)&&!isNaN(e.offsetTop);)t+=e.offsetLeft-e.scrollLeft,a+=e.offsetTop-e.scrollTop,e=e.offsetParent;return{top:a,left:t}},browser:function(){return"undefined"!=typeof InstallTrigger?"firefox":window.chrome?"chrome":document.docuemntMode?"ie":null},locale:function(){return window.navigator.userLanguage||window.navigator.language},client:{create:function(e){return new J(e)}},Canvas:{create:function(e){return new X(e)}},scancode(e){var t=Q.prototype.locale();return t=["fr","en"].indexOf(t)>0&&t||"en",Y[e.code||q[Q.prototype.browser()||"firefox"][t][e.keyCode]]}};let ee=new Q;var te=a(38240);let ae;function ne(){const{t:e}=(0,p.Bd)(),[t,a]=(0,m.fp)(h.AG.header_min),{check_user_auth:s}=(0,f.MH)(),[v,g]=(0,n.useState)(void 0),[w,j]=(0,n.useState)(3389),[k,N]=(0,n.useState)(void 0),[b,K]=(0,n.useState)(void 0),[A,F]=(0,n.useState)(!1),[D,L]=(0,n.useState)(!1);var I=null;(0,n.useEffect)(()=>(ae||(async()=>{try{await(0,te.J)("rle.js"),ae=!0}catch(e){return void(0,_.zN)("加载资源失败")}})(),()=>{I&&(I.close(),I=null)}),[]);const M=t=>{L(!0),function(n,s,o,i){if(n=n||t.address,o=o||t.username,i=i||t.password,!n||!o)return(0,_.zN)(e("ip或者账号不允许为空")),void L(!1);!function(e){I||(I=ee.client.create(ee.$(e)))}("rdpwebview");var r=ee.$("rdpwebview");r.style.display="inline",r.width=window.innerWidth,r.height=window.innerHeight,F(!0),a(!0),I.connect(n,"",s,o,i,function(e){ee.$("rdpwebview").style.display="none",a(!1),L(!1),F(!1)})}(v,w,k,b)};return(0,x.jsxs)("div",{children:[(0,x.jsxs)(l.aZ,{position:"right",children:[(0,x.jsx)(i.$Z,{placeholder:e("地址"),icon:"network_ping",value:v,max_width:"15rem",handleInputChange:e=>g(e)}),(0,x.jsx)(i.$Z,{placeholder:e("端口"),icon:"outlet",value:w,max_width:"10rem",handleInputChange:e=>{e&&j(parseInt(e))}}),(0,x.jsx)(i.$Z,{placeholder:e("账号"),icon:"manage_accounts",value:k,max_width:"15rem",handleInputChange:e=>N(e)}),(0,x.jsx)(i.$Z,{placeholder:e("密码"),icon:"password",value:b,max_width:"15rem",handleInputChange:e=>K(e)}),!D&&(0,x.jsx)(r.rA,{icon:"play_arrow",title:e("连接"),onClick:M}),D&&(0,x.jsx)(r.rA,{icon:"close",title:e("关闭"),onClick:async()=>{F(!1),await C.ws.sendData(S.HK.rdp_disconnect,"");var e=ee.$("rdpwebview");e.getContext("2d").clearRect(0,0,e.width,e.height),ee.$("rdpwebview").style.display="none",L(!1),a(!1)}})]}),(0,x.jsxs)(o.jW,{isFull:A,children:[!D&&(0,x.jsx)(u.N,{have_auth_edit:s(y.oV.rdp_proxy_tag_update),getItems:async()=>{const e=await c.J0.get("tag");return e.code===d.m.Success?e.data:[]},save:async e=>{(await c.J0.post("tag/save",e)).code!==d.m.Success&&(0,_.zN)("网络错误")},clickItem:async e=>{K(e.password),N(e.username),g(e.address),j(e.port),M(e)},items:[{key:"name",preName:e("名字")},{key:"address",preName:e("地址")},{key:"port",preName:e("端口")},{key:"username",preName:e("账号")},{key:"password",preName:e("密码")},{key:"color",preName:"color"}]}),(0,x.jsx)("canvas",{id:"rdpwebview",style:{display:"none"}})]})]})}var se=a(77481),oe=a(40505),ie=a(8694),re=a(67331);const le=(0,n.createContext)({activeKey:"",setActiveKey:()=>{}});function ce(e){const{children:t,activeKey:a,defaultActiveKey:s,onChange:o,width:i}=e,[r,l]=(0,n.useState)(()=>a??s??"");(0,n.useEffect)(()=>{void 0!==a&&l(a)},[a]);const c=e=>{void 0===a&&l(e),o&&o(e)},d=[];return n.Children.forEach(t,e=>{n.isValidElement(e)&&e.type===de&&d.push({key:e.props.itemKey,tab:e.props.tab,disabled:e.props.disabled})}),(0,n.useEffect)(()=>{!r&&d.length>0&&l(d[0].key)},[d,r]),(0,x.jsx)(le.Provider,{value:{activeKey:r,setActiveKey:c},children:(0,x.jsxs)("div",{className:"modern-tabs-container",style:{width:i||"100%"},children:[(0,x.jsx)("div",{className:"modern-tabs-nav",children:d.map(e=>{const t=["modern-tabs-tab",r===e.key?"active":"",e.disabled?"disabled":""].filter(Boolean).join(" ");return(0,x.jsx)("div",{className:t,onClick:()=>!e.disabled&&c(e.key),children:e.tab},e.key)})}),(0,x.jsx)("div",{className:"modern-tabs-content",children:t})]})})}function de(e){const{itemKey:t,children:a}=e,{activeKey:s}=(0,n.useContext)(le),o=s===t;return(0,x.jsx)("div",{className:"modern-tab-panel "+(o?"active":""),children:a})}const ue=n.lazy(()=>Promise.all([a.e(2543),a.e(4091)]).then(a.bind(a,84091)));let pe,he,me,fe;function ye(){const{t:e}=(0,p.Bd)(),[t,a]=(0,m.fp)(h.AG.confirm),[l,v]=(0,m.fp)(h.AG.showPrompt),{check_user_auth:g}=(0,f.MH)(),[w,j]=(0,n.useState)(""),[k,N]=(0,m.fp)(h.AG.router_jump),[b,K]=(0,n.useState)("get"),[A,F]=(0,n.useState)(""),[D,L]=(0,n.useState)(void 0),[I,M]=(0,n.useState)([]),[B,E]=(0,n.useState)([]),[P,O]=(0,n.useState)("headers"),[G,H]=(0,n.useState)(String(ie.RB.row)),[T,U]=(0,n.useState)("body"),[Z,V]=(0,n.useState)(),[J,X]=(0,m.fp)(h.AG.nav_index_add_item_by_now_list),[Y,W]=(0,m.fp)(h.AG.prompt_card);f.xK.set_value_temp("{}",0),f.xK.set_value_temp("",1),(0,n.useEffect)(()=>(pe={},he="",me="",fe="",f.xK.get_editor(0).session.setMode("ace/mode/json"),k.http_download_map_path&&(L(k.http_download_map_path),N({})),C.ws.sendData(S.HK.http_download_water,void 0).then(()=>{C.ws.addMsg(S.HK.http_download_water,e=>{const t=e.context;E(t)})}),()=>{C.ws&&"function"==typeof C.ws.removeMsg&&C.ws.removeMsg(S.HK.http_download_water)}),[]);const q=e=>{const t=new ie.vr;t.url=A,t.method=b,t.header_type="headers"===P?1:2,"headers"===P&&(pe=JSON.parse(f.xK.get_editor_value(0))),t.headers=pe;const a=Number(G);if(t.body_type=a,a===ie.RB.row)he=f.xK.get_editor_value(1),t.data=he;else if(a===ie.RB.json)pe["Content-Type"]="application/json",he=f.xK.get_editor_value(1),t.data=he;else if(a===ie.RB.form){pe["Content-Type"]="multipart/form-data",t.form_data_list=I;for(const t of I)t.key&&t.is_file&&e&&e.append(t.fullPath,t.file_object)}return t};return(0,x.jsx)("div",{children:(0,x.jsxs)(o.xh,{children:[(0,x.jsxs)(o.fI,{children:[(0,x.jsxs)(o.VP,{children:[0!==B.length&&(0,x.jsx)(s.Zp,{title:"正在下载",children:(0,x.jsx)("div",{children:B.map((t,a)=>(0,x.jsxs)("div",{children:[(0,x.jsxs)("div",{className:"div-row",children:[(0,x.jsx)(r.rA,{icon:"cancel",title:e("取消"),onClick:()=>{C.ws.sendData(S.HK.http_download_cancel,t.local_download_path)}}),(0,x.jsx)(s.xP,{context:t.filename,tip_context:t.local_download_path}),(0,x.jsx)("span",{style:{paddingLeft:".3rem",color:"green"},children:`${t.progresses??0}% ${t.loaded?(0,R.v7)(t.loaded):""}MB / ${t.seep??""}MB/s `})]}),(0,x.jsx)("div",{style:{width:t.progresses?`${t.progresses}%`:"0",backgroundColor:"#40c4ff",height:"5px",transition:"0.2s ease width",borderRadius:"10px"}})]},a))})}),(0,x.jsxs)(s.Zp,{title:"",rightBottomCom:Number(G)===ie.RB.form&&"body"===P&&(0,x.jsx)(r.rA,{icon:"add",title:e("添加"),onClick:()=>{M([{},...I])}}),children:[(0,x.jsxs)("div",{className:"http_url",children:[(0,x.jsx)(i.l6,{width:"10rem",value:b,onChange:e=>{K(e)},options:[{value:"get",color:"#28a745"},{value:"post",color:"#007bff"},{value:"put",color:"#fd7e14"},{value:"delete",color:"#dc3545"},{value:"head",color:"#6f42c1"},{value:"options",color:"#17a2b8"},{value:"connect",color:"#666666"},{value:"trace",color:"#666666"},{value:"custom",color:"#e83e8c"}]}),(0,x.jsx)(i.Sm,{width:"50rem",placeholder:e("http url"),value:A,handleInputChange:e=>{F(e)}}),(0,x.jsx)(r.rA,{icon:"send",title:e("发送"),onClick:async()=>{if(!c._U.have_http_method(b))return void(0,_.zN)("不存在的http method");if(!A)return void(0,_.zN)("url is empty");V(void 0),j("");const e=new FormData;e.append("data",JSON.stringify(q(e)));let t="http/send";D&&(t+=`?local_download_path=${D}`),re.A.post(c._U.getUrl(t),e,{headers:{"Content-Type":"multipart/form-data",Authorization:localStorage.getItem("token")}}).catch(e=>{(0,_.zN)(e.message)}).then(e=>{if(!e)return;let t={};try{if(e.headers.filecat_remote_raw_headers&&(t=JSON.parse(e.headers.filecat_remote_raw_headers),fe=JSON.stringify(t,null,2)),e.headers.filecat_remote_code)try{const t=JSON.parse(e.headers.filecat_remote_code);V(200===t||201===t?(0,x.jsx)("span",{style:{color:"green"},children:"200"}):t)}catch(e){console.log(e)}}catch(t){fe=String(e.headers.filecat_remote_raw_headers)}const a=(t["content-type"]||t["Content-Type"]||"").toLowerCase();me="object"==typeof e.data?JSON.stringify(e.data,null,2):e.data;const n=f.xK.get_editor(2),s="body"===T?me:fe;if(n){if(a.includes("application/json")||a.includes("+json")){n.session.setMode("ace/mode/json");try{const e=JSON.parse(me);me=JSON.stringify(e,null,2)}catch(e){}}else a.includes("html")?n.session.setMode("ace/mode/html"):a.includes("xml")?n.session.setMode("ace/mode/xml"):a.includes("javascript")?n.session.setMode("ace/mode/javascript"):n.session.setMode("ace/mode/text");n.setValue("body"===T?me:fe,-1)}j(s)})}}),g(y.oV.http_proxy_tag_update)&&(0,x.jsx)(r.rA,{title:e("添加"),icon:"save_as",onClick:()=>{if(!g(y.oV.http_proxy_tag_update))return void(0,_.zN)("no permission");for(const t of I)if(t.is_file)return void(0,_.zN)(e("frm_lm"));let t;W({open:!0,title:e("信息"),context_div:(0,x.jsxs)("div",{children:[(0,x.jsx)("div",{className:"card-content",children:(0,x.jsx)(i.Sm,{placeholderOut:e("输入标签名"),handleInputChange:e=>t=e})}),(0,x.jsx)("div",{className:"card-action",children:(0,x.jsx)("button",{className:"button button--flat",onClick:async()=>{const e=await q();e.local_download_path=D,e.form_data_list=JSON.stringify(I),e.headers=JSON.stringify(e.headers),"object"==typeof e.data&&(e.data=JSON.stringify(e.data)),e.name=t,X(e),W({open:!1})},children:e("确定")})})]})})}})]}),(0,x.jsxs)(ce,{activeKey:P,onChange:e=>O(e),children:[(0,x.jsx)(de,{itemKey:"headers",tab:e("请求头")+"(json)",children:(0,x.jsxs)("div",{style:{marginTop:"10px"},children:[(0,x.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"4px"},children:(0,x.jsx)(r.rA,{title:e("格式化"),icon:"data_object",onClick:function(){f.xK.get_editor(0)?.formatCode?.()}})}),(0,x.jsx)("div",{className:"http_ace",children:(0,x.jsx)(ue,{name:"",editor_id:0})})]})}),(0,x.jsx)(de,{itemKey:"body",tab:e("请求体"),children:(0,x.jsxs)("div",{style:{marginTop:"10px"},children:[(0,x.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[(0,x.jsxs)(ce,{activeKey:G,onChange:e=>{H(e);const t=Number(e);t===ie.RB.row?f.xK.get_editor(1).session.setMode("ace/mode/text"):t===ie.RB.json&&f.xK.get_editor(1).session.setMode("ace/mode/json")},children:[(0,x.jsx)(de,{itemKey:String(ie.RB.row),tab:e("row")}),(0,x.jsx)(de,{itemKey:String(ie.RB.json),tab:e("json")}),(0,x.jsx)(de,{itemKey:String(ie.RB.form),tab:e("form")})]}),Number(G)!==ie.RB.form&&(0,x.jsx)(r.rA,{title:e("格式化"),icon:"data_object",onClick:function(){f.xK.get_editor(1)?.formatCode?.()}})]}),Number(G)===ie.RB.form&&(0,x.jsx)("div",{style:{marginTop:"10px"},children:(0,x.jsx)(se.X,{headers:["key",e("值")],rows:I.map((t,a)=>[(0,x.jsx)(i.Sm,{value:t.key,handleInputChange:e=>{t.key=e,M([...I])},no_border:!0}),(0,x.jsx)(i.Sm,{value:t.value,handleInputChange:e=>{t.value=e,t.is_file=!1,M([...I])},no_border:!0}),(0,x.jsxs)("div",{children:[(0,x.jsx)(r.rA,{icon:"file_upload",title:e("上传文件"),onClick:()=>(e=>{v({show:!0,type:$.PromptEnum.UploadFile,overlay:!0,data:{extra_data:{only_file:!0},call:t=>{let a=t.currentTarget?.files;if(!a)return;const n=a[0];n.fullPath=(0,z.hU)()+Date.now().toString(),I[e].value=`${n}(${n.name})`,I[e].is_file=!0,I[e].fileName=n.name,I[e].fullPath=n.fullPath,M([...I]),I[e].file_object=n,v({overlay:!1,type:"",show:!1,data:{}})}}})})(a)}),(0,x.jsx)(r.rA,{icon:"delete",title:e("删除"),onClick:()=>(e=>{I.splice(e,1),M([...I])})(a)})]})]),width:"10rem"})}),(0,x.jsx)("div",{className:"http_ace",style:{marginTop:"10px",display:Number(G)!==ie.RB.form?"block":"none"},children:(0,x.jsx)(ue,{name:"",editor_id:1})})]})})]}),(0,x.jsx)("div",{style:{paddingTop:"1rem"},children:void 0===D?(0,x.jsx)("span",{style:{cursor:"pointer",color:"#3b82f6"},onClick:()=>{L("")},children:e("下载到本地目录")}):(0,x.jsx)(i.Sm,{placeholder:e("本地地址"),value:D,handleInputChange:e=>{L(e)},handlerEnter:()=>{D||L(void 0)}})})]})]}),(0,x.jsx)(o.VP,{children:(0,x.jsxs)(s.Zp,{title:Z,titleCom:(0,x.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,x.jsx)(r.rA,{title:e("格式化"),icon:"data_object",onClick:()=>{f.xK.get_editor(2)?.formatCode?.()}}),(0,x.jsx)(r.rA,{title:e("复制"),icon:"copy_all",onClick:()=>{const e=f.xK.get_editor_value(2);e&&((0,oe.lW)(e),(0,_.SK)("完成"))}})]}),children:[(0,x.jsxs)(ce,{activeKey:T,onChange:e=>{U(e);const t="body"===e?me:fe;j(t);const a=f.xK.get_editor(2);if(a){try{JSON.parse(t),a.session.setMode("ace/mode/json")}catch{a.session.setMode("ace/mode/text")}a.setValue(t,-1)}},children:[(0,x.jsx)(de,{itemKey:"body",tab:e("响应体")}),(0,x.jsx)(de,{itemKey:"headers",tab:e("响应头")})]}),(0,x.jsx)("div",{className:"http_ace",style:{marginTop:"10px",height:"21rem"},children:(0,x.jsx)(ue,{name:"",editor_id:2})})]})})]}),(0,x.jsx)(o.fI,{children:(0,x.jsx)(o.VP,{children:(0,x.jsx)(u.N,{getItems:async()=>{const e=await c._U.get("http/tag");return e.code===d.m.Success?e.data:[]},save:async e=>{(await c._U.post("http/tag/save",e)).code!==d.m.Success&&(0,_.zN)("网络错误")},have_auth_edit:g(y.oV.http_proxy_tag_update),clickItem:async e=>{F(e.url),K(e.method),L(e.local_download_path),e.header_type&&O(1===e.header_type?"headers":"body"),e.headers&&(pe=JSON.parse(e.headers),1===e.header_type&&(f.xK.get_editor(0).setValue(e.headers,-1),f.xK.get_editor(0).session.setMode("ace/mode/json"))),e.form_data_list&&M(JSON.parse(e.form_data_list)),e.data&&(he=e.data),e.body_type&&(H(String(e.body_type)),e.body_type===ie.RB.row?f.xK.get_editor(1).session.setMode("ace/mode/text"):e.body_type===ie.RB.json&&f.xK.get_editor(1).session.setMode("ace/mode/json"),f.xK.get_editor(1).setValue(e.data,-1))},items:[{key:"name",preName:e("名字")},{key:"url",preName:"url"},{key:"method",preName:"method"},{key:"headers",preName:"headers"},{key:"data",preName:"data"},{key:"form_data_list",preName:"form_data_list"},{key:"local_download_path",preName:"local_download_path"},{key:"color",preName:"color"}]})})})]})})}var _e=a(87361);const ve=n.lazy(()=>Promise.all([a.e(8772),a.e(8257),a.e(7759)]).then(a.bind(a,45601)));function xe({}){const{check_user_auth:e}=(0,f.MH)(),{t}=(0,p.Bd)(),a=[];return e(y.oV.http_proxy)&&a.push({index:1,name:t("http代理"),rto:"http/",component:(0,x.jsx)(ye,{})}),e(y.oV.ssh_proxy)&&a.push({index:1,name:`ssh${t("代理")}`,rto:"remoteShell/",component:(0,x.jsx)(Z,{})}),e(y.oV.browser_proxy)&&a.push({index:1,name:`${t("浏览器")}${t("代理")}`,rto:"browserproxy/",component:(0,x.jsx)(N,{})}),e(y.oV.rdp_proxy)&&a.push({index:1,name:`rdp${t("代理")}`,rto:"rdp/",component:(0,x.jsx)(ne,{})}),e(y.oV.rtsp_proxy)&&a.push({index:1,name:t("rtsp播放器"),rto:"rtsp/",component:(0,x.jsx)(ve,{})}),(0,x.jsx)(o.W1,{optionList:a,father_route:_e.o.proxy})}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[5942],{85942(t,e,i){i.d(e,{diagram:()=>et});var r=i(77454),s=i(15319),n=i(57588),o=i(54912),a=i(51255),d=i(89983),l=i(31293),c=i(86827),h=i(34376),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}},77454(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(86827).K)(r,"populateCommonDb")}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[6029],{96029(a,e,c){c.d(e,{diagram:()=>s.AC});var s=c(87128);c(64918),c(96755),c(92892),c(841),c(56714),c(43247),c(98120),c(99257),c(24832),c(36870),c(84076),c(36155),c(57588),c(54912),c(92941),c(51255),c(89983),c(31293),c(86827)}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[6054],{76054(e,c,a){a.d(c,{createInfoServices:()=>s.v});var s=a(85547);a(41303)}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[6089],{15350(e,t,n){n.d(t,{m:()=>o});var i=n(86827),o=class{constructor(e){this.init=e,this.records=this.init()}static{(0,i.K)(this,"ImperativeState")}reset(){this.records=this.init()}}},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")},36089(e,t,n){n.d(t,{diagram:()=>W});var i=n(15350),o=n(77454),r=n(15319),s=n(54912),c=n(51255),a=n(89983),d=n(31293),l=n(86827),h=n(34376),p=/[─━│┃└┗├┣]/,g=/[└┗├┣]/,f=/[─━]/,u=/^[\s│┃]+$/,w=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,x=/^\s*%%/;function m(e){return e.some(e=>p.test(e))}function b(e){for(const t of e){const e=g.exec(t);if(e?.index&&e.index>0)return e.index}return 4}function y(e,t){return e.replace(/\bline\s+(\d+)\b/gi,(e,n)=>{const i=parseInt(n,10),o=t.get(i);return o?`line ${o}`:e})}function k(e){const t=e.split("\n"),n=new Map;let i=-1;for(const[e,n]of t.entries())if("treeView-beta"===n.trim()){i=e;break}if(-1===i)return{text:e,lineMap:n};const o=[];for(let e=i+1;e<t.length;e++){const n=t[e];""===n.trim()||x.test(n)||w.test(n)||(u.test(n)||o.push(n.replace(/\t/g," ")))}if(!m(o))return{text:e,lineMap:n};const r=b(o),s=[];let c=0;for(let e=0;e<=i;e++)s.push(t[e]),c++,n.set(c,e+1);for(let e=i+1;e<t.length;e++){const i=t[e],o=e+1;if(""===i.trim()){s.push(i),c++,n.set(c,o);continue}if(x.test(i)){s.push(i),c++,n.set(c,o);continue}if(w.test(i)){s.push(i),c++,n.set(c,o);continue}if(u.test(i))continue;const a=i.replace(/\t/g," "),d=g.exec(a);if(void 0!==d?.index){const e=d.index,t=Math.round(e/r)+1;let i=e+1;for(;i<a.length&&f.test(a[i]);)i++;for(;i<a.length&&" "===a[i];)i++;const l=a.slice(i).trimEnd();if(!l)throw new Error(`Line ${o}: Empty node — expected a filename or directory name after the box-drawing prefix`);const h=" ".repeat(t);s.push(h+l),c++,n.set(c,o)}else{if(/^[\s─━│┃└┗├┣]+$/.test(a))continue;if(p.test(a))s.push(i),c++,n.set(c,o);else{if(/^\s+/.test(a))throw new Error(`Line ${o}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);s.push(i),c++,n.set(c,o)}}}return{text:s.join("\n"),lineMap:n}}(0,l.K)(m,"isBoxDrawingFormat"),(0,l.K)(b,"inferSegmentWidth"),(0,l.K)(y,"remapErrorLines"),(0,l.K)(k,"preprocessBoxDrawing");var $=new i.m(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),v=(0,l.K)(()=>{$.reset(),(0,a.IU)()},"clear"),C=(0,l.K)(()=>$.records.stack[0],"getRoot"),K=(0,l.K)(()=>$.records.cnt,"getCount"),V=a.UI.treeView,B=(0,l.K)(()=>(0,c.$t)(V,(0,a.zj)().treeView),"getConfig"),T={clear:v,addNode:(0,l.K)((e,t,n,i,o,r)=>{for(;e<=$.records.stack[$.records.stack.length-1].level;)$.records.stack.pop();const s={id:$.records.cnt++,level:e,name:t,nodeType:n,icon:o,cssClass:i,description:r,children:[]};$.records.stack[$.records.stack.length-1].children.push(s),$.records.stack.push(s)},"addNode"),getRoot:C,getCount:K,getConfig:B,getAccTitle:a.iN,getAccDescription:a.m7,getDiagramTitle:a.ab,setAccDescription:a.EI,setAccTitle:a.SV,setDiagramTitle:a.ke},I=(0,l.K)(e=>{(0,o.S)(e,T);for(const t of e.nodes){const e="number"==typeof t.indent?t.indent:0;let n=t.name;const i=n.endsWith("/");i&&(n=n.slice(0,-1));const o=i?"directory":"file",r=t.classAnnotation||void 0,s=t.iconAnnotation,c=void 0!==s?s||"none":void 0,d=t.descAnnotation||void 0,l=d?(0,a.jZ)(d,(0,a.zj)()):void 0;T.addNode(e,n,o,r,c,l)}},"populate"),M={parse:(0,l.K)(async e=>{const{text:t,lineMap:n}=k(e);try{const e=await(0,h.qg)("treeView",t);d.R.debug(e),I(e)}catch(e){throw n.size>0&&e instanceof Error&&(e.message=y(e.message,n)),e}},"parse")},D={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};function A(e,t){const n=t?.filenameIcons?.[e];if(n)return n;const i=e.lastIndexOf(".");if(i>0){const n=e.substring(i).toLowerCase(),o=t?.extensionIcons;return o?.[n]??o?.[n.slice(1)]}}function E(e,t){return e.includes(":")?e:e in D.icons||!t?`${D.prefix}:${e}`:`${t}:${e}`}function S(e,t){if("none"!==e.icon){if(e.icon)return E(e.icon,t.defaultIconPack);if(t.showIcons){if("file"===e.nodeType){const n=A(e.name,t);if("none"===n)return;if(n)return E(n,t.defaultIconPack)}return`${D.prefix}:${"directory"===e.nodeType?"folder":"file"}`}}}(0,l.K)(A,"detectIcon"),(0,l.K)(E,"qualifyIcon"),(0,l.K)(S,"getNodeIcon"),(0,s.pC)([{name:D.prefix,icons:D}]);var z=(0,l.K)(async(e,t)=>{const n=[],i=(0,l.K)(e=>{const o=S(e,t);o&&n.push({icon:o,node:e}),e.children.forEach(i)},"collect");i(e);const o=await Promise.all(n.map(async({icon:e,node:t})=>({id:t.id,svg:await(0,s.WY)(e,{height:14,width:14})})));return new Map(o.map(({id:e,svg:t})=>[e,t]))},"resolveNodeIcons"),N=(0,l.K)((e,t,n,i,o,r)=>{const s=i.append("g");let c="treeView-node-label";"directory"===n.nodeType&&(c+=" treeView-node-dir"),n.cssClass&&(c+=` ${n.cssClass}`);const a=S(n,o),d=void 0!==a;a&&s.append("g").attr("class","treeView-node-icon").attr("transform",`translate(${e+o.paddingX}, ${t+o.paddingY})`).html(r.get(n.id)??"");const l=s.append("text").text(n.name).attr("dominant-baseline","middle").attr("class",c),{height:h,width:p}=l.node().getBBox(),g=h+2*o.paddingY,f=e+o.paddingX+(d?18:0);l.attr("x",f),l.attr("y",t+g/2);const u=f+p,w=p+2*o.paddingX+(d?18:0);return n.BBox={x:e,y:t,width:w,height:g},n.cssClass?.split(/\s+/).includes("highlight")&&s.insert("rect",":first-child").attr("x",e).attr("y",t+1).attr("width",0).attr("height",g-2).attr("rx",3).attr("class","treeView-highlight-bg"),{node:n,nodeGroup:s,labelRightEdge:u,centerY:t+g/2}},"positionLabel"),R=(0,l.K)((e,t,n,i,o,r)=>e.append("line").attr("x1",t).attr("y1",n).attr("x2",i).attr("y2",o).attr("stroke-width",r).attr("class","treeView-node-line"),"positionLine"),X=(0,l.K)((e,t,n,i)=>{let o=0,r=0;const s=[],c=(0,l.K)((e,t,n,c)=>{const a=c*(n.rowIndent+n.paddingX),d=N(a,o,t,e,n,i);s.push(d);const{height:l,width:h}=t.BBox;R(e,a-n.rowIndent,o+l/2,a,o+l/2,n.lineThickness),r=Math.max(r,a+h),o+=l},"drawNode"),a=(0,l.K)((t,i=0)=>{c(e,t,n,i),t.children.forEach(e=>{a(e,i+1)});const{x:o,y:r,height:s}=t.BBox;if(t.children.length){const{y:i,height:c}=t.children[t.children.length-1].BBox;R(e,o+n.paddingX,r+s,o+n.paddingX,i+c/2+n.lineThickness/2,n.lineThickness)}},"processNode");a(t);const d=s.filter(e=>e.node.description);if(d.length>0){const e=Math.max(...s.map(e=>e.labelRightEdge))+16;for(const t of d){const i=t.nodeGroup.append("text").text(t.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",e).attr("y",t.centerY).node().getBBox();r=Math.max(r,e+i.width+n.paddingX)}}for(const e of s)if(e.node.cssClass?.split(/\s+/).includes("highlight")){const t=e.nodeGroup.select(".treeView-highlight-bg");if(!t.empty()){const n=r-e.node.BBox.x+8;t.attr("width",n),r=Math.max(r,e.node.BBox.x+n+2)}}return{totalHeight:o,totalWidth:r}},"drawTree"),L={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},W={db:T,renderer:{draw:(0,l.K)(async(e,t,n,i)=>{d.R.debug("Rendering treeView diagram\n"+e);const o=i.db,s=o.getRoot(),c=o.getConfig(),l=(0,r.D)(t),h=l.append("g");h.attr("class","tree-view");const p=await z(s,c),{totalHeight:g,totalWidth:f}=X(h,s,c,p);l.attr("viewBox",`-${c.lineThickness/2} 0 ${f} ${g}`),(0,a.a$)(l,g,f,c.useMaxWidth)},"draw")},parser:M,styles:(0,l.K)(({treeView:e})=>{const{labelFontSize:t,labelColor:n,lineColor:i,iconColor:o,descriptionColor:r,highlightBg:s,highlightStroke:a}=(0,c.$t)(L,e);return`\n .treeView-node-label {\n font-size: ${t};\n fill: ${n};\n white-space: pre;\n }\n .treeView-node-dir {\n font-weight: bold;\n }\n .treeView-node-line {\n stroke: ${i};\n }\n .treeView-node-icon {\n color: ${o};\n }\n .treeView-node-description {\n font-size: ${t};\n fill: ${r};\n font-style: italic;\n white-space: pre;\n }\n .treeView-highlight-bg {\n fill: ${s};\n stroke: ${a};\n stroke-width: 1;\n }\n `},"styles")}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[6095],{46095(e,t,r){r.r(t),r.d(t,{applyDagreLayoutResult:()=>C,getEdgesToRender:()=>b,measureDagreLayout:()=>v,prepareLayoutForDagre:()=>T,render:()=>I,runDagreLayoutCore:()=>K});var a=r(51634),n=r(68741),o=r(31139),i=r(26388),d=r(92662),s=(r(27280),r(56289),r(19831),r(73145),r(20886)),g=r(84828),l=r(27698),h=r(84193),p=r(697),c=(0,l.K)((e,t,r)=>Math.max(t,Math.min(r,e)),"clamp"),u=(0,l.K)((e="TB")=>{switch(e){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";default:return"top"}},"getDefaultSelfLoopSide"),f=(0,l.K)(e=>"flowchart"===e||"flowchart-v2"===e||"stateDiagram"===e||"er"===e||"classDiagram"===e,"shouldMergeSelfLoopSegments"),y=["x","y","width","height","labelBBox","intersect","calcIntersect","diff","clusterNode"],m=(0,l.K)((e,t,r,a,n)=>{const o=[],i=new Set;if(r.forEach(({start:e,end:t})=>{e!==a&&i.add(e),t!==a&&i.add(t)}),i.forEach(t=>{const r=e.node(t);"number"==typeof r?.x&&"number"==typeof r?.y&&o.push(r)}),0===o.length&&r.forEach(({edge:e})=>{(e.points??[]).forEach(e=>{"number"==typeof e?.x&&"number"==typeof e?.y&&o.push(e)})}),0===o.length)return u(n);const d=o.reduce((e,t)=>({x:e.x+t.x/o.length,y:e.y+t.y/o.length}),{x:0,y:0}),s=d.x-t.x,g=d.y-t.y;return Math.abs(s)>Math.abs(g)?s>0?"right":"left":Math.abs(g)>0?g>0?"bottom":"top":u(n)},"getSelfLoopSide"),L=(0,l.K)((e,t="top",r=0,a=0)=>{const n=e.x,o=e.y-r,i=e.width/2,d=e.height/2,s=Math.max(36,Math.min(100,.8*e.width)),g=c(Math.max(a,.35*e.width),36,s),l=c(.45*Math.min(e.width,e.height),24,48);switch(t){case"bottom":{const e=o+d;return[{x:n-g/2,y:e},{x:n-g/2,y:e+l},{x:n+g/2,y:e+l},{x:n+g/2,y:e}]}case"right":{const e=n+i;return[{x:e,y:o-g/2},{x:e+l,y:o-g/2},{x:e+l,y:o+g/2},{x:e,y:o+g/2}]}case"left":{const e=n-i;return[{x:e,y:o-g/2},{x:e-l,y:o-g/2},{x:e-l,y:o+g/2},{x:e,y:o+g/2}]}default:{const e=o-d;return[{x:n-g/2,y:e},{x:n-g/2,y:e-l},{x:n+g/2,y:e-l},{x:n+g/2,y:e}]}}},"getSelfLoopPoints"),w=(0,l.K)((e,t,r="top",a=0,n={})=>{const o=e.x,i=e.y-a,d=n.width??0,s=n.height??0;switch(r){case"bottom":return{x:o,y:Math.max(...t.map(e=>e.y))+s/2+4};case"right":return{x:Math.max(...t.map(e=>e.x))+d/2+4,y:i};case"left":return{x:Math.min(...t.map(e=>e.x))-d/2-4,y:i};default:return{x:o,y:Math.min(...t.map(e=>e.y))-s/2-4}}},"getSelfLoopLabelPosition"),b=(0,l.K)((e,t=0,{mergeSelfLoops:r=!0}={})=>{const a=new Map,n=[],o=e.graph()?.rankdir;return e.edges().forEach(t=>{const o=e.edge(t);if(r&&o.selfLoop){const e=o.selfLoop.id;a.has(e)||a.set(e,[]),a.get(e).push({edge:o,start:t.v,end:t.w})}else n.push({edge:o,start:t.v,end:t.w})}),a.forEach(r=>{if(3!==r.length)return void r.forEach(e=>n.push(e));r.sort((e,t)=>e.edge.selfLoop.order-t.edge.selfLoop.order);const[a,i,d]=r,s=a.edge.originalEdge??i.edge.originalEdge??d.edge.originalEdge??i.edge,g=e.node(s.start);if(!g)return void r.forEach(e=>n.push(e));const l={width:i.edge.width,height:i.edge.height},h=m(e,g,r,s.start,o),p=L(g,h,t,l.width??0),c=w(g,p,h,t,l),u={...i.edge,...s,id:s.id,points:p,start:s.start,end:s.end,x:c.x,y:c.y,width:l.width,height:l.height,labelStyle:i.edge.labelStyle,fromCluster:a.edge.fromCluster??i.edge.fromCluster??d.edge.fromCluster,toCluster:a.edge.toCluster??i.edge.toCluster??d.edge.toCluster};delete u.selfLoop,delete u.originalEdge,n.push({edge:u,start:u.start,end:u.end})}),n},"getEdgesToRender"),x=(0,l.K)(async({element:e,graph:t,diagramType:r,id:n,parentCluster:s,siteConfig:h})=>{const p=t.graph().rankdir;g.R.trace("Dir in recursive render - dir:",p);const{clusters:c,edgePaths:u,edgeLabels:y,nodes:m,rootGroups:L}=(0,a.B)(e,{edgePathsClass:"edgePaths"});t.nodes()?g.R.info("Recursive render XXX",t.nodes()):g.R.info("No nodes found for",t),t.edges().length>0&&g.R.info("Recursive edges",t.edge(t.edges()[0]));const w=f(r);await Promise.all(t.nodes().map(async function(e){const o=t.node(e);if(void 0!==s){const r=JSON.parse(JSON.stringify(s.clusterData));g.R.trace("Setting data for parent cluster XXX\n Node.id = ",e,"\n data=",r.height,"\nParent cluster",s.height),t.setNode(s.id,r),t.parent(e)||(g.R.trace("Setting parent",e,s.id),t.setParent(e,s.id,r))}if(g.R.info("(Insert) Node XXX"+e+": "+JSON.stringify(t.node(e))),o?.clusterNode){g.R.info("Cluster identified XBX",e,o.width,t.node(e));const{ranksep:a,nodesep:s}=t.graph();o.graph.setGraph({...o.graph.graph(),ranksep:a+25,nodesep:s});const l=await D({element:m,graph:o.graph,diagramType:r,id:n,parentCluster:t.node(e),siteConfig:h}),p=l.elem;(0,d.lC)(o,p),o.diff=l.diff||0,g.R.info("New compound node after recursive render XAX",e,"width",o.width,"height",o.height),(0,i.U7)(p,o)}else t.children(e).length>0?(g.R.trace("Cluster - the non recursive path XBX",e,o.id,o,o.width,"Graph:",t),g.R.trace((0,a.dc)(o.id,t)),a.ju.set(o.id,{id:(0,a.dc)(o.id,t),node:o})):(g.R.trace("Node - the non recursive path XAX",e,m,t.node(e),p),await(0,a.sv)(m,t.node(e),{config:h,dir:p}))}));const b=(0,l.K)(async()=>{const e=t.edges().map(async function(e){const r=t.edge(e.v,e.w,e.name);if(g.R.info("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),g.R.info("Edge "+e.v+" -> "+e.w+": ",e," ",JSON.stringify(t.edge(e))),g.R.info("Fix",a.ju,"ids:",e.v,e.w,"Translating: ",a.ju.get(e.v),a.ju.get(e.w)),w&&r.selfLoop){if(1!==r.selfLoop.order)return;const e={...r.originalEdge,...r,id:r.selfLoop.id,startLabelLeft:r.originalEdge?.startLabelLeft??r.startLabelLeft,startLabelRight:r.originalEdge?.startLabelRight??r.startLabelRight,endLabelLeft:r.originalEdge?.endLabelLeft??r.endLabelLeft,endLabelRight:r.originalEdge?.endLabelRight??r.endLabelRight};return await(0,o.jP)(y,e),r.width=e.width,r.height=e.height,void(r.labelStyle=e.labelStyle)}await(0,o.jP)(y,r)});await Promise.all(e)},"processEdges");await b();const{subGraphTitleTotalMargin:x}=(0,i.Oi)(h);return{elem:L,graph:t,groups:{clusters:c,edgePaths:u,edgeLabels:y,nodes:m,rootGroups:L},diagramType:r,id:n,mergeSelfLoops:w,subGraphTitleTotalMargin:x}},"measureDagreGraph"),R=(0,l.K)(e=>{g.R.info("############################################# XXX"),g.R.info("### Layout ### XXX"),g.R.info("############################################# XXX"),(0,h.Zp)(e)},"runDagreGraphLayout"),E=(0,l.K)((e,t,r)=>{const a=e.node(t);if(!a)return;const n={...a};return a?.clusterNode?n.y=(a.y??0)+r:e.children(t).length>0?n.height=(a.height??0)+r:n.y=(a.y??0)+r/2,n},"normalizeDagreNode"),S=(0,l.K)((e,t)=>{y.forEach(r=>{void 0!==t[r]&&(e[r]=t[r])})},"applyDagreNodeLayout"),X=(0,l.K)((e,t,r,a)=>({...e,start:e.start??t,end:e.end??r,points:(e.points??[]).map(e=>({...e,y:"number"==typeof e.y?e.y+a:e.y}))}),"normalizeDagreEdge"),C=(0,l.K)((e,t)=>{const{graph:r,mergeSelfLoops:n,subGraphTitleTotalMargin:o=0}=t,i=new Map(e.nodes.map(e=>[e.id,e]));(0,a.sc)(r).forEach(e=>{const t=E(r,e,o);if(!t)return;S(r.node(e),t);const a=i.get(e);a&&S(a,t)});const d=o/2;return e.edges=b(r,d,{mergeSelfLoops:n}).map(({edge:e,start:t,end:r})=>X(e,t,r,d)),e},"applyDagreLayoutResult"),N=(0,l.K)(async({elem:e,graph:t,groups:{clusters:r,edgePaths:d},diagramType:s,id:l,mergeSelfLoops:h,subGraphTitleTotalMargin:p})=>{let c=0;await Promise.all((0,a.sc)(t).map(async function(e){const o=t.node(e);if(g.R.info("Position XBX => "+e+": ("+o.x,","+o.y,") width: ",o.width," height: ",o.height),o?.clusterNode)o.y+=p,g.R.info("A tainted cluster node XBX1",e,o.id,o.width,o.height,o.x,o.y,t.parent(e)),a.ju.get(o.id).node=o,(0,i.U_)(o);else if(t.children(e).length>0){g.R.info("A pure cluster node XBX1",e,o.id,o.x,o.y,o.width,o.height,t.parent(e)),o.height+=p,t.node(o.parentId);const i=o?.padding/2||0,d=o?.labelBBox?.height||0,s=d-i||0;g.R.debug("OffsetY",s,"labelHeight",d,"halfPadding",i),await(0,n.U)(r,o),a.ju.get(o.id).node=o}else{const e=t.node(o.parentId);o.y+=p/2,g.R.info("A regular node XBX1 - using the padding",o.id,"parent",o.parentId,o.width,o.height,o.x,o.y,"offsetY",o.offsetY,"parent",e,e?.offsetY,o),(0,i.U_)(o)}}));const u=p/2;return b(t,u,{mergeSelfLoops:h}).forEach(function({edge:e,start:r,end:n}){g.R.info("Edge "+r+" -> "+n+": "+JSON.stringify(e),e),e.points.forEach(e=>e.y+=u);const i=t.node(r),h=t.node(n),p=(0,o.Jo)(d,e,a.ju,s,i,h,l);(0,o.T_)(e,p)}),t.nodes().forEach(function(e){const r=t.node(e);g.R.info(e,r.type,r.diff),r.isGroup&&(c=r.diff)}),g.R.warn("Returning from recursive render XAX",e,c),{elem:e,diff:c}},"paintDagreLayoutCore"),D=(0,l.K)(async e=>{const t=await x(e);return R(t.graph),await N(t)},"renderDagreSubgraph"),T=(0,l.K)(e=>{const t=new p.T({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.nodeSpacing||e.config?.flowchart?.nodeSpacing,ranksep:e.config?.rankSpacing||e.rankSpacing||e.config?.flowchart?.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});return e.nodes.forEach(e=>{t.setNode(e.id,{...e}),e.parentId&&t.setParent(e.id,e.parentId)}),g.R.debug("Edges:",e.edges),e.edges.forEach(e=>{if(e.start===e.end){const r=e.start,a=r+"---"+r+"---1",n=r+"---"+r+"---2",o=t.node(r);t.setNode(a,{domId:a,id:a,parentId:o.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),t.setParent(a,o.parentId),t.setNode(n,{domId:n,id:n,parentId:o.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),t.setParent(n,o.parentId);const i=structuredClone(e),d=structuredClone(e),s=structuredClone(e),g=structuredClone(e);d.originalEdge=i,d.selfLoop={id:i.id,order:0},s.originalEdge=i,s.selfLoop={id:i.id,order:1},g.originalEdge=i,g.selfLoop={id:i.id,order:2},d.label="",d.arrowTypeEnd="none",d.endLabelLeft="",d.endLabelRight="",d.startLabelLeft="",d.id=r+"-cyclic-special-1",s.startLabelRight="",s.startLabelLeft="",s.endLabelLeft="",s.endLabelRight="",s.arrowTypeStart="none",s.arrowTypeEnd="none",s.id=r+"-cyclic-special-mid",g.label="",g.startLabelRight="",g.startLabelLeft="",g.arrowTypeStart="none",o.isGroup&&(d.fromCluster=r,g.toCluster=r),g.id=r+"-cyclic-special-2",g.arrowTypeStart="none",t.setEdge(r,a,d,r+"-cyclic-special-0"),t.setEdge(a,n,s,r+"-cyclic-special-1"),t.setEdge(n,r,g,r+"-cyclic-special-2")}else t.setEdge(e.start,e.end,{...e},e.id)}),(0,a.OS)(t),{graph:t}},"prepareLayoutForDagre"),v=(0,l.K)(async(e,{element:t,preparedLayout:r})=>{const a=r??T(e),n=(0,s.D7)(),o=await x({element:t,graph:a.graph,diagramType:e.type,id:e.diagramId,parentCluster:void 0,siteConfig:n});return a.measuredLayout=o,o},"measureDagreLayout"),K=(0,l.K)((e,t)=>{const r=t.preparedLayout?.measuredLayout;if(!r)throw new Error("runDagreLayoutCore requires measureDagreLayout to run first");return R(r.graph),C(e,r),r},"runDagreLayoutCore"),M=(0,l.K)((e,{measure:t})=>(0,a.sc)(t.graph).map(e=>t.graph.node(e)).filter(Boolean),"getDagrePaintNodes"),P=(0,l.K)((e,t,{measure:r})=>e?r.graph.node(e):void 0,"getDagreEdgeNode"),I=(0,a.xY)({prepareLayout:T,measureLayout:v,runLayoutCore:K,paintOptions:{clusterDb:a.ju,getNodes:M,getEdgeNode:P,skipNode:(0,l.K)((e,{measure:t})=>!t.graph.hasNode(e.id),"skipNode"),isCluster:(0,l.K)((e,{measure:t})=>t.graph.hasNode(e.id)&&(t.graph.children(e.id)??[]).length>0,"isCluster")}})}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[6114],{6114(e,t,s){s.d(t,{diagram:()=>ye});var n=s(37703),i=s(31139),r=s(26388),o=(s(92662),s(27280),s(56289),s(19831),s(73145)),a=s(20886),c=s(84828),l=s(27698),h=s(33778),g=s(25582),u=s(75937),d=s(51444),y=s(697),p=function(){var e=(0,l.K)(function(e,t,s,n){for(s=s||{},n=e.length;n--;s[e[n]]=t);return s},"o"),t=[1,15],s=[1,7],n=[1,13],i=[1,14],r=[1,19],o=[1,16],a=[1,17],c=[1,18],h=[8,30],g=[8,10,21,28,29,30,31,39,43,46],u=[1,23],d=[1,24],y=[8,10,15,16,21,28,29,30,31,39,43,46],p=[8,10,15,16,21,27,28,29,30,31,39,43,46],b=[1,49],f={trace:(0,l.K)(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:(0,l.K)(function(e,t,s,n,i,r,o){var a=r.length-1;switch(i){case 4:n.getLogger().debug("Rule: separator (NL) ");break;case 5:n.getLogger().debug("Rule: separator (Space) ");break;case 6:n.getLogger().debug("Rule: separator (EOF) ");break;case 7:n.getLogger().debug("Rule: hierarchy: ",r[a-1]),n.setHierarchy(r[a-1]);break;case 8:n.getLogger().debug("Stop NL ");break;case 9:n.getLogger().debug("Stop EOF ");break;case 10:n.getLogger().debug("Stop NL2 ");break;case 11:n.getLogger().debug("Stop EOF2 ");break;case 12:n.getLogger().debug("Rule: statement: ",r[a]),"number"==typeof r[a].length?this.$=r[a]:this.$=[r[a]];break;case 13:n.getLogger().debug("Rule: statement #2: ",r[a-1]),this.$=[r[a-1]].concat(r[a]);break;case 14:n.getLogger().debug("Rule: link: ",r[a],e),this.$={edgeTypeStr:r[a],label:""};break;case 15:n.getLogger().debug("Rule: LABEL link: ",r[a-3],r[a-1],r[a]),this.$={edgeTypeStr:r[a],label:r[a-1]};break;case 18:const t=parseInt(r[a]),s=n.generateId();this.$={id:s,type:"space",label:"",width:t,children:[]};break;case 23:n.getLogger().debug("Rule: (nodeStatement link node) ",r[a-2],r[a-1],r[a]," typestr: ",r[a-1].edgeTypeStr);const i=n.edgeStrToEdgeData(r[a-1].edgeTypeStr),o=n.edgeStrToEdgeStartData(r[a-1].edgeTypeStr),c=n.edgeStrToThickness(r[a-1].edgeTypeStr),l=n.edgeStrToPattern(r[a-1].edgeTypeStr);this.$=[{id:r[a-2].id,label:r[a-2].label,type:r[a-2].type,directions:r[a-2].directions},{id:r[a-2].id+"-"+r[a].id,start:r[a-2].id,end:r[a].id,label:r[a-1].label,type:"edge",thickness:c,pattern:l,directions:r[a].directions,arrowTypeEnd:i,arrowTypeStart:o},{id:r[a].id,label:r[a].label,type:n.typeStr2Type(r[a].typeStr),directions:r[a].directions}];break;case 24:n.getLogger().debug("Rule: nodeStatement (abc88 node size) ",r[a-1],r[a]),this.$={id:r[a-1].id,label:r[a-1].label,type:n.typeStr2Type(r[a-1].typeStr),directions:r[a-1].directions,widthInColumns:parseInt(r[a],10)};break;case 25:n.getLogger().debug("Rule: nodeStatement (node) ",r[a]),this.$={id:r[a].id,label:r[a].label,type:n.typeStr2Type(r[a].typeStr),directions:r[a].directions,widthInColumns:1};break;case 26:n.getLogger().debug("APA123",this?this:"na"),n.getLogger().debug("COLUMNS: ",r[a]),this.$={type:"column-setting",columns:"auto"===r[a]?-1:parseInt(r[a])};break;case 27:n.getLogger().debug("Rule: id-block statement : ",r[a-2],r[a-1]);n.generateId();this.$={...r[a-2],type:"composite",children:r[a-1]};break;case 28:n.getLogger().debug("Rule: blockStatement : ",r[a-2],r[a-1],r[a]);const h=n.generateId();this.$={id:h,type:"composite",label:"",children:r[a-1]};break;case 29:n.getLogger().debug("Rule: node (NODE_ID separator): ",r[a]),this.$={id:r[a]};break;case 30:n.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",r[a-1],r[a]),this.$={id:r[a-1],label:r[a].label,typeStr:r[a].typeStr,directions:r[a].directions};break;case 31:n.getLogger().debug("Rule: dirList: ",r[a]),this.$=[r[a]];break;case 32:n.getLogger().debug("Rule: dirList: ",r[a-1],r[a]),this.$=[r[a-1]].concat(r[a]);break;case 33:n.getLogger().debug("Rule: nodeShapeNLabel: ",r[a-2],r[a-1],r[a]),this.$={typeStr:r[a-2]+r[a],label:r[a-1]};break;case 34:n.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",r[a-3],r[a-2]," #3:",r[a-1],r[a]),this.$={typeStr:r[a-3]+r[a],label:r[a-2],directions:r[a-1]};break;case 35:case 36:this.$={type:"classDef",id:r[a-1].trim(),css:r[a].trim()};break;case 37:this.$={type:"applyClass",id:r[a-1].trim(),styleClass:r[a].trim()};break;case 38:this.$={type:"applyStyles",id:r[a-1].trim(),stylesStr:r[a].trim()}}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:r,39:o,43:a,46:c},{8:[1,20]},e(h,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:s,28:n,29:i,31:r,39:o,43:a,46:c}),e(g,[2,16],{14:22,15:u,16:d}),e(g,[2,17]),e(g,[2,18]),e(g,[2,19]),e(g,[2,20]),e(g,[2,21]),e(g,[2,22]),e(y,[2,25],{27:[1,25]}),e(g,[2,26]),{19:26,26:12,31:r},{10:t,11:27,13:4,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:r,39:o,43:a,46:c},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(p,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(h,[2,13]),{26:35,31:r},{31:[2,14]},{17:[1,36]},e(y,[2,24]),{10:t,11:37,13:4,14:22,15:u,16:d,19:5,20:6,21:s,22:8,23:9,24:10,25:11,26:12,28:n,29:i,31:r,39:o,43:a,46:c},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(p,[2,30]),{18:[1,43]},{18:[1,44]},e(y,[2,23]),{18:[1,45]},{30:[1,46]},e(g,[2,28]),e(g,[2,35]),e(g,[2,36]),e(g,[2,37]),e(g,[2,38]),{36:[1,47]},{33:48,34:b},{15:[1,50]},e(g,[2,27]),e(p,[2,33]),{38:[1,51]},{33:52,34:b,38:[2,31]},{31:[2,15]},e(p,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:(0,l.K)(function(e,t){if(!t.recoverable){var s=new Error(e);throw s.hash=t,s}this.trace(e)},"parseError"),parse:(0,l.K)(function(e){var t=this,s=[0],n=[],i=[null],r=[],o=this.table,a="",c=0,h=0,g=0,u=r.slice.call(arguments,1),d=Object.create(this.lexer),y={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(y.yy[p]=this.yy[p]);d.setInput(e,y.yy),y.yy.lexer=d,y.yy.parser=this,void 0===d.yylloc&&(d.yylloc={});var b=d.yylloc;r.push(b);var f=d.options&&d.options.ranges;function x(){var e;return"number"!=typeof(e=n.pop()||d.lex()||1)&&(e instanceof Array&&(e=(n=e).pop()),e=t.symbols_[e]||e),e}"function"==typeof y.yy.parseError?this.parseError=y.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,l.K)(function(e){s.length=s.length-2*e,i.length=i.length-e,r.length=r.length-e},"popStack"),(0,l.K)(x,"lex");for(var S,m,L,_,k,w,E,D,I,T={};;){if(L=s[s.length-1],this.defaultActions[L]?_=this.defaultActions[L]:(null==S&&(S=x()),_=o[L]&&o[L][S]),void 0===_||!_.length||!_[0]){var $="";for(w in I=[],o[L])this.terminals_[w]&&w>2&&I.push("'"+this.terminals_[w]+"'");$=d.showPosition?"Parse error on line "+(c+1)+":\n"+d.showPosition()+"\nExpecting "+I.join(", ")+", got '"+(this.terminals_[S]||S)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==S?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError($,{text:d.match,token:this.terminals_[S]||S,line:d.yylineno,loc:b,expected:I})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+S);switch(_[0]){case 1:s.push(S),i.push(d.yytext),r.push(d.yylloc),s.push(_[1]),S=null,m?(S=m,m=null):(h=d.yyleng,a=d.yytext,c=d.yylineno,b=d.yylloc,g>0&&g--);break;case 2:if(E=this.productions_[_[1]][1],T.$=i[i.length-E],T._$={first_line:r[r.length-(E||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(E||1)].first_column,last_column:r[r.length-1].last_column},f&&(T._$.range=[r[r.length-(E||1)].range[0],r[r.length-1].range[1]]),void 0!==(k=this.performAction.apply(T,[a,h,c,y.yy,_[1],i,r].concat(u))))return k;E&&(s=s.slice(0,-1*E*2),i=i.slice(0,-1*E),r=r.slice(0,-1*E)),s.push(this.productions_[_[1]][0]),i.push(T.$),r.push(T._$),D=o[s[s.length-2]][s[s.length-1]],s.push(D);break;case 3:return!0}}return!0},"parse")},x=function(){return{EOF:1,parseError:(0,l.K)(function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},"parseError"),setInput:(0,l.K)(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:(0,l.K)(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},"input"),unput:(0,l.K)(function(e){var t=e.length,s=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var 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),s.length-1&&(this.yylineno-=s.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===n.length?this.yylloc.first_column:0)+n[n.length-s.length].length-s[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:(0,l.K)(function(){return this._more=!0,this},"more"),reject:(0,l.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,l.K)(function(e){this.unput(this.match.slice(e))},"less"),pastInput:(0,l.K)(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,l.K)(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,l.K)(function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},"showPosition"),test_match:(0,l.K)(function(e,t){var s,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=e[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+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],s=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in i)this[r]=i[r];return!1}return!1},"test_match"),next:(0,l.K)(function(){if(this.done)return this.EOF;var e,t,s,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),r=0;r<i.length;r++)if((s=this._input.match(this.rules[i[r]]))&&(!t||s[0].length>t[0].length)){if(t=s,n=r,this.options.backtrack_lexer){if(!1!==(e=this.test_match(s,i[r])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[n]))&&e:""===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,l.K)(function(){var e=this.next();return e||this.lex()},"lex"),begin:(0,l.K)(function(e){this.conditionStack.push(e)},"begin"),popState:(0,l.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,l.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,l.K)(function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},"topState"),pushState:(0,l.K)(function(e){this.begin(e)},"pushState"),stateStackSize:(0,l.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:(0,l.K)(function(e,t,s,n){switch(s){case 0:return e.getLogger().debug("Found block-beta"),10;case 1:return e.getLogger().debug("Found id-block"),29;case 2:return e.getLogger().debug("Found block"),10;case 3:e.getLogger().debug(".",t.yytext);break;case 4:e.getLogger().debug("_",t.yytext);break;case 5:return 5;case 6:return t.yytext=-1,28;case 7:return t.yytext=t.yytext.replace(/columns\s+/,""),e.getLogger().debug("COLUMNS (LEX)",t.yytext),28;case 8:case 76:case 77:case 99:this.pushState("md_string");break;case 9:return"MD_STR";case 10:case 34:case 79:this.popState();break;case 11:this.pushState("string");break;case 12:e.getLogger().debug("LEX: POPPING STR:",t.yytext),this.popState();break;case 13:return e.getLogger().debug("LEX: STR end:",t.yytext),"STR";case 14:return t.yytext=t.yytext.replace(/space\:/,""),e.getLogger().debug("SPACE NUM (LEX)",t.yytext),21;case 15:return t.yytext="1",e.getLogger().debug("COLUMNS (LEX)",t.yytext),21;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 21:return this.popState(),this.pushState("CLASSDEFID"),40;case 22:return this.popState(),41;case 23:return this.pushState("CLASS"),43;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;case 25:return this.popState(),45;case 26:return this.pushState("STYLE_STMNT"),46;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;case 28:return this.popState(),48;case 29:return this.pushState("acc_title"),"acc_title";case 30:return this.popState(),"acc_title_value";case 31:return this.pushState("acc_descr"),"acc_descr";case 32:return this.popState(),"acc_descr_value";case 33:this.pushState("acc_descr_multiline");break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:case 38:case 40:case 41:case 44:return this.popState(),e.getLogger().debug("Lex: (("),"NODE_DEND";case 39:return this.popState(),e.getLogger().debug("Lex: ))"),"NODE_DEND";case 42:return this.popState(),e.getLogger().debug("Lex: (-"),"NODE_DEND";case 43:return this.popState(),e.getLogger().debug("Lex: -)"),"NODE_DEND";case 45:return this.popState(),e.getLogger().debug("Lex: ]]"),"NODE_DEND";case 46:return this.popState(),e.getLogger().debug("Lex: ("),"NODE_DEND";case 47:return this.popState(),e.getLogger().debug("Lex: ])"),"NODE_DEND";case 48:case 49:return this.popState(),e.getLogger().debug("Lex: /]"),"NODE_DEND";case 50:return this.popState(),e.getLogger().debug("Lex: )]"),"NODE_DEND";case 51:return this.popState(),e.getLogger().debug("Lex: )"),"NODE_DEND";case 52:return this.popState(),e.getLogger().debug("Lex: ]>"),"NODE_DEND";case 53:return this.popState(),e.getLogger().debug("Lex: ]"),"NODE_DEND";case 54:return e.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;case 55:return e.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;case 56:return e.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;case 57:case 59:case 60:case 61:case 64:return e.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;case 58:return e.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;case 62:return e.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;case 63:return e.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;case 65:case 66:case 67:case 68:case 69:case 70:case 71:return this.pushState("NODE"),35;case 72:return e.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;case 73:return this.pushState("BLOCK_ARROW"),e.getLogger().debug("LEX ARR START"),37;case 74:return e.getLogger().debug("Lex: NODE_ID",t.yytext),31;case 75:return e.getLogger().debug("Lex: EOF",t.yytext),8;case 78:return"NODE_DESCR";case 80:e.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:e.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return e.getLogger().debug("LEX: NODE_DESCR:",t.yytext),"NODE_DESCR";case 83:e.getLogger().debug("LEX POPPING"),this.popState();break;case 84:e.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (right): dir:",t.yytext),"DIR";case 86:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (left):",t.yytext),"DIR";case 87:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (x):",t.yytext),"DIR";case 88:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (y):",t.yytext),"DIR";case 89:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (up):",t.yytext),"DIR";case 90:return t.yytext=t.yytext.replace(/^,\s*/,""),e.getLogger().debug("Lex (down):",t.yytext),"DIR";case 91:return t.yytext="]>",e.getLogger().debug("Lex (ARROW_DIR end):",t.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";case 92:return e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 93:case 94:case 95:return e.getLogger().debug("Lex: LINK",t.yytext),15;case 96:case 97:case 98:return e.getLogger().debug("Lex: START_LINK",t.yytext),this.pushState("LLABEL"),16;case 100:return e.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";case 101:return this.popState(),e.getLogger().debug("Lex: LINK","#"+t.yytext+"#"),15;case 102:case 103:return this.popState(),e.getLogger().debug("Lex: LINK",t.yytext),15;case 104:return e.getLogger().debug("Lex: COLON",t.yytext),t.yytext=t.yytext.slice(1),27}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:=]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}}}();function S(){this.yy={}}return f.lexer=x,(0,l.K)(S,"Parser"),S.prototype=f,f.Parser=S,new S}();p.parser=p;var b=p,f=new Map,x=[],S=new Map,m="color",L="fill",_=new Map,k="",w=(0,l.K)(e=>a.Y2.sanitizeText(e,(0,a.D7)()),"sanitizeText"),E=(0,l.K)(function(e,t=""){let s=_.get(e);s||(s={id:e,styles:[],textStyles:[]},_.set(e,s)),null!=t&&t.split(",").forEach(e=>{const t=e.replace(/([^;]*);/,"$1").trim();if(RegExp(m).exec(e)){const e=t.replace(L,"bgFill").replace(m,L);s.textStyles.push(e)}s.styles.push(t)})},"addStyleClass"),D=(0,l.K)(function(e,t=""){const s=f.get(e);null!=t&&(s.styles=t.split(","))},"addStyle2Node"),I=(0,l.K)(function(e,t){e.split(",").forEach(function(e){let s=f.get(e);if(void 0===s){const t=e.trim();s={id:t,type:"na",children:[]},f.set(t,s)}s.classes||(s.classes=[]),s.classes.push(t)})},"setCssClass"),T=(0,l.K)((e,t)=>{const s=e.flat(),n=[],i=s.find(e=>"column-setting"===e?.type),r=i?.columns??-1;for(const e of s)if("number"==typeof r&&r>0&&"column-setting"!==e.type&&"number"==typeof e.widthInColumns&&e.widthInColumns>r&&c.R.warn(`Block ${e.id} width ${e.widthInColumns} exceeds configured column width ${r}`),e.label&&(e.label=w(e.label)),"classDef"!==e.type)if("applyClass"!==e.type)if("applyStyles"!==e.type)if("column-setting"===e.type)t.columns=e.columns??-1;else if("edge"===e.type){const t=(S.get(e.id)??0)+1;S.set(e.id,t),e.id=t+"-"+e.id,x.push(e)}else{e.label||("composite"===e.type?e.label="":e.label=e.id);const t=f.get(e.id);if(void 0===t?f.set(e.id,e):("na"!==e.type&&(t.type=e.type),e.label!==e.id&&(t.label=e.label)),e.children&&T(e.children,e),"space"===e.type){const t=e.width??1;for(let s=0;s<t;s++){const t=(0,h.o)(e);t.id=t.id+"-"+s,f.set(t.id,t),n.push(t)}}else void 0===t&&n.push(e)}else e?.stylesStr&&D(e.id,e?.stylesStr);else I(e.id,e?.styleClass??"");else E(e.id,e.css);t.children=n},"populateBlockDatabase"),$=[],N={id:"root",type:"composite",children:[],columns:-1},O=(0,l.K)(()=>{c.R.debug("Clear called"),(0,a.IU)(),N={id:"root",type:"composite",children:[],columns:-1},f=new Map([["root",N]]),$=[],_=new Map,x=[],S=new Map,k=""},"clear");function R(e){switch(c.R.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return c.R.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function C(e){return c.R.debug("typeStr2Type",e),"=="===e?"thick":"normal"}function z(e){switch(e.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}function A(e){switch(e.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}function K(e){return e.includes("==")?"thick":"normal"}function v(e){return e.includes(".-")?"dotted":"solid"}(0,l.K)(R,"typeStr2Type"),(0,l.K)(C,"edgeTypeStr2Type"),(0,l.K)(z,"edgeStrToEdgeData"),(0,l.K)(A,"edgeStrToEdgeStartData"),(0,l.K)(K,"edgeStrToThickness"),(0,l.K)(v,"edgeStrToPattern");var B=0,P=(0,l.K)(()=>(B++,"id-"+Math.random().toString(36).substr(2,12)+"-"+B),"generateId"),F=(0,l.K)(e=>{N.children=e,T(e,N),$=N.children},"setHierarchy"),j=(0,l.K)(e=>{const t=f.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),M=(0,l.K)(()=>[...f.values()],"getBlocksFlat"),Y=(0,l.K)(()=>$||[],"getBlocks"),X=(0,l.K)(()=>x,"getEdges"),W=(0,l.K)(e=>f.get(e),"getBlock"),U=(0,l.K)(e=>{f.set(e.id,e)},"setBlock"),G=(0,l.K)(e=>{k=e},"setDiagramId"),H=(0,l.K)(()=>k,"getDiagramId"),q=(0,l.K)(()=>c.R,"getLogger"),V=(0,l.K)(function(){return _},"getClasses"),Z={getConfig:(0,l.K)(()=>(0,a.zj)().block,"getConfig"),typeStr2Type:R,edgeTypeStr2Type:C,edgeStrToEdgeData:z,edgeStrToEdgeStartData:A,edgeStrToThickness:K,edgeStrToPattern:v,getLogger:q,getBlocksFlat:M,getBlocks:Y,getEdges:X,setHierarchy:F,getBlock:W,setBlock:U,getColumns:j,getClasses:V,clear:O,generateId:P,setDiagramId:G,getDiagramId:H},J=(0,l.K)((e,t)=>{const s=u.A,n=s(e,"r"),i=s(e,"g"),r=s(e,"b");return g.A(n,i,r,t)},"fade"),Q=(0,l.K)(e=>`.label {\n font-family: ${e.fontFamily};\n color: ${e.nodeTextColor||e.textColor};\n }\n .cluster-label text {\n fill: ${e.titleColor};\n }\n .cluster-label span {\n color: ${e.titleColor};\n }\n\n\n\n .label text,span {\n fill: ${e.nodeTextColor||e.textColor};\n color: ${e.nodeTextColor||e.textColor};\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${e.mainBkg};\n stroke: ${e.nodeBorder};\n stroke-width: 1px;\n }\n .flowchart-label text {\n text-anchor: middle;\n }\n // .flowchart-label .text-outer-tspan {\n // text-anchor: middle;\n // }\n // .flowchart-label .text-inner-tspan {\n // text-anchor: start;\n // }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ${e.arrowheadColor};\n }\n\n .edgePaths .path {\n stroke: ${e.lineColor};\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ${e.lineColor};\n fill: none;\n }\n\n .edgeLabel {\n background-color: ${e.edgeLabelBackground};\n /*\n * This is for backward compatibility with existing code that didn't\n * add a \`<p>\` around edge labels.\n *\n * TODO: We should probably remove this in a future release.\n */\n p {\n margin: 0;\n padding: 0;\n display: inline;\n }\n rect {\n opacity: 0.5;\n background-color: ${e.edgeLabelBackground};\n fill: ${e.edgeLabelBackground};\n }\n text-align: center;\n }\n\n /* For html labels only */\n .labelBkg {\n background-color: ${e.edgeLabelBackground};\n }\n\n .node .cluster {\n // fill: ${J(e.mainBkg,.5)};\n fill: ${J(e.clusterBkg,.5)};\n stroke: ${J(e.clusterBorder,.2)};\n box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${e.titleColor};\n }\n\n .cluster span {\n color: ${e.titleColor};\n }\n /* .cluster div {\n color: ${e.titleColor};\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ${e.fontFamily};\n font-size: 12px;\n background: ${e.tertiaryColor};\n border: 1px solid ${e.border2};\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .flowchartTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${e.textColor};\n }\n ${(0,n.o)()}\n`,"getStyles");function ee(e,t){if(0===e||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(1===e)return{px:0,py:t};return{px:t%e,py:Math.floor(t/e)}}(0,l.K)(ee,"calculateBlockPosition");var te=(0,l.K)(e=>{let t=0,s=0;for(const n of e.children){const{width:e,height:i,x:r,y:o}=n.size??{width:0,height:0,x:0,y:0};if(c.R.debug("getMaxChildSize abc95 child:",n.id,"width:",e,"height:",i,"x:",r,"y:",o,n.type),"space"===n.type)continue;const a=e/(n.widthInColumns??1);a>t&&(t=a),i>s&&(s=i)}return{width:t,height:s}},"getMaxChildSize");function se(e,t,s=0,n=0,i=8){c.R.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",s),e?.size?.width||(e.size={width:s,height:n,x:0,y:0});let r=0,o=0;if(e.children?.length>0){for(const s of e.children)se(s,t,0,0,i);const a=te(e);r=a.width,o=a.height,c.R.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",r,o);for(const t of e.children)t.size&&(c.R.debug(`abc95 Setting size of children of ${e.id} id=${t.id} ${r} ${o} ${JSON.stringify(t.size)}`),t.size.width=r*(t.widthInColumns??1)+i*((t.widthInColumns??1)-1),t.size.height=o,t.size.x=0,t.size.y=0,c.R.debug(`abc95 updating size of ${e.id} children child:${t.id} maxWidth:${r} maxHeight:${o}`));for(const s of e.children)se(s,t,r,o,i);const l=e.columns??-1;let h=0;for(const t of e.children)h+=t.widthInColumns??1;let g=e.children.length;l>0&&l<h&&(g=l);const u=Math.ceil(h/g);let d=g*(r+i)+i,y=u*(o+i)+i;if(d<s){c.R.debug(`Detected to small sibling: abc95 ${e.id} siblingWidth ${s} siblingHeight ${n} width ${d}`),d=s,y=n;const t=(s-g*i-i)/g,a=(n-u*i-i)/u;c.R.debug("Size indata abc88",e.id,"childWidth",t,"maxWidth",r),c.R.debug("Size indata abc88",e.id,"childHeight",a,"maxHeight",o),c.R.debug("Size indata abc88 xSize",g,"padding",i);for(const s of e.children)s.size&&(s.size.width=t,s.size.height=a,s.size.x=0,s.size.y=0)}if(c.R.debug(`abc95 (finale calc) ${e.id} xSize ${g} ySize ${u} columns ${l}${e.children.length} width=${Math.max(d,e.size?.width||0)}`),d<(e?.size?.width||0)){d=e?.size?.width||0;const t=l>0?Math.min(e.children.length,l):e.children.length;if(t>0){const s=(d-t*i-i)/t;c.R.debug("abc95 (growing to fit) width",e.id,d,e.size?.width,s);for(const t of e.children)t.size&&(t.size.width=s)}}e.size={width:d,height:y,x:0,y:0}}c.R.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}function ne(e,t,s=8){c.R.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);const n=e.columns??-1;if(c.R.debug("layoutBlocks columns abc95",e.id,"=>",n,e),e.children&&e.children.length>0){const i=e?.children[0]?.size?.width??0,r=e.children.length*i+(e.children.length-1)*s;c.R.debug("widthOfChildren 88",r,"posX");const o=new Map;{let t=0;for(const s of e.children){if(!s.size)continue;const{py:e}=ee(n,t),i=o.get(e)??0;s.size.height>i&&o.set(e,s.size.height);let r=s?.widthInColumns??1;n>0&&(r=Math.min(r,n-t%n)),t+=r}}const a=new Map;{let e=0;const t=[...o.keys()].sort((e,t)=>e-t);for(const n of t)a.set(n,e),e+=(o.get(n)??0)+s}let l=0;c.R.debug("abc91 block?.size?.x",e.id,e?.size?.x);let h=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-s,g=0;for(const i of e.children){const r=e;if(!i.size)continue;const{width:u,height:d}=i.size,{px:y,py:p}=ee(n,l);if(p!=g&&(g=p,h=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-s,c.R.debug("New row in layout for block",e.id," and child ",i.id,g)),c.R.debug(`abc89 layout blocks (child) id: ${i.id} Pos: ${l} (px, py) ${y},${p} (${r?.size?.x},${r?.size?.y}) parent: ${r.id} width: ${u}${s}`),r.size){const e=u/2;i.size.x=h+s+e,c.R.debug(`abc91 layout blocks (calc) px, pyid:${i.id} startingPos=X${h} new startingPosX${i.size.x} ${e} padding=${s} width=${u} halfWidth=${e} => x:${i.size.x} y:${i.size.y} ${i.widthInColumns} (width * (child?.w || 1)) / 2 ${u*(i?.widthInColumns??1)/2}`),h=i.size.x+e;const t=a.get(p)??0,n=o.get(p)??d;i.size.y=r.size.y-r.size.height/2+t+n/2+s,c.R.debug(`abc88 layout blocks (calc) px, pyid:${i.id}startingPosX${h}${s}${e}=>x:${i.size.x}y:${i.size.y}${i.widthInColumns}(width * (child?.w || 1)) / 2${u*(i?.widthInColumns??1)/2}`)}i.children&&ne(i,t,s);let b=i?.widthInColumns??1;n>0&&(b=Math.min(b,n-l%n)),l+=b,c.R.debug("abc88 columnsPos",i,l)}}c.R.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}function ie(e,{minX:t,minY:s,maxX:n,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&"root"!==e.id){const{x:r,y:o,width:a,height:c}=e.size;r-a/2<t&&(t=r-a/2),o-c/2<s&&(s=o-c/2),r+a/2>n&&(n=r+a/2),o+c/2>i&&(i=o+c/2)}if(e.children)for(const r of e.children)({minX:t,minY:s,maxX:n,maxY:i}=ie(r,{minX:t,minY:s,maxX:n,maxY:i}));return{minX:t,minY:s,maxX:n,maxY:i}}function re(e){const t=e.getBlock("root");if(!t)return;const s=(0,a.D7)()?.block?.padding??8;se(t,e,0,0,s),ne(t,e,s),c.R.debug("getBlocks",JSON.stringify(t,null,2));const{minX:n,minY:i,maxX:r,maxY:o}=ie(t);return{x:n,y:i,width:r-n,height:o-i}}function oe(e,t,s=!1){const n=e;let i="default";(n?.classes?.length||0)>0&&(i=(n?.classes??[]).join(" ")),i+=" flowchart-label";const r=(n?.classes??[]).flatMap(e=>t.getClasses().get(e)?.styles??[]);let c,l=0,h="rect";switch(n.type){case"round":l=5,h="rect";break;case"composite":l=0,h="composite",c=0;break;case"square":case"group":default:h="rect";break;case"diamond":h="question";break;case"hexagon":h="hexagon";break;case"block_arrow":h="block_arrow";break;case"odd":case"rect_left_inv_arrow":h="rect_left_inv_arrow";break;case"lean_right":h="lean_right";break;case"lean_left":h="lean_left";break;case"trapezoid":h="trapezoid";break;case"inv_trapezoid":h="inv_trapezoid";break;case"circle":h="circle";break;case"ellipse":h="ellipse";break;case"stadium":h="stadium";break;case"subroutine":h="subroutine";break;case"cylinder":h="cylinder";break;case"doublecircle":h="doublecircle"}const g=(0,o.sM)(n?.styles??[]),u=n.label,d=n.size??{width:0,height:0,x:0,y:0},y=t.getDiagramId();return{labelStyle:g.labelStyle,shape:h,label:u,labelText:u,rx:l,ry:l,class:i,cssClasses:i,cssStyles:n?.styles??[],cssCompiledStyles:r,style:g.style,id:n.id,domId:y?`${y}-${n.id}`:n.id,isGroup:!1,directions:n.directions,width:d.width||void 0,height:d.height||void 0,wrappingWidth:d.width||Number.POSITIVE_INFINITY,x:d.x,y:d.y,positioned:s,intersect:void 0,padding:c??(0,a.zj)()?.block?.padding??0,widthInColumns:n.widthInColumns??1}}async function ae(e,t,s){const n=oe(t,s,!1);if("group"===t.type)return;const i=(0,a.zj)(),o=await(0,r.on)(e,n,{config:i}),c=o.node()?.getBBox()??{width:0,height:0},l=s.getBlock(n.id);l.size={width:c.width,height:c.height,x:0,y:0,node:o},s.setBlock(l),o.remove()}async function ce(e,t,s){const n=oe(t,s,!0);if("space"!==s.getBlock(n.id).type){const s=(0,a.zj)();await(0,r.on)(e,n,{config:s}),t.intersect=n?.intersect,(0,r.U_)(n)}}async function le(e,t,s,n){for(const i of t)await n(e,i,s),i.children&&await le(e,i.children,s,n)}async function he(e,t,s){await le(e,t,s,ae)}async function ge(e,t,s){await le(e,t,s,ce)}async function ue(e,t,s,n,r){const o=new y.T({multigraph:!0,compound:!0});o.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(const e of s)e.size&&o.setNode(e.id,{width:e.size.width,height:e.size.height,intersect:e.intersect});for(const s of t)if(s.start&&s.end){const t=n.getBlock(s.start),a=n.getBlock(s.end);if(t?.size&&a?.size){const n=t.size,c=a.size,l=[{x:n.x,y:n.y},{x:n.x+(c.x-n.x)/2,y:n.y+(c.y-n.y)/2},{x:c.x,y:c.y}],h=r?`${r}-${s.id}`:s.id,g=`${"thick"===s.thickness?"edge-thickness-thick":"edge-thickness-normal"} ${"dotted"===s.pattern?"edge-pattern-dotted":"edge-pattern-solid"} flowchart-link LS-a1 LE-b1`;(0,i.Jo)(e,{...s,id:h,arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:l,classes:g},{},"block",o.node(s.start),o.node(s.end),r),s.label&&(await(0,i.jP)(e,{...s,label:s.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:s.arrowTypeEnd,arrowTypeStart:s.arrowTypeStart,points:l,classes:g}),(0,i.T_)({...s,x:l[1].x,y:l[1].y},{originalPath:l}))}}}(0,l.K)(se,"setBlockSizes"),(0,l.K)(ne,"layoutBlocks"),(0,l.K)(ie,"findBounds"),(0,l.K)(re,"layout"),(0,l.K)(oe,"getNodeFromBlock"),(0,l.K)(ae,"calculateBlockSize"),(0,l.K)(ce,"insertBlockPositioned"),(0,l.K)(le,"performOperations"),(0,l.K)(he,"calculateBlockSizes"),(0,l.K)(ge,"insertBlocks"),(0,l.K)(ue,"insertEdges");var de=(0,l.K)(function(e,t){return t.db.getClasses()},"getClasses"),ye={parser:b,db:Z,renderer:{draw:(0,l.K)(async function(e,t,s,n){const{securityLevel:r,block:o}=(0,a.zj)(),l=n.db;let h;l.setDiagramId(t),"sandbox"===r&&(h=(0,d.Ltv)("#i"+t));const g="sandbox"===r?(0,d.Ltv)(h.nodes()[0].contentDocument.body):(0,d.Ltv)("body"),u="sandbox"===r?g.select(`[id="${t}"]`):(0,d.Ltv)(`[id="${t}"]`);(0,i.g0)(u,["point","circle","cross"],n.type,t);const y=l.getBlocks(),p=l.getBlocksFlat(),b=l.getEdges(),f=u.insert("g").attr("class","block");await he(f,y,l);const x=re(l);await ge(f,y,l),await ue(f,b,p,l,t);const S=f.node()?.getBBox(),m=S&&Number.isFinite(S.width)&&Number.isFinite(S.height)?S:x;if(m){const e=Math.max(1,Math.round(m.width/m.height*.125)),t=m.height+e+10,s=m.width+10,{useMaxWidth:n}=o;(0,a.a$)(u,t,s,!!n),c.R.debug("Here Bounds",x,m),u.attr("viewBox",`${m.x-5} ${m.y-5} ${m.width+10} ${m.height+10}`)}},"draw"),getClasses:de},styles:Q}},37703(e,t,s){s.d(t,{o:()=>n});var n=(0,s(27698).K)(()=>"\n /* Font Awesome icon styling - consolidated */\n .label-icon {\n display: inline-block;\n height: 1em;\n overflow: visible;\n vertical-align: -0.125em;\n }\n \n .node .label-icon path {\n fill: currentColor;\n stroke: revert;\n stroke-width: revert;\n }\n","getIconStyles")},33778(e,t,s){s.d(t,{o:()=>a});var n=s(37110),i=s(99125),r=s(89826);var o=s(19663);function a(e){if((0,n.s)(e))return e;const t=(0,i.b)(e);if(!function(e){switch((0,i.b)(e)){case r.R_:case r.Uw:case r.cT:case r.iq:case r.$V:case r.vC:case r.ri:case r.ML:case r.XZ:case r.i1:case r._u:case r.pj:case r.kj:case r.GX:case r.Av:case r.NA:case r.OG:case r.VP:case r.Qb:case r.q:case r.x6:case r.ZR:return!0;default:return!1}}(e))return{};if(s=e,Array.isArray(s)){const t=Array.from(e);return e.length>0&&"string"==typeof e[0]&&Object.hasOwn(e,"index")&&(t.index=e.index,t.input=e.input),t}var s;if((0,o.i)(e)){const t=e;return new(0,t.constructor)(t.buffer,t.byteOffset,t.length)}if("[object ArrayBuffer]"===t)return new ArrayBuffer(e.byteLength);if("[object DataView]"===t){const t=e,s=t.buffer,n=t.byteOffset,i=t.byteLength,r=new ArrayBuffer(i),o=new Uint8Array(s,n,i);return new Uint8Array(r).set(o),new DataView(r)}if("[object Boolean]"===t||"[object Number]"===t||"[object String]"===t){const s=new(0,e.constructor)(e.valueOf());return"[object String]"===t?function(e,t){const s=t.valueOf().length;for(const n in t)Object.hasOwn(t,n)&&(Number.isNaN(Number(n))||Number(n)>=s)&&(e[n]=t[n])}(s,e):c(s,e),s}if("[object Date]"===t)return new Date(Number(e));if("[object RegExp]"===t){const t=e,s=new RegExp(t.source,t.flags);return s.lastIndex=t.lastIndex,s}if("[object Symbol]"===t)return Object(Symbol.prototype.valueOf.call(e));if("[object Map]"===t){const t=e,s=new Map;return t.forEach((e,t)=>{s.set(t,e)}),s}if("[object Set]"===t){const t=e,s=new Set;return t.forEach(e=>{s.add(e)}),s}if("[object Arguments]"===t){const t=e,s={};return c(s,t),s.length=t.length,s[Symbol.iterator]=t[Symbol.iterator],s}const a={};return function(e,t){const s=Object.getPrototypeOf(t);null!==s&&"function"==typeof t.constructor&&Object.setPrototypeOf(e,s)}(a,e),c(a,e),function(e,t){const s=Object.getOwnPropertySymbols(t);for(let n=0;n<s.length;n++){const i=s[n];Object.prototype.propertyIsEnumerable.call(t,i)&&(e[i]=t[i])}}(a,e),a}function c(e,t){for(const s in t)Object.hasOwn(t,s)&&(e[s]=t[s])}},75937(e,t,s){s.d(t,{A:()=>r});var n=s(86309),i=s(51931);const r=(e,t)=>n.A.lang.round(i.A.parse(e)[t])}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[612],{10612(e,t,n){n.d(t,{captureNodeSizes:()=>u});var i=n(27698);function o(){if("undefined"!=typeof globalThis)return globalThis}function a(){return"undefined"==typeof location?"browser-dev":`${location.pathname}${location.search}`}function r(e,t){const n=o();if(!n)return;const i=t.node(),a=(i&&"ownerSVGElement"in i?i.ownerSVGElement:null)??i,r=a?.id??"(unknown)";n.mermaidCapturedSizes??=[];const u={svgId:r,sizes:e};n.mermaidCapturedSizes.push(u),n.mermaidLastCapturedSizes=u}function u(e,t){const n=[];for(const e of t.nodes)e.isGroup||n.push({id:e.id,width:e.width??0,height:e.height??0});0!==n.length&&r({metadata:{captureVersion:1,capturedAt:(new Date).toISOString(),capturedFrom:a()},nodes:n},e)}(0,i.K)(o,"getCaptureGlobal"),(0,i.K)(function(){return Boolean(o()?.mermaidCaptureSizes)},"shouldCaptureSizes"),(0,i.K)(a,"capturedFromLocation"),(0,i.K)(r,"emitCapturedSizes"),(0,i.K)(u,"captureNodeSizes")}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[625],{98889(t,e,s){s.d(e,{P:()=>a});var i=s(20886),n=s(84828),r=s(27698),a=(0,r.K)((t,e,s,r)=>{t.attr("class",s);const{width:a,height:l,x:h,y:u}=o(t,e);(0,i.a$)(t,l,a,r);const d=c(h,u,a,l,e);t.attr("viewBox",d),n.R.debug(`viewBox configured: ${d} with padding: ${e}`)},"setupViewPortForSVG"),o=(0,r.K)((t,e)=>{const s=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:s.width+2*e,height:s.height+2*e,x:s.x,y:s.y}},"calculateDimensionsWithPadding"),c=(0,r.K)((t,e,s,i,n)=>`${t-n} ${e-n} ${s} ${i}`,"createViewBox")},79762(t,e,s){s.d(e,{A:()=>r});var i=s(27698),n=s(51444),r=(0,i.K)((t,e)=>{let s;"sandbox"===e&&(s=(0,n.Ltv)("#i"+t));return("sandbox"===e?(0,n.Ltv)(s.nodes()[0].contentDocument.body):(0,n.Ltv)("body")).select(`[id="${t}"]`)},"getDiagramElement")},60625(t,e,s){s.d(e,{diagram:()=>S});var i=s(79762),n=s(98889),r=s(89008),a=(s(68741),s(31139),s(26388),s(92662),s(27280),s(56289),s(19831),s(73145)),o=s(20886),c=s(84828),l=s(27698),h=s(51444),u=s(25582),d=s(75937),y=function(){var t=(0,l.K)(function(t,e,s,i){for(s=s||{},i=t.length;i--;s[t[i]]=e);return s},"o"),e=[6,9,21,23,25,27,34,37,38,39,40,41,43,46,47,51,53,54,55],s=[2,2],i=[1,7],n=[1,9],r=[1,10],a=[1,11],o=[1,12],c=[1,30],h=[1,23],u=[1,24],d=[1,25],y=[1,26],p=[1,27],b=[1,19],g=[1,28],_=[1,29],f=[1,20],m=[1,18],k=[1,21],E=[1,22],S=[2,6],$=[6,9,21,23,25,27,33,34,37,38,39,40,41,43,46,47,51,53,54,55],T=[1,36],O=[1,37],x=[1,38],N=[1,39],C=[1,40],A=[6,9,12,14,16,19,20,21,23,25,27,33,34,37,38,39,40,41,43,46,47,50,51,53,54,55,69,70,71,72,73],R=[1,46],I=[1,47],D=[1,57],w=[43,51,53,54,55,74,75],v=[1,70],L=[1,68],K=[1,65],M=[1,69],B=[1,71],G=[6,9,12,16,21,23,25,27,33,34,37,38,39,40,41,43,44,45,46,47,51,52,53,54,55,69,70,71,72,73],F=[1,78],Y=[1,77],P=[1,76],z=[69,70,71,72,73],U=[1,91],Z=[6,9,45,50],j=[6,9,12,44,45,50,51,52],W=[1,101],q=[1,100],X=[1,99],V=[18,61],H=[1,110],Q=[1,109],J=[20,43,51,53,54,55],tt=[18,61,64,66],et={trace:(0,l.K)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,statement:8,NEWLINE:9,entityName:10,relSpec:11,COLON:12,role:13,STYLE_SEPARATOR:14,idList:15,BLOCK_START:16,attributes:17,BLOCK_STOP:18,SQS:19,SQE:20,title:21,title_value:22,acc_title:23,acc_title_value:24,acc_descr:25,acc_descr_value:26,acc_descr_multiline_value:27,direction:28,classDefStatement:29,classStatement:30,styleStatement:31,subgraphHeader:32,END:33,SUBGRAPH:34,separator:35,subgraphTitle:36,direction_tb:37,direction_bt:38,direction_rl:39,direction_lr:40,CLASSDEF:41,stylesOpt:42,UNICODE_TEXT:43,STYLE_TEXT:44,COMMA:45,CLASS:46,STYLE:47,style:48,styleComponent:49,SEMI:50,NUM:51,BRKT:52,ENTITY_NAME:53,DECIMAL_NUM:54,ENTITY_ONE:55,attribute:56,attributeType:57,attributeName:58,attributeKeyTypeList:59,attributeComment:60,ATTRIBUTE_WORD:61,"?":62,attributeKeyType:63,",":64,ATTRIBUTE_KEY:65,COMMENT:66,cardinality:67,relType:68,ZERO_OR_ONE:69,ZERO_OR_MORE:70,ONE_OR_MORE:71,ONLY_ONE:72,MD_PARENT:73,NON_IDENTIFYING:74,IDENTIFYING:75,WORD:76,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"NEWLINE",12:"COLON",14:"STYLE_SEPARATOR",16:"BLOCK_START",18:"BLOCK_STOP",19:"SQS",20:"SQE",21:"title",22:"title_value",23:"acc_title",24:"acc_title_value",25:"acc_descr",26:"acc_descr_value",27:"acc_descr_multiline_value",33:"END",34:"SUBGRAPH",37:"direction_tb",38:"direction_bt",39:"direction_rl",40:"direction_lr",41:"CLASSDEF",43:"UNICODE_TEXT",44:"STYLE_TEXT",45:"COMMA",46:"CLASS",47:"STYLE",50:"SEMI",51:"NUM",52:"BRKT",53:"ENTITY_NAME",54:"DECIMAL_NUM",55:"ENTITY_ONE",61:"ATTRIBUTE_WORD",62:"?",64:",",65:"ATTRIBUTE_KEY",66:"COMMENT",69:"ZERO_OR_ONE",70:"ZERO_OR_MORE",71:"ONE_OR_MORE",72:"ONLY_ONE",73:"MD_PARENT",74:"NON_IDENTIFYING",75:"IDENTIFYING",76:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[7,1],[8,5],[8,9],[8,7],[8,7],[8,4],[8,6],[8,3],[8,5],[8,1],[8,3],[8,7],[8,9],[8,6],[8,8],[8,4],[8,6],[8,2],[8,2],[8,2],[8,1],[8,1],[8,1],[8,1],[8,1],[8,3],[32,3],[32,6],[36,1],[36,2],[28,1],[28,1],[28,1],[28,1],[29,4],[15,1],[15,1],[15,3],[15,3],[30,3],[31,4],[42,1],[42,3],[48,1],[48,2],[35,1],[35,1],[35,1],[49,1],[49,1],[49,1],[49,1],[10,1],[10,1],[10,1],[10,1],[10,1],[17,1],[17,2],[56,2],[56,3],[56,3],[56,4],[57,1],[57,2],[58,1],[59,1],[59,3],[63,1],[60,1],[11,3],[67,1],[67,1],[67,1],[67,1],[67,1],[68,1],[68,1],[13,1],[13,1],[13,1]],performAction:(0,l.K)(function(t,e,s,i,n,r,a){var o=r.length-1;switch(n){case 1:break;case 2:case 5:case 6:this.$=[];break;case 3:this.$=r[o-1].concat(r[o]);break;case 4:case 34:case 59:case 60:case 61:case 62:case 86:case 69:case 71:case 74:this.$=r[o];break;case 7:i.addEntity(r[o-4]),i.addEntity(r[o-2]),i.addRelationship(r[o-4],r[o],r[o-2],r[o-3]),this.$=[r[o-4],r[o-2]];break;case 8:i.addEntity(r[o-8]),i.addEntity(r[o-4]),i.addRelationship(r[o-8],r[o],r[o-4],r[o-5]),i.setClass([r[o-8]],r[o-6]),i.setClass([r[o-4]],r[o-2]),this.$=[r[o-8],r[o-4]];break;case 9:i.addEntity(r[o-6]),i.addEntity(r[o-2]),i.addRelationship(r[o-6],r[o],r[o-2],r[o-3]),i.setClass([r[o-6]],r[o-4]),this.$=[r[o-6],r[o-2]];break;case 10:i.addEntity(r[o-6]),i.addEntity(r[o-4]),i.addRelationship(r[o-6],r[o],r[o-4],r[o-5]),i.setClass([r[o-4]],r[o-2]),this.$=[r[o-6],r[o-4]];break;case 11:i.addEntity(r[o-3]),i.addAttributes(r[o-3],r[o-1]),this.$=[r[o-3]];break;case 12:i.addEntity(r[o-5]),i.addAttributes(r[o-5],r[o-1]),i.setClass([r[o-5]],r[o-3]),this.$=[r[o-5]];break;case 13:i.addEntity(r[o-2]),this.$=[r[o-2]];break;case 14:i.addEntity(r[o-4]),i.setClass([r[o-4]],r[o-2]),this.$=[r[o-4]];break;case 15:i.addEntity(r[o]),this.$=[r[o]];break;case 16:i.addEntity(r[o-2]),i.setClass([r[o-2]],r[o]),this.$=[r[o-2]];break;case 17:i.addEntity(r[o-6],r[o-4]),i.addAttributes(r[o-6],r[o-1]),this.$=[r[o-6]];break;case 18:i.addEntity(r[o-8],r[o-6]),i.addAttributes(r[o-8],r[o-1]),i.setClass([r[o-8]],r[o-3]),this.$=[r[o-8]];break;case 19:i.addEntity(r[o-5],r[o-3]),this.$=[r[o-5]];break;case 20:i.addEntity(r[o-7],r[o-5]),i.setClass([r[o-7]],r[o-2]),this.$=[r[o-7]];break;case 21:i.addEntity(r[o-3],r[o-1]);break;case 22:i.addEntity(r[o-5],r[o-3]),i.setClass([r[o-5]],r[o]);break;case 23:case 24:this.$=r[o].trim(),i.setAccTitle(this.$);break;case 25:case 26:this.$=r[o].trim(),i.setAccDescription(this.$);break;case 27:i.subgraphDepth?this.$=r[o]:(i.setDirection(r[o].value),this.$=[]);break;case 31:i.subgraphDepth=(i.subgraphDepth||1)-1,this.$=i.addSubGraph({text:r[o-2].id},r[o-1],{text:r[o-2].text});break;case 32:i.subgraphDepth=(i.subgraphDepth||0)+1,this.$={id:r[o-1],text:r[o-1]};break;case 33:i.subgraphDepth=(i.subgraphDepth||0)+1,this.$={id:r[o-4],text:r[o-2]};break;case 35:this.$=r[o-1]+" "+r[o];break;case 36:this.$={stmt:"dir",value:"TB"};break;case 37:this.$={stmt:"dir",value:"BT"};break;case 38:this.$={stmt:"dir",value:"RL"};break;case 39:this.$={stmt:"dir",value:"LR"};break;case 40:this.$=r[o-3],i.addClass(r[o-2],r[o-1]);break;case 41:case 42:case 63:case 72:case 47:this.$=[r[o]];break;case 43:case 44:this.$=r[o-2].concat([r[o]]);break;case 45:this.$=r[o-2],i.setClass(r[o-1],r[o]);break;case 46:this.$=r[o-3],i.addCssStyles(r[o-2],r[o-1]);break;case 48:case 73:r[o-2].push(r[o]),this.$=r[o-2];break;case 50:case 70:this.$=r[o-1]+r[o];break;case 58:case 84:case 85:case 75:this.$=r[o].replace(/"/g,"");break;case 64:r[o].push(r[o-1]),this.$=r[o];break;case 65:this.$={type:r[o-1],name:r[o]};break;case 66:this.$={type:r[o-2],name:r[o-1],keys:r[o]};break;case 67:this.$={type:r[o-2],name:r[o-1],comment:r[o]};break;case 68:this.$={type:r[o-3],name:r[o-2],keys:r[o-1],comment:r[o]};break;case 76:this.$={cardA:r[o],relType:r[o-1],cardB:r[o-2]};break;case 77:this.$=i.Cardinality.ZERO_OR_ONE;break;case 78:this.$=i.Cardinality.ZERO_OR_MORE;break;case 79:this.$=i.Cardinality.ONE_OR_MORE;break;case 80:this.$=i.Cardinality.ONLY_ONE;break;case 81:this.$=i.Cardinality.MD_PARENT;break;case 82:this.$=i.Identification.NON_IDENTIFYING;break;case 83:this.$=i.Identification.IDENTIFYING}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,s,{5:3}),{6:[1,4],7:5,8:6,9:i,10:8,21:n,23:r,25:a,27:o,28:13,29:14,30:15,31:16,32:17,34:c,37:h,38:u,39:d,40:y,41:p,43:b,46:g,47:_,51:f,53:m,54:k,55:E},t(e,S,{1:[2,1]}),t($,[2,3]),t($,[2,4]),t($,[2,5]),t($,[2,15],{11:31,67:35,14:[1,32],16:[1,33],19:[1,34],69:T,70:O,71:x,72:N,73:C}),{22:[1,41]},{24:[1,42]},{26:[1,43]},t($,[2,26]),t($,[2,27]),t($,[2,28]),t($,[2,29]),t($,[2,30]),t($,s,{5:44}),t(A,[2,58]),t(A,[2,59]),t(A,[2,60]),t(A,[2,61]),t(A,[2,62]),t($,[2,36]),t($,[2,37]),t($,[2,38]),t($,[2,39]),{15:45,43:R,44:I},{15:48,43:R,44:I},{15:49,43:R,44:I},{10:50,43:b,51:f,53:m,54:k,55:E},{10:51,43:b,51:f,53:m,54:k,55:E},{15:52,43:R,44:I},{17:53,18:[1,54],56:55,57:56,61:D},{10:58,43:b,51:f,53:m,54:k,55:E},{68:59,74:[1,60],75:[1,61]},t(w,[2,77]),t(w,[2,78]),t(w,[2,79]),t(w,[2,80]),t(w,[2,81]),t($,[2,23]),t($,[2,24]),t($,[2,25]),{6:[1,63],7:5,8:6,9:i,10:8,21:n,23:r,25:a,27:o,28:13,29:14,30:15,31:16,32:17,33:[1,62],34:c,37:h,38:u,39:d,40:y,41:p,43:b,46:g,47:_,51:f,53:m,54:k,55:E},{12:v,42:64,44:L,45:K,48:66,49:67,51:M,52:B},t(G,[2,41]),t(G,[2,42]),{15:72,43:R,44:I,45:K},{12:v,42:73,44:L,45:K,48:66,49:67,51:M,52:B},{6:F,9:Y,19:[1,75],35:74,50:P},{12:[1,79],14:[1,80]},t($,[2,16],{67:35,11:81,16:[1,82],45:K,69:T,70:O,71:x,72:N,73:C}),{18:[1,83]},t($,[2,13]),{17:84,18:[2,63],56:55,57:56,61:D},{58:85,61:[1,86]},{61:[2,69],62:[1,87]},{20:[1,88]},{67:89,69:T,70:O,71:x,72:N,73:C},t(z,[2,82]),t(z,[2,83]),t($,[2,31]),t($,S),{6:F,9:Y,35:90,45:U,50:P},{43:[1,92],44:[1,93]},t(Z,[2,47],{49:94,12:v,44:L,51:M,52:B}),t(j,[2,49]),t(j,[2,54]),t(j,[2,55]),t(j,[2,56]),t(j,[2,57]),t($,[2,45],{45:K}),{6:F,9:Y,35:95,45:U,50:P},t($,[2,32]),{10:97,36:96,43:b,51:f,53:m,54:k,55:E},t($,[2,51]),t($,[2,52]),t($,[2,53]),{13:98,43:W,53:q,76:X},{15:102,43:R,44:I},{10:103,43:b,51:f,53:m,54:k,55:E},{17:104,18:[1,105],56:55,57:56,61:D},t($,[2,11]),{18:[2,64]},t(V,[2,65],{59:106,60:107,63:108,65:H,66:Q}),t([18,61,65,66],[2,71]),{61:[2,70]},t($,[2,21],{14:[1,112],16:[1,111]}),t([43,51,53,54,55],[2,76]),t($,[2,40]),{12:v,44:L,48:113,49:67,51:M,52:B},t(G,[2,43]),t(G,[2,44]),t(j,[2,50]),t($,[2,46]),{10:115,20:[1,114],43:b,51:f,53:m,54:k,55:E},t(J,[2,34]),t($,[2,7]),t($,[2,84]),t($,[2,85]),t($,[2,86]),{12:[1,116],45:K},{12:[1,118],14:[1,117]},{18:[1,119]},t($,[2,14]),t(V,[2,66],{60:120,64:[1,121],66:Q}),t(V,[2,67]),t(tt,[2,72]),t(V,[2,75]),t(tt,[2,74]),{17:122,18:[1,123],56:55,57:56,61:D},{15:124,43:R,44:I},t(Z,[2,48],{49:94,12:v,44:L,51:M,52:B}),{6:F,9:Y,35:125,50:P},t(J,[2,35]),{13:126,43:W,53:q,76:X},{15:127,43:R,44:I},{13:128,43:W,53:q,76:X},t($,[2,12]),t(V,[2,68]),{63:129,65:H},{18:[1,130]},t($,[2,19]),t($,[2,22],{16:[1,131],45:K}),t($,[2,33]),t($,[2,10]),{12:[1,132],45:K},t($,[2,9]),t(tt,[2,73]),t($,[2,17]),{17:133,18:[1,134],56:55,57:56,61:D},{13:135,43:W,53:q,76:X},{18:[1,136]},t($,[2,20]),t($,[2,8]),t($,[2,18])],defaultActions:{84:[2,64],87:[2,70]},parseError:(0,l.K)(function(t,e){if(!e.recoverable){var s=new Error(t);throw s.hash=e,s}this.trace(t)},"parseError"),parse:(0,l.K)(function(t){var e=this,s=[0],i=[],n=[null],r=[],a=this.table,o="",c=0,h=0,u=0,d=r.slice.call(arguments,1),y=Object.create(this.lexer),p={yy:{}};for(var b in this.yy)Object.prototype.hasOwnProperty.call(this.yy,b)&&(p.yy[b]=this.yy[b]);y.setInput(t,p.yy),p.yy.lexer=y,p.yy.parser=this,void 0===y.yylloc&&(y.yylloc={});var g=y.yylloc;r.push(g);var _=y.options&&y.options.ranges;function f(){var t;return"number"!=typeof(t=i.pop()||y.lex()||1)&&(t instanceof Array&&(t=(i=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,l.K)(function(t){s.length=s.length-2*t,n.length=n.length-t,r.length=r.length-t},"popStack"),(0,l.K)(f,"lex");for(var m,k,E,S,$,T,O,x,N,C={};;){if(E=s[s.length-1],this.defaultActions[E]?S=this.defaultActions[E]:(null==m&&(m=f()),S=a[E]&&a[E][m]),void 0===S||!S.length||!S[0]){var A="";for(T in N=[],a[E])this.terminals_[T]&&T>2&&N.push("'"+this.terminals_[T]+"'");A=y.showPosition?"Parse error on line "+(c+1)+":\n"+y.showPosition()+"\nExpecting "+N.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(c+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:y.match,token:this.terminals_[m]||m,line:y.yylineno,loc:g,expected:N})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+E+", token: "+m);switch(S[0]){case 1:s.push(m),n.push(y.yytext),r.push(y.yylloc),s.push(S[1]),m=null,k?(m=k,k=null):(h=y.yyleng,o=y.yytext,c=y.yylineno,g=y.yylloc,u>0&&u--);break;case 2:if(O=this.productions_[S[1]][1],C.$=n[n.length-O],C._$={first_line:r[r.length-(O||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(O||1)].first_column,last_column:r[r.length-1].last_column},_&&(C._$.range=[r[r.length-(O||1)].range[0],r[r.length-1].range[1]]),void 0!==($=this.performAction.apply(C,[o,h,c,p.yy,S[1],n,r].concat(d))))return $;O&&(s=s.slice(0,-1*O*2),n=n.slice(0,-1*O),r=r.slice(0,-1*O)),s.push(this.productions_[S[1]][0]),n.push(C.$),r.push(C._$),x=a[s[s.length-2]][s[s.length-1]],s.push(x);break;case 3:return!0}}return!0},"parse")},st=function(){return{EOF:1,parseError:(0,l.K)(function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},"parseError"),setInput:(0,l.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,l.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,l.K)(function(t){var e=t.length,s=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),s.length-1&&(this.yylineno-=s.length-1);var n=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:s?(s.length===i.length?this.yylloc.first_column:0)+i[i.length-s.length].length-s[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,l.K)(function(){return this._more=!0,this},"more"),reject:(0,l.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,l.K)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,l.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,l.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,l.K)(function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,l.K)(function(t,e){var s,i,n;if(this.options.backtrack_lexer&&(n={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&&(n.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],s=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var r in n)this[r]=n[r];return!1}return!1},"test_match"),next:(0,l.K)(function(){if(this.done)return this.EOF;var t,e,s,i;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var n=this._currentRules(),r=0;r<n.length;r++)if((s=this._input.match(this.rules[n[r]]))&&(!e||s[0].length>e[0].length)){if(e=s,i=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(s,n[r])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[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,l.K)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,l.K)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,l.K)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,l.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,l.K)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,l.K)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,l.K)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,l.K)(function(t,e,s,i){switch(s){case 0:return this.begin("acc_title"),23;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),25;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:case 28:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 37;case 8:return 38;case 9:return 39;case 10:return 40;case 11:case 22:case 30:case 37:break;case 12:return 9;case 13:return 53;case 14:return 76;case 15:return 4;case 16:return this.begin("block"),16;case 17:case 18:case 40:return 52;case 19:case 39:return 45;case 20:return 14;case 21:case 38:return 12;case 23:return 65;case 24:case 25:case 27:return 61;case 26:this.begin("block_bq");break;case 29:return 66;case 31:return this.popState(),18;case 32:case 81:return e.yytext[0];case 33:return 19;case 34:return 20;case 35:return this.begin("style"),47;case 36:return this.popState(),9;case 41:return this.begin("style"),41;case 42:return 46;case 43:return 34;case 44:return 33;case 45:case 49:case 50:case 68:return 69;case 46:case 47:case 48:case 56:case 58:case 70:return 71;case 51:case 52:case 53:case 54:case 55:case 57:case 69:return 70;case 59:case 60:case 62:case 63:case 64:case 67:return 72;case 61:return 54;case 65:return 55;case 66:return 51;case 71:return 73;case 72:case 75:case 76:case 77:return 74;case 73:case 74:return 75;case 78:return 44;case 79:return 50;case 80:return 43;case 82:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[ \t\r]+)/i,/^(?:[\n]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\.,\u00C0-\uFFFF\*]*))/i,/^(?:[`])/i,/^(?:[^`]+)/i,/^(?:[`])/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:subgraph\b)/i,/^(?:end\b\s*)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[36,37,38,39,40,78,79],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block_bq:{rules:[27,28],inclusive:!1},block:{rules:[22,23,24,25,26,29,30,31,32],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,33,34,35,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,80,81,82],inclusive:!0}}}}();function it(){this.yy={}}return et.lexer=st,(0,l.K)(it,"Parser"),it.prototype=et,et.Parser=it,new it}();y.parser=y;var p=y,b=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.subgraphDepth=0,this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=o.SV,this.getAccTitle=o.iN,this.setAccDescription=o.EI,this.getAccDescription=o.m7,this.setDiagramTitle=o.ke,this.getDiagramTitle=o.ab,this.getConfig=(0,l.K)(()=>(0,o.D7)().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this),this.addSubGraph=this.addSubGraph.bind(this)}static{(0,l.K)(this,"ErDB")}addEntity(t,e=""){return this.entities.has(t)?!this.entities.get(t)?.alias&&e&&(this.entities.get(t).alias=e,c.R.info(`Add alias '${e}' to entity '${t}'`)):(this.entities.set(t,{id:`entity-${t}-${this.entities.size}`,label:t,attributes:[],alias:e,shape:"erBox",look:(0,o.D7)().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),c.R.info("Added new entity :",t)),this.entities.get(t)}getEntity(t){return this.entities.get(t)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(t,e){const s=this.addEntity(t);let i;for(i=e.length-1;i>=0;i--)e[i].keys||(e[i].keys=[]),e[i].comment||(e[i].comment=""),s.attributes.push(e[i]),c.R.debug("Added attribute ",e[i].name)}addRelationship(t,e,s,i){let n,r;if(this.subGraphLookup.has(t))n=t;else{const e=this.addEntity(t);if(!e)return;n=e.id}if(this.subGraphLookup.has(s))r=s;else{const t=this.addEntity(s);if(!t)return;r=t.id}const a={entityA:n,roleA:e,entityB:r,relSpec:i};this.relationships.push(a),c.R.debug("Added new relationship :",a)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(t){this.direction=t}getCompiledStyles(t){let e=[];for(const s of t){const t=this.classes.get(s);t?.styles&&(e=[...e,...t.styles??[]].map(t=>t.trim())),t?.textStyles&&(e=[...e,...t.textStyles??[]].map(t=>t.trim()))}return e}addCssStyles(t,e){for(const s of t){const t=this.entities.get(s),i=this.subGraphLookup.get(s);if(e){if(t)for(const s of e)t.cssStyles.push(s);if(i){i.cssStyles||(i.cssStyles=[]);for(const t of e)i.cssStyles.push(t)}}}}addClass(t,e){t.forEach(t=>{let s=this.classes.get(t);void 0===s&&(s={id:t,styles:[],textStyles:[]},this.classes.set(t,s)),e&&e.forEach(function(t){if(/color/.exec(t)){const e=t.replace("fill","bgFill");s.textStyles.push(e)}s.styles.push(t)})})}addSubGraph(t,e,s){let i=t.text.trim(),n=s.text;const r=(0,l.K)(t=>{const e=new Set;let s;return{nodeList:t.filter(t=>{if(t?.stmt)return"dir"===t.stmt&&(s=t.value),!1;if("string"!=typeof t)return!1;const i=t.trim();return!!i&&(!e.has(i)&&(e.add(i),!0))}),dir:s}},"uniq")(e.flat()),a=r.nodeList,o=r.dir;i=i??"subGraph"+this.subCount,n=n||"",n=this.sanitizeText(n),this.subCount=this.subCount+1;const h={id:i,nodes:a,title:n.trim(),classes:[],cssStyles:[],dir:o,labelType:this.sanitizeNodeLabelType(s?.type)};return c.R.info("Adding",h.id,h.nodes,h.dir),h.nodes=this.makeUniq(h,this.subGraphs).nodes,this.subGraphs.push(h),this.subGraphLookup.set(i,h),i}getSubGraphs(){return this.subGraphs}setClass(t,e){for(const s of t){const t=this.entities.get(s);if(t)for(const s of e)t.cssClasses+=" "+s;const i=this.subGraphLookup.get(s);if(i)for(const t of e)i.classes.push(t)}}subgraphNodeCache(t){const e=new Set;for(const s of t)for(const t of s.nodes)e.add(t);return e}makeUniq(t,e){const s=this.subgraphNodeCache(e),i=[];return t.nodes.forEach((e,n)=>{s.has(e)?c.R.warn(`Entity '${e}' already belongs to another subgraph and will be ignored`):i.push(t.nodes[n])}),{nodes:i}}sanitizeText(t){return o.Y2.sanitizeText(t,(0,o.D7)())}sanitizeNodeLabelType(t){switch(t){case"markdown":case"string":case"text":return t;default:return"markdown"}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.subgraphDepth=0,(0,o.IU)()}getData(){const t=[],e=[],s=(0,o.D7)(),i=this.getSubGraphs(),n=new Map,r=new Map;for(let t=i.length-1;t>=0;t--){const e=i[t];e.nodes.length>0&&r.set(e.id,!0);for(const t of e.nodes)n.set(t,e.id)}for(let e=i.length-1;e>=0;e--){const r=i[e];t.push({id:r.id,label:r.title,labelStyle:"",labelType:r.labelType,parentId:n.get(r.id),padding:8,cssCompiledStyles:this.getCompiledStyles(r.classes),cssStyles:r.cssStyles,cssClasses:r.classes.join(" "),shape:"rect",dir:r.dir,isGroup:!0,look:s.look})}const c=new Set(i.map(t=>t.id));let l=0;for(const e of this.entities.keys()){if(c.has(e))continue;const s=this.entities.get(e);s&&(s.cssCompiledStyles=this.getCompiledStyles(s.cssClasses.split(" ")),s.colorIndex=l++,t.push({...s,parentId:n.get(e),isGroup:!1}))}let h=0;for(const t of this.relationships){const i={id:(0,a.rY)(t.entityA,t.entityB,{prefix:"id",counter:h++}),type:"normal",curve:"basis",start:t.entityA,end:t.entityB,label:t.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:t.relSpec.cardB.toLowerCase(),arrowTypeEnd:t.relSpec.cardA.toLowerCase(),pattern:"IDENTIFYING"==t.relSpec.relType?"solid":"dashed",look:s.look,labelType:"markdown"};e.push(i)}return{nodes:t,edges:e,other:{},config:s,direction:this.direction}}},g={};(0,l.V)(g,{draw:()=>_});var _=(0,l.K)(async function(t,e,s,l){c.R.info("REF0:"),c.R.info("Drawing er diagram (unified)",e);const{securityLevel:u,er:d,layout:y}=(0,o.D7)(),p=l.db.getData(),b=(0,i.A)(e,u);p.type=l.type,p.layoutAlgorithm=(0,r.q7)(y),p.config.flowchart.nodeSpacing=d?.nodeSpacing||140,p.config.flowchart.rankSpacing=d?.rankSpacing||80,p.direction=l.db.getDirection();const{config:g}=p,{look:_}=g;p.markers="neo"===_?["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"]:["only_one","zero_or_one","one_or_more","zero_or_more"],p.diagramId=e,await(0,r.XX)(p,b),"elk"===p.layoutAlgorithm&&b.select(".edges").lower();const f=b.selectAll('[id*="-background"]');Array.from(f).length>0&&f.each(function(){const t=(0,h.Ltv)(this),e=t.attr("id").replace("-background",""),s=b.select(`#${CSS.escape(e)}`);if(!s.empty()){const e=s.attr("transform");t.attr("transform",e)}});a._K.insertTitle(b,"erDiagramTitleText",d?.titleTopMargin??25,l.db.getDiagramTitle()),(0,n.P)(b,8,"erDiagram",d?.useMaxWidth??!0)},"draw"),f=(0,l.K)((t,e)=>{const s=d.A,i=s(t,"r"),n=s(t,"g"),r=s(t,"b");return u.A(i,n,r,e)},"fade"),m=new Set(["redux-color","redux-dark-color"]),k=(0,l.K)(t=>{const{theme:e,look:s,bkgColorArray:i,borderColorArray:n}=t;if(!m.has(e))return"";const r=i?.length>0;let a="";for(let e=0;e<t.THEME_COLOR_LIMIT;e++)a+=`\n\n [data-look="${s}"][data-color-id="color-${e}"].node path {\n stroke: ${n[e]};\n ${r?`fill: ${i[e]};`:""}\n }\n\n [data-look="${s}"][data-color-id="color-${e}"].node rect {\n stroke: ${n[e]};\n ${r?`fill: ${i[e]};`:""}\n }\n `;return a},"genColor"),E=(0,l.K)(t=>{const{look:e,theme:s,erEdgeLabelBackground:i,strokeWidth:n}=t;return`\n ${k(t)}\n .entityBox {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n }\n\n .relationshipLabelBox {\n fill: ${t.tertiaryColor};\n opacity: 0.7;\n background-color: ${t.tertiaryColor};\n rect {\n opacity: 0.5;\n }\n }\n\n .labelBkg {\n background-color: ${m.has(s)&&i?i:f(t.tertiaryColor,.5)};\n }\n\n .edgeLabel {\n background-color: ${m.has(s)&&i?i:t.edgeLabelBackground};\n }\n .edgeLabel .label rect {\n fill: ${m.has(s)&&i?i:t.edgeLabelBackground};\n }\n .edgeLabel .label text {\n fill: ${t.textColor};\n }\n\n .edgeLabel .label {\n fill: ${t.nodeBorder};\n font-size: 14px;\n }\n\n .label {\n font-family: ${t.fontFamily};\n color: ${t.nodeTextColor||t.textColor};\n }\n\n .edge-pattern-dashed {\n stroke-dasharray: 8,8;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon\n {\n fill: ${t.mainBkg};\n stroke: ${t.nodeBorder};\n stroke-width: ${"neo"===e?n:"1px"};\n }\n\n .relationshipLine {\n stroke: ${t.lineColor};\n stroke-width: ${"neo"===e?n:"1px"};\n fill: none;\n }\n\n .marker {\n fill: none !important;\n stroke: ${t.lineColor} !important;\n stroke-width: 1;\n }\n [data-look=neo].labelBkg {\n background-color: ${f(t.tertiaryColor,.5)};\n }\n\n .cluster rect {\n fill: ${t.clusterBkg??t.mainBkg};\n stroke: ${t.clusterBorder??t.nodeBorder};\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${t.titleColor??t.textColor};\n }\n\n .cluster-label text {\n fill: ${t.titleColor??t.textColor};\n }\n`},"getStyles"),S={parser:p,get db(){return new b},renderer:g,styles:E}},75937(t,e,s){s.d(e,{A:()=>r});var i=s(86309),n=s(51931);const r=(t,e)=>i.A.lang.round(n.A.parse(t)[e])}}]);
|