isorite 0.6.0 → 0.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/README.md +4 -2
- package/dist/main.js +615 -96
- package/docs/setup-for-agents.md +3 -0
- package/docs/setup.md +20 -0
- package/docs/terminal.md +15 -0
- package/package.json +1 -1
- package/plugin/server.ts +4 -2
- package/web/_app/immutable/assets/0.CTbO0owi.css +1 -0
- package/web/_app/immutable/assets/NoteEditor.8wWtZK_A.css +1 -0
- package/web/_app/immutable/chunks/0M1khDs2.js +2 -0
- package/web/_app/immutable/chunks/2b4Gb5sE.js +1 -0
- package/web/_app/immutable/chunks/84nbDH0I.js +1 -0
- package/web/_app/immutable/chunks/8H7HVH4w.js +1 -0
- package/web/_app/immutable/chunks/8wVGBFSs.js +45 -0
- package/web/_app/immutable/chunks/AF4Hwhju.js +1 -0
- package/web/_app/immutable/chunks/B-65IYX-.js +6 -0
- package/web/_app/immutable/chunks/B45xgp2S.js +1 -0
- package/web/_app/immutable/chunks/B78wSQJQ.js +1 -0
- package/web/_app/immutable/chunks/B85D_PlV.js +5 -0
- package/web/_app/immutable/chunks/B91efLFT.js +673 -0
- package/web/_app/immutable/chunks/B9NhS7L_.js +1 -0
- package/web/_app/immutable/chunks/B9YLdnR_.js +1 -0
- package/web/_app/immutable/chunks/BEHa2uNW.js +1 -0
- package/web/_app/immutable/chunks/BEMVcqjs.js +1 -0
- package/web/_app/immutable/chunks/BEjRio4Q.js +1 -0
- package/web/_app/immutable/chunks/BEn0Cwpx.js +1 -0
- package/web/_app/immutable/chunks/BGbXxNFa.js +2 -0
- package/web/_app/immutable/chunks/BGfruO1u.js +1 -0
- package/web/_app/immutable/chunks/BHEdbvp9.js +1 -0
- package/web/_app/immutable/chunks/BKJx4mf9.js +1 -0
- package/web/_app/immutable/chunks/BL3mLym4.js +5 -0
- package/web/_app/immutable/chunks/BLp5-jwC.js +1 -0
- package/web/_app/immutable/chunks/BN6xhG8e.js +1 -0
- package/web/_app/immutable/chunks/BOVgKnng.js +1 -0
- package/web/_app/immutable/chunks/BPTmHmyx.js +1 -0
- package/web/_app/immutable/chunks/BPW39P52.js +1 -0
- package/web/_app/immutable/chunks/BRKS-CCX.js +5 -0
- package/web/_app/immutable/chunks/BRsoo5mP.js +1 -0
- package/web/_app/immutable/chunks/BSzj6Xyz.js +1 -0
- package/web/_app/immutable/chunks/BUZw3wgd.js +1 -0
- package/web/_app/immutable/chunks/BV0c4Hdn.js +1 -0
- package/web/_app/immutable/chunks/BVIeWmwY.js +1 -0
- package/web/_app/immutable/chunks/BWonG38x.js +1 -0
- package/web/_app/immutable/chunks/BXxG0Yva.js +1 -0
- package/web/_app/immutable/chunks/BZmnMkFw.js +1 -0
- package/web/_app/immutable/chunks/BZyAS7I4.js +1 -0
- package/web/_app/immutable/chunks/B_1Jd8HM.js +1 -0
- package/web/_app/immutable/chunks/Bbt0DTmZ.js +1 -0
- package/web/_app/immutable/chunks/Bffqt7tx.js +9 -0
- package/web/_app/immutable/chunks/BflJGmDX.js +1 -0
- package/web/_app/immutable/chunks/BgczuZKA.js +4 -0
- package/web/_app/immutable/chunks/BguXRgvc.js +2 -0
- package/web/_app/immutable/chunks/BjPiibIz.js +1 -0
- package/web/_app/immutable/chunks/BkSkiI9m.js +1 -0
- package/web/_app/immutable/chunks/Bq5hCPe1.js +2 -0
- package/web/_app/immutable/chunks/BrGmYbJT.js +2 -0
- package/web/_app/immutable/chunks/BrXPCJaM.js +1 -0
- package/web/_app/immutable/chunks/BrqJKzQU.js +2 -0
- package/web/_app/immutable/chunks/Brxvm_b1.js +4 -0
- package/web/_app/immutable/chunks/BsLNwr5A.js +2 -0
- package/web/_app/immutable/chunks/Bsdphhtm.js +1 -0
- package/web/_app/immutable/chunks/Bt6PBEDR.js +1 -0
- package/web/_app/immutable/chunks/BtUtjfIh.js +1 -0
- package/web/_app/immutable/chunks/BthdM_4N.js +1 -0
- package/web/_app/immutable/chunks/Bu8mWwtz.js +1 -0
- package/web/_app/immutable/chunks/BunrC_8P.js +4 -0
- package/web/_app/immutable/chunks/BwTct_5T.js +1 -0
- package/web/_app/immutable/chunks/BxTFtVqu.js +13 -0
- package/web/_app/immutable/chunks/BzI3yqBQ.js +3 -0
- package/web/_app/immutable/chunks/C-dfcq9W.js +7 -0
- package/web/_app/immutable/chunks/C2OyD2Y6.js +1 -0
- package/web/_app/immutable/chunks/C2dAgh7P.js +1 -0
- package/web/_app/immutable/chunks/C357ku5U.js +1 -0
- package/web/_app/immutable/chunks/C4jVoHG1.js +1 -0
- package/web/_app/immutable/chunks/C6Btt2Xs.js +1 -0
- package/web/_app/immutable/chunks/C9zpzAZU.js +1 -0
- package/web/_app/immutable/chunks/CCiHXe5d.js +1 -0
- package/web/_app/immutable/chunks/CDAjAYjS.js +1 -0
- package/web/_app/immutable/chunks/CETSRtnV.js +2 -0
- package/web/_app/immutable/chunks/CEufJyoj.js +1 -0
- package/web/_app/immutable/chunks/CGzfi9Nl.js +1 -0
- package/web/_app/immutable/chunks/CHbKgHy3.js +1 -0
- package/web/_app/immutable/chunks/CKSRTWxH.js +2 -0
- package/web/_app/immutable/chunks/CLVUDRRk.js +2 -0
- package/web/_app/immutable/chunks/CLVgA2GD.js +1 -0
- package/web/_app/immutable/chunks/CO2Y5y64.js +2 -0
- package/web/_app/immutable/chunks/CPF5uNy5.js +1 -0
- package/web/_app/immutable/chunks/CQadubS9.js +2 -0
- package/web/_app/immutable/chunks/CQfgDRfP.js +1 -0
- package/web/_app/immutable/chunks/CRIvE37b.js +2 -0
- package/web/_app/immutable/chunks/CRzLMJPS.js +1 -0
- package/web/_app/immutable/chunks/CTIncYxj.js +1 -0
- package/web/_app/immutable/chunks/CTscJvp6.js +2 -0
- package/web/_app/immutable/chunks/CUpZ7dEl.js +1 -0
- package/web/_app/immutable/chunks/CX-xckzu.js +4 -0
- package/web/_app/immutable/chunks/CXXgtw0p.js +1 -0
- package/web/_app/immutable/chunks/CZ8wTb_M.js +8 -0
- package/web/_app/immutable/chunks/C_eisQCp.js +1 -0
- package/web/_app/immutable/chunks/CdY1YAit.js +2 -0
- package/web/_app/immutable/chunks/Ce_hS451.js +1 -0
- package/web/_app/immutable/chunks/CgA1WoRv.js +1 -0
- package/web/_app/immutable/chunks/CggtIYAM.js +1 -0
- package/web/_app/immutable/chunks/ChfNwlCY.js +1 -0
- package/web/_app/immutable/chunks/ChtP43wD.js +1 -0
- package/web/_app/immutable/chunks/CiVjR8gq.js +3 -0
- package/web/_app/immutable/chunks/CjI9Y6RI.js +1 -0
- package/web/_app/immutable/chunks/ClOhbFR7.js +1 -0
- package/web/_app/immutable/chunks/CnP_Si9g.js +1 -0
- package/web/_app/immutable/chunks/CnaYoQib.js +1 -0
- package/web/_app/immutable/chunks/Co3PbHdE.js +1 -0
- package/web/_app/immutable/chunks/CoyQYage.js +1 -0
- package/web/_app/immutable/chunks/Cp5ooBfH.js +1 -0
- package/web/_app/immutable/chunks/Cp_JbuGh.js +2 -0
- package/web/_app/immutable/chunks/Cq5C893B.js +1 -0
- package/web/_app/immutable/chunks/CqHI_q-D.js +1 -0
- package/web/_app/immutable/chunks/CqftRsjg.js +1 -0
- package/web/_app/immutable/chunks/Cshzl8qu.js +1 -0
- package/web/_app/immutable/chunks/Cx3rYX2g.js +1 -0
- package/web/_app/immutable/chunks/CxDmU1I4.js +1 -0
- package/web/_app/immutable/chunks/CygcOYNo.js +1 -0
- package/web/_app/immutable/chunks/CzMBulkp.js +1 -0
- package/web/_app/immutable/chunks/D1ij_kNL.js +1 -0
- package/web/_app/immutable/chunks/D2Q8cUp1.js +1 -0
- package/web/_app/immutable/chunks/D4SKbj9K.js +6 -0
- package/web/_app/immutable/chunks/D4c0_ac3.js +1 -0
- package/web/_app/immutable/chunks/D4fLEcOQ.js +8 -0
- package/web/_app/immutable/chunks/D5EjA2JK.js +1 -0
- package/web/_app/immutable/chunks/D5jiJvOU.js +1 -0
- package/web/_app/immutable/chunks/D6QVYUu9.js +1 -0
- package/web/_app/immutable/chunks/D6RzAl64.js +1 -0
- package/web/_app/immutable/chunks/D8WpQPaX.js +1 -0
- package/web/_app/immutable/chunks/D9f6rSsU.js +1 -0
- package/web/_app/immutable/chunks/D9qYN0V5.js +1 -0
- package/web/_app/immutable/chunks/DCl_8MCW.js +1 -0
- package/web/_app/immutable/chunks/DECNRCf2.js +1 -0
- package/web/_app/immutable/chunks/DHLQUbN7.js +1 -0
- package/web/_app/immutable/chunks/DIGvaVgJ.js +2 -0
- package/web/_app/immutable/chunks/DKB6_1j6.js +1 -0
- package/web/_app/immutable/chunks/DKNOMI4Y.js +1 -0
- package/web/_app/immutable/chunks/DLa7NjNO.js +1 -0
- package/web/_app/immutable/chunks/DMAYXnpq.js +13 -0
- package/web/_app/immutable/chunks/DNzd62Q_.js +1 -0
- package/web/_app/immutable/chunks/DPCEkfD_.js +1 -0
- package/web/_app/immutable/chunks/DTF72YNO.js +1 -0
- package/web/_app/immutable/chunks/DTdlqvEb.js +12 -0
- package/web/_app/immutable/chunks/DTszW0OQ.js +1 -0
- package/web/_app/immutable/chunks/DWkQyNnU.js +1 -0
- package/web/_app/immutable/chunks/DXiLM1-G.js +1 -0
- package/web/_app/immutable/chunks/DZYaqCwi.js +1 -0
- package/web/_app/immutable/chunks/D_19S_Iu.js +1 -0
- package/web/_app/immutable/chunks/D_JZ0swv.js +1 -0
- package/web/_app/immutable/chunks/D_aBVMvK.js +11 -0
- package/web/_app/immutable/chunks/DciMwFJ1.js +1 -0
- package/web/_app/immutable/chunks/De_zI4J0.js +1 -0
- package/web/_app/immutable/chunks/DgAKBe0r.js +1 -0
- package/web/_app/immutable/chunks/DgZW3JtG.js +1 -0
- package/web/_app/immutable/chunks/Di_ac7WN.js +1 -0
- package/web/_app/immutable/chunks/DjVOVvNP.js +1 -0
- package/web/_app/immutable/chunks/Dp_KdFgX.js +1 -0
- package/web/_app/immutable/chunks/Ds8Pkiic.js +1 -0
- package/web/_app/immutable/chunks/DtbnBenW.js +1 -0
- package/web/_app/immutable/chunks/DuQMFDvy.js +1 -0
- package/web/_app/immutable/chunks/DwuoZtxw.js +1 -0
- package/web/_app/immutable/chunks/DxLkKbK2.js +5 -0
- package/web/_app/immutable/chunks/Dz-mlCAC.js +1 -0
- package/web/_app/immutable/chunks/EQVRMnZU.js +2 -0
- package/web/_app/immutable/chunks/GwMd3KmG.js +1 -0
- package/web/_app/immutable/chunks/K_3X9lyC.js +23 -0
- package/web/_app/immutable/chunks/{ZRnI3PpK.js → NmqB5ax3.js} +1 -1
- package/web/_app/immutable/chunks/PPSTk1ow.js +1 -0
- package/web/_app/immutable/chunks/S7ucR4pR.js +1 -0
- package/web/_app/immutable/chunks/TuFg0KqZ.js +4 -0
- package/web/_app/immutable/chunks/VlUiK86J.js +1 -0
- package/web/_app/immutable/chunks/_rHYGvON.js +1 -0
- package/web/_app/immutable/chunks/bcQIrid8.js +1 -0
- package/web/_app/immutable/chunks/dvrIP-Hm.js +1 -0
- package/web/_app/immutable/chunks/gfMMiTNf.js +1 -0
- package/web/_app/immutable/chunks/gpDK5sbt.js +1 -0
- package/web/_app/immutable/chunks/hOAYc4Tf.js +1 -0
- package/web/_app/immutable/chunks/kS471soi.js +1 -0
- package/web/_app/immutable/chunks/mbLqADPr.js +1 -0
- package/web/_app/immutable/chunks/nMarIA7J.js +3 -0
- package/web/_app/immutable/chunks/oBAE_ms0.js +1 -0
- package/web/_app/immutable/chunks/p9eYesGn.js +1 -0
- package/web/_app/immutable/chunks/qgSLujhx.js +1 -0
- package/web/_app/immutable/chunks/spNKdrPy.js +3 -0
- package/web/_app/immutable/chunks/tLWDfEkZ.js +1 -0
- package/web/_app/immutable/chunks/u8YMmbU0.js +1 -0
- package/web/_app/immutable/chunks/vk5Wkr31.js +1 -0
- package/web/_app/immutable/chunks/wCTXGvXm.js +2 -0
- package/web/_app/immutable/chunks/wj7G6pU5.js +5 -0
- package/web/_app/immutable/chunks/xvONpD0Z.js +1 -0
- package/web/_app/immutable/chunks/yxd8jSz3.js +1 -0
- package/web/_app/immutable/entry/app.DO9lj7h3.js +2 -0
- package/web/_app/immutable/entry/start.Bg5TZs6n.js +1 -0
- package/web/_app/immutable/nodes/0.N1e1uAFq.js +26 -0
- package/web/_app/immutable/nodes/1.BRTPLKyU.js +1 -0
- package/web/_app/immutable/nodes/2.BWh1AYEd.js +1 -0
- package/web/_app/immutable/nodes/3.Cgqgn7Zv.js +1 -0
- package/web/_app/immutable/nodes/4.DYW7Fxdy.js +2 -0
- package/web/_app/immutable/nodes/5.Dkvkif0E.js +5 -0
- package/web/_app/immutable/nodes/6.BinB0fuq.js +1 -0
- package/web/_app/immutable/nodes/{7.BdTE6U4H.js → 7.BxQaF3lD.js} +1 -1
- package/web/_app/version.json +1 -1
- package/web/index.html +22 -18
- package/web/_app/immutable/assets/0.LEIHnkPh.css +0 -1
- package/web/_app/immutable/assets/NoteEditor.BCjOff8L.css +0 -1
- package/web/_app/immutable/chunks/2DHY0Dzh.js +0 -666
- package/web/_app/immutable/chunks/BQRMn_tl.js +0 -1
- package/web/_app/immutable/chunks/C-352d8F.js +0 -1
- package/web/_app/immutable/chunks/CHxNLteG.js +0 -1
- package/web/_app/immutable/chunks/Cf6h5DpS.js +0 -20
- package/web/_app/immutable/chunks/D4A7-5k0.js +0 -1
- package/web/_app/immutable/chunks/Dijhflxl.js +0 -1
- package/web/_app/immutable/chunks/Ps0IPbdL.js +0 -1
- package/web/_app/immutable/chunks/nhmVyQdD.js +0 -3
- package/web/_app/immutable/chunks/rTqzqD6j.js +0 -1
- package/web/_app/immutable/chunks/y24aTX4O.js +0 -1
- package/web/_app/immutable/entry/app.BQ0r6jSu.js +0 -2
- package/web/_app/immutable/entry/start.CIQiYrSU.js +0 -1
- package/web/_app/immutable/nodes/0.zPrOkn79.js +0 -26
- package/web/_app/immutable/nodes/1.DfBkOAo2.js +0 -1
- package/web/_app/immutable/nodes/2.fp8Y5joG.js +0 -1
- package/web/_app/immutable/nodes/3.Do9cwxjS.js +0 -1
- package/web/_app/immutable/nodes/4.CGd6gzGJ.js +0 -2
- package/web/_app/immutable/nodes/5.Dtac-HK8.js +0 -5
- package/web/_app/immutable/nodes/6._-kZkWYe.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{javascript as e}from"./Bu8mWwtz.js";var t={"{":`}`,"(":`)`,"[":`]`};function n(e){if(typeof e!=`object`)return e;let t={};for(let n in e){let r=e[n];t[n]=r instanceof Array?r.slice():r}return t}var r=class t{constructor(t){this.indentUnit=t,this.javaScriptLine=!1,this.javaScriptLineExcludesColon=!1,this.javaScriptArguments=!1,this.javaScriptArgumentsDepth=0,this.isInterpolating=!1,this.interpolationNesting=0,this.jsState=e.startState(t),this.restOfLine=``,this.isIncludeFiltered=!1,this.isEach=!1,this.lastTag=``,this.isAttrs=!1,this.attrsNest=[],this.inAttributeName=!0,this.attributeIsType=!1,this.attrValue=``,this.indentOf=1/0,this.indentToken=``}copy(){var r=new t(this.indentUnit);return r.javaScriptLine=this.javaScriptLine,r.javaScriptLineExcludesColon=this.javaScriptLineExcludesColon,r.javaScriptArguments=this.javaScriptArguments,r.javaScriptArgumentsDepth=this.javaScriptArgumentsDepth,r.isInterpolating=this.isInterpolating,r.interpolationNesting=this.interpolationNesting,r.jsState=(e.copyState||n)(this.jsState),r.restOfLine=this.restOfLine,r.isIncludeFiltered=this.isIncludeFiltered,r.isEach=this.isEach,r.lastTag=this.lastTag,r.isAttrs=this.isAttrs,r.attrsNest=this.attrsNest.slice(),r.inAttributeName=this.inAttributeName,r.attributeIsType=this.attributeIsType,r.attrValue=this.attrValue,r.indentOf=this.indentOf,r.indentToken=this.indentToken,r}};function i(t,n){if(t.sol()&&(n.javaScriptLine=!1,n.javaScriptLineExcludesColon=!1),n.javaScriptLine){if(n.javaScriptLineExcludesColon&&t.peek()===`:`){n.javaScriptLine=!1,n.javaScriptLineExcludesColon=!1;return}var r=e.token(t,n.jsState);return t.eol()&&(n.javaScriptLine=!1),r||!0}}function a(t,n){if(n.javaScriptArguments){if(n.javaScriptArgumentsDepth===0&&t.peek()!==`(`||(t.peek()===`(`?n.javaScriptArgumentsDepth++:t.peek()===`)`&&n.javaScriptArgumentsDepth--,n.javaScriptArgumentsDepth===0)){n.javaScriptArguments=!1;return}return e.token(t,n.jsState)||!0}}function o(e){if(e.match(/^yield\b/))return`keyword`}function s(e){if(e.match(/^(?:doctype) *([^\n]+)?/))return`meta`}function c(e,t){if(e.match(`#{`))return t.isInterpolating=!0,t.interpolationNesting=0,`punctuation`}function l(t,n){if(n.isInterpolating){if(t.peek()===`}`){if(n.interpolationNesting--,n.interpolationNesting<0)return t.next(),n.isInterpolating=!1,`punctuation`}else t.peek()===`{`&&n.interpolationNesting++;return e.token(t,n.jsState)||!0}}function u(e,t){if(e.match(/^case\b/))return t.javaScriptLine=!0,`keyword`}function d(e,t){if(e.match(/^when\b/))return t.javaScriptLine=!0,t.javaScriptLineExcludesColon=!0,`keyword`}function f(e){if(e.match(/^default\b/))return`keyword`}function p(e,t){if(e.match(/^extends?\b/))return t.restOfLine=`string`,`keyword`}function m(e,t){if(e.match(/^append\b/))return t.restOfLine=`variable`,`keyword`}function h(e,t){if(e.match(/^prepend\b/))return t.restOfLine=`variable`,`keyword`}function g(e,t){if(e.match(/^block\b *(?:(prepend|append)\b)?/))return t.restOfLine=`variable`,`keyword`}function _(e,t){if(e.match(/^include\b/))return t.restOfLine=`string`,`keyword`}function v(e,t){if(e.match(/^include:([a-zA-Z0-9\-]+)/,!1)&&e.match(`include`))return t.isIncludeFiltered=!0,`keyword`}function y(e,t){if(t.isIncludeFiltered){var n=O(e,t);return t.isIncludeFiltered=!1,t.restOfLine=`string`,n}}function b(e,t){if(e.match(/^mixin\b/))return t.javaScriptLine=!0,`keyword`}function x(e,t){if(e.match(/^\+([-\w]+)/))return e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),`variable`;if(e.match(`+#{`,!1))return e.next(),t.mixinCallAfter=!0,c(e,t)}function S(e,t){if(t.mixinCallAfter)return t.mixinCallAfter=!1,e.match(/^\( *[-\w]+ *=/,!1)||(t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0),!0}function C(e,t){if(e.match(/^(if|unless|else if|else)\b/))return t.javaScriptLine=!0,`keyword`}function w(e,t){if(e.match(/^(- *)?(each|for)\b/))return t.isEach=!0,`keyword`}function T(e,t){if(t.isEach){if(e.match(/^ in\b/))return t.javaScriptLine=!0,t.isEach=!1,`keyword`;if(e.sol()||e.eol())t.isEach=!1;else if(e.next()){for(;!e.match(/^ in\b/,!1)&&e.next(););return`variable`}}}function E(e,t){if(e.match(/^while\b/))return t.javaScriptLine=!0,`keyword`}function D(e,t){var n;if(n=e.match(/^(\w(?:[-:\w]*\w)?)\/?/))return t.lastTag=n[1].toLowerCase(),`tag`}function O(e,t){if(e.match(/^:([\w\-]+)/))return V(e,t),`atom`}function k(e,t){if(e.match(/^(!?=|-)/))return t.javaScriptLine=!0,`punctuation`}function A(e){if(e.match(/^#([\w-]+)/))return`builtin`}function j(e){if(e.match(/^\.([\w-]+)/))return`className`}function M(e,t){if(e.peek()==`(`)return e.next(),t.isAttrs=!0,t.attrsNest=[],t.inAttributeName=!0,t.attrValue=``,t.attributeIsType=!1,`punctuation`}function N(n,r){if(r.isAttrs){if(t[n.peek()]&&r.attrsNest.push(t[n.peek()]),r.attrsNest[r.attrsNest.length-1]===n.peek())r.attrsNest.pop();else if(n.eat(`)`))return r.isAttrs=!1,`punctuation`;if(r.inAttributeName&&n.match(/^[^=,\)!]+/))return(n.peek()===`=`||n.peek()===`!`)&&(r.inAttributeName=!1,r.jsState=e.startState(2),r.attributeIsType=r.lastTag===`script`&&n.current().trim().toLowerCase()===`type`),`attribute`;var i=e.token(n,r.jsState);if(r.attrsNest.length===0&&(i===`string`||i===`variable`||i===`keyword`))try{return Function(``,`var x `+r.attrValue.replace(/,\s*$/,``).replace(/^!/,``)),r.inAttributeName=!0,r.attrValue=``,n.backUp(n.current().length),N(n,r)}catch{}return r.attrValue+=n.current(),i||!0}}function P(e,t){if(e.match(/^&attributes\b/))return t.javaScriptArguments=!0,t.javaScriptArgumentsDepth=0,`keyword`}function F(e){if(e.sol()&&e.eatSpace())return`indent`}function I(e,t){if(e.match(/^ *\/\/(-)?([^\n]*)/))return t.indentOf=e.indentation(),t.indentToken=`comment`,`comment`}function L(e){if(e.match(/^: */))return`colon`}function R(e,t){if(e.match(/^(?:\| ?| )([^\n]+)/))return`string`;if(e.match(/^(<[^\n]*)/,!1))return V(e,t),e.skipToEnd(),t.indentToken}function z(e,t){if(e.eat(`.`))return V(e,t),`dot`}function B(e){return e.next(),null}function V(e,t){t.indentOf=e.indentation(),t.indentToken=`string`}function H(e,t){if(e.sol()&&(t.restOfLine=``),t.restOfLine){e.skipToEnd();var n=t.restOfLine;return t.restOfLine=``,n}}function U(e){return new r(e)}function W(e){return e.copy()}function G(e,t){var n=H(e,t)||l(e,t)||y(e,t)||T(e,t)||N(e,t)||i(e,t)||a(e,t)||S(e,t)||o(e)||s(e)||c(e,t)||u(e,t)||d(e,t)||f(e)||p(e,t)||m(e,t)||h(e,t)||g(e,t)||_(e,t)||v(e,t)||b(e,t)||x(e,t)||C(e,t)||w(e,t)||E(e,t)||D(e,t)||O(e,t)||k(e,t)||A(e)||j(e)||M(e,t)||P(e,t)||F(e)||R(e,t)||I(e,t)||L(e)||z(e,t)||B(e);return n===!0?null:n}var K={startState:U,copyState:W,token:G};export{K as pug};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{_ as e,a as t,o as n,u as r,x as i}from"./CX-xckzu.js";import{r as a,t as o}from"./DciMwFJ1.js";import{a as s,c,d as l,f as u,g as d,h as f,i as p,l as m,m as h,n as g,o as _,p as v,r as y,s as b,t as x,u as S}from"./BunrC_8P.js";import{t as C}from"./Ce_hS451.js";import{t as w}from"./BrqJKzQU.js";import{PeleError as T,d as E,u as D}from"./8wVGBFSs.js";var O=1e4;function k(e,t,n,r,i){let a=e.packet?.[t];return typeof a==`number`&&a>=r?Math.min(a,i):n}function A(e){return new T(e,`semantic`,{type:`packet`})}function j(e,t,n){let r=Math.floor(k(t,`bitsPerRow`,32,1,4096)),i=[],a=-1,o=[],s=1;for(let t of e.blocks){let{start:e,end:n,bits:c}=t;if(e!==void 0&&n!==void 0&&n<e)throw A(`Packet block ${e} - ${n} is invalid. End must be greater than start.`);if(e??=a+1,e!==a+1)throw A(`Packet block ${e} - ${n??e} is not contiguous. It should start from ${a+1}.`);if(c===0)throw A(`Packet block ${e} is invalid. Cannot have a zero bit field.`);for(n??=e+(c??1)-1,c??=n-e+1,a=n;o.length<=r+1&&i.length<O;){let a=s*r-1;if(n<=a){o.push({start:e,end:n,bits:c,label:t.label}),n===a&&(i.push(o),o=[],s++);break}o.push({start:e,end:a,bits:a-e,label:t.label}),i.push(o),o=[],s++,e=a+1,c=n-e}}return o.length>0&&i.push(o),{type:`packet`,title:e.title||n,accTitle:e.accTitle?e.accTitle.replace(/^\s+/g,``):void 0,accDescr:e.accDescr?e.accDescr.replace(/\n\s+/g,`
|
|
2
|
+
`):void 0,bitsPerRow:r,rows:i}}var M=[{name:`packet-beta`,pattern:`packet-beta`},p(`packet`),{name:`-`,pattern:`-`,longer:[y]},{name:`+`,pattern:`+`},{name:`:`,pattern:`:`},s,x,v,{name:`INT`,pattern:/0|[1-9][0-9]*(?!\.)/y},h,m,S,y,_,b];function N(e){let t=new f(g(e,M,`packet`),M,`packet`),n={$type:`Packet`,blocks:[]},r=()=>{if(t.kind!==-1)for(t.kind!==10&&t.fail(`a line break or the end of input`);t.kind===10;)t.i++};for(;t.kind===10;)t.i++;for(t.accept(0)||t.expect(1);t.kind!==-1;)switch(t.kind){case 10:t.i++;break;case 5:n.accDescr=c(t.take()),r();break;case 6:n.accTitle=d(t.take()),r();break;case 7:n.title=l(t.take()),r();break;case 8:case 3:{let e={$type:`PacketBlock`,label:``};t.accept(3)?e.bits=Number(t.expect(8)):(e.start=Number(t.take()),t.accept(2)&&(e.end=Number(t.expect(8)))),t.expect(4),e.label=u(t.expect(9)),n.blocks.push(e),r();break}default:t.fail(`a field, a title, or a line break`)}return n}function P(e,t,n){return o(n,r=>F(e,t,n,r))}function F(o,s,c,l){let u=c.fontSize??16,d=Math.round(u*.875),f=Math.round(u*.625),p=c.measurer??D(c.fontFamily,c.fontFamilyMono),m=c.padding??8,h=s.packet??{},g=k(s,`rowHeight`,32,1,400),_=k(s,`bitWidth`,32,1,400),v=k(s,`paddingX`,5,0,400),y=k(s,`paddingY`,5,0,400),b=h.showBits!==!1,x=h.bitOrder===`descending`,S=o.bitsPerRow,T=o.rows;if(l){let e=Math.max(1,Math.floor(((c.maxWidth??320)-2*m)/Math.min(_,18)));S=Math.min(S,Math.max(8,2**Math.floor(Math.log2(e))));let t=o.rows[o.rows.length-1],n=t?.[t.length-1]?.end??0;Math.ceil((n+1)/S)>1e4&&(S=o.bitsPerRow),_=Math.min(_,Math.max(18,((c.maxWidth??320)-2*m)/S));let r=e=>e.bits===e.end-e.start,i=[];for(let e of o.rows)for(let t of e){let e=i[i.length-1];e&&r(e)&&r(t)&&e.label===t.label&&t.start===e.end+1&&t.start%o.bitsPerRow===0?(e.end=t.end,e.bits=e.end-e.start):i.push({...t})}T=[];for(let e of i)for(let t=e.start;t<=e.end;){let n=Math.min(e.end,(Math.floor(t/S)+1)*S-1),r=Math.floor(t/S);(T[r]??(T[r]=[])).push({...e,start:t,end:n}),t=n+1}}let O=new Map;if(l)for(let e of T)for(let t of e){let e=Math.max(1,(t.end-t.start+1)*_-Math.min(v,_-1)-6),n=w(E(t.label).trim(),p,d,e);O.set(t,n)}let A=b?f+4:0,j=T.map(e=>{let t=g;if(l)for(let n of e)t=Math.max(t,O.get(n).height+10);return t}),M=[],N=0;for(let e of j)M.push(N),N+=A+e+y;T.length&&(N-=y);let P=Math.min(v,_-1),F=T.length>0?S*_-P:0,I=r(o.title,!1,p,u,l?a(c):4e3,1),L=I.height>0?I.height+(N>0?12:0):0,R=new Map,z=(e,t)=>{let n=R.get(e);return n||R.set(e,n=new Map),n.has(t)||n.set(t,C(E(e).trim(),t,d,Math.round(u*.5),p)),n.get(t)},B=m+Math.max(0,(I.width-F)/2),V=``,H=``;T.forEach((e,r)=>{let a=m+M[r]+A,o=j[r];for(let r of e){let e=r.end-r.start+1,s=r.start%S,c=B+(x?S-s-e:s)*_,u=e*_-P,f=l?void 0:z(r.label,u-6);if(V+=`<g class="pele-node" data-id="${r.start}-${r.end}"><rect x="${i(c)}" y="${i(a)}" width="${i(u)}" height="${i(o)}" fill="var(--_s)" stroke="var(--_b)" style="rx:var(--_r)"/>`+(l?n(O.get(r),c+u/2,a+o/2,``):f&&f.size<=o?`<text x="${i(c+u/2)}" y="${i(a+o/2+f.size*.35)}"${f.size===d?``:` font-size="${i(f.size)}"`}>${t(f.text)}</text>`:``)+`</g>`,!b)continue;let p=x?r.end:r.start,m=x?r.start:r.end;H+=e===1?`<text x="${i(c+u/2)}" y="${i(a-4)}" text-anchor="middle">${p}</text>`:`<text x="${i(c)}" y="${i(a-4)}">${p}</text><text x="${i(c+u)}" y="${i(a-4)}" text-anchor="end">${m}</text>`}});let U=Math.ceil(Math.max(F,I.width)+2*m),W=Math.ceil(N+L+2*m),G=(V?`<g class="pele-packet-fields" font-size="${d}" text-anchor="middle">${V}</g>`:``)+(H?`<g class="pele-packet-bits" font-size="${f}" fill="var(--_m)">${H}</g>`:``)+n(I,U/2,W-m-I.height/2,` class="pele-title" font-weight="var(--_tw)"`);return{svg:e(`packet`,U,W,u,c,o,G),width:U,height:W,links:[]}}var I={type:`packet`,parse:(e,t,n)=>j(N(e),t,n),render:P};export{I as packet};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{ft as e,gt as t,ht as n,mt as r,pt as i,vt as a,yt as o}from"./BxTFtVqu.js";var s=class e{constructor(e,t,n,r,i,a,o,s,c,l=0,u){this.p=e,this.stack=t,this.state=n,this.reducePos=r,this.pos=i,this.score=a,this.buffer=o,this.bufferBase=s,this.curContext=c,this.lookAhead=l,this.parent=u}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?`!`+this.score:``}`}static start(t,n,r=0){let i=t.parser.context;return new e(t,[],n,r,r,0,[],0,i?new c(i,i.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){let t=e>>19,n=e&65535,{parser:r}=this.p,i=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),a=r.dynamicPrecedence(n);if(a&&(this.score+=a),t==0){n<r.minRepeatTerm&&this.reducePos<this.pos&&(this.reducePos=this.pos),this.pushState(r.getGoto(this.state,n,!0),this.reducePos),n<r.minRepeatTerm&&this.storeNode(n,this.reducePos,this.reducePos,i?8:4,!0),this.reduceContext(n,this.reducePos);return}let o=this.stack.length-(t-1)*3-(e&262144?6:0),s=o?this.stack[o-2]:this.p.ranges[0].from;n<r.minRepeatTerm&&s==this.reducePos&&this.reducePos<this.pos&&(this.reducePos=this.pos);let c=this.reducePos-s;c>=2e3&&!this.p.parser.nodeSet.types[n]?.isAnonymous&&(s==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSize<c&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=s,this.p.lastBigReductionSize=c));let l=o?this.stack[o-1]:0,u=this.bufferBase+this.buffer.length-l;if(n<r.minRepeatTerm||e&131072){let e=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(n,s,e,u+4,!0)}if(e&262144)this.state=this.stack[o];else{let e=this.stack[o-3];this.state=r.getGoto(e,n,!0)}for(;this.stack.length>o;)this.stack.pop();this.reduceContext(n,s)}storeNode(e,t,n,r=4,i=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let e=this.buffer.length;if(e>0&&this.buffer[e-4]==0&&this.buffer[e-1]>-1){if(t==n)return;if(this.buffer[e-2]>=t){this.buffer[e-2]=n;return}}}if(!i||this.pos==n)this.buffer.push(e,t,n,r);else{let i=this.buffer.length;if(i>0&&(this.buffer[i-4]!=0||this.buffer[i-1]<0)){let e=!1;for(let t=i;t>0&&this.buffer[t-2]>n;t-=4)if(this.buffer[t-1]>=0){e=!0;break}if(e)for(;i>0&&this.buffer[i-2]>n;)this.buffer[i]=this.buffer[i-4],this.buffer[i+1]=this.buffer[i-3],this.buffer[i+2]=this.buffer[i-2],this.buffer[i+3]=this.buffer[i-1],i-=4,r>4&&(r-=4)}this.buffer[i]=e,this.buffer[i+1]=t,this.buffer[i+2]=n,this.buffer[i+3]=r}}shift(e,t,n,r){if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=r,this.shiftContext(t,n),t<=this.p.parser.maxNode&&this.buffer.push(t,n,r,4);else{let i=e,{parser:a}=this.p;this.pos=r;let o=a.stateFlag(i,1);!o&&(r>n||t<=a.maxNode)&&(this.reducePos=r),this.pushState(i,o?n:Math.min(n,this.reducePos)),this.shiftContext(t,n),t<=a.maxNode&&this.buffer.push(t,n,r,4)}}apply(e,t,n,r){e&65536?this.reduce(e):this.shift(e,t,n,r)}useNode(e,t,n){let r=this.p.reused.length-1;(r<0||this.p.reused[r]!=e)&&(this.p.reused.push(e),r++);let i=this.reducePos=this.pos=n+e.length;this.pushState(t,n),this.buffer.push(r,n,i,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let t=this,n=t.buffer.length;for(n&&t.buffer[n-4]==0&&(n-=4);n>0&&t.buffer[n-2]>t.reducePos;)n-=4;let r=t.buffer.slice(n),i=t.bufferBase+n;for(;t&&i==t.bufferBase;)t=t.parent;return new e(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,r,i,this.curContext,this.lookAhead,t)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new l(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(n==0)return!1;if(!(n&65536))return!0;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let n=[];for(let r=0,i;r<t.length;r+=2)(i=t[r+1])!=this.state&&this.p.parser.hasAction(i,e)&&n.push(t[r],i);if(this.stack.length<120)for(let e=0;n.length<8&&e<t.length;e+=2){let r=t[e+1];n.some((e,t)=>t&1&&e==r)||n.push(t[e],r)}t=n}let n=[];for(let e=0;e<t.length&&n.length<4;e+=2){let r=t[e+1];if(r==this.state)continue;let i=this.split();i.pushState(r,this.pos),i.storeNode(0,i.pos,i.pos,4,!0),i.shiftContext(t[e],this.pos),i.reducePos=this.pos,i.score-=200,n.push(i)}return n}forceReduce(){let{parser:e}=this.p,t=e.stateSlot(this.state,5);if(!(t&65536))return!1;if(!e.validAction(this.state,t)){let n=t>>19,r=t&65535,i=this.stack.length-n*3;if(i<0||e.getGoto(this.stack[i],r,!1)<0){let e=this.findForcedReduction();if(e==null)return!1;t=e}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],n=(r,i)=>{if(!t.includes(r))return t.push(r),e.allActions(r,t=>{if(!(t&393216)){if(t&65536){let n=(t>>19)-i;if(n>1){let r=t&65535,i=this.stack.length-n*3;if(i>=0&&e.getGoto(this.stack[i],r,!1)>=0)return n<<19|65536|r}}else{let e=n(t,i+1);if(e!=null)return e}}})};return n(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;t<this.stack.length;t+=3)if(this.stack[t]!=e.stack[t])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(t)))}reduceContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(t)))}emitContext(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-3)&&this.storeNode(this.curContext.hash,this.reducePos,this.reducePos,-3,!0)}emitLookAhead(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(e){if(e!=this.curContext.context){let t=new c(this.curContext.tracker,e);t.hash!=this.curContext.hash&&this.emitContext(),this.curContext=t}}setLookAhead(e){return e<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=e,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}},c=class{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}},l=class{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,n=e>>19;n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(n-1)*3;let r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}},u=class e{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(t,n=t.bufferBase+t.buffer.length){return new e(t,n,n-t.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new e(this.stack,this.pos,this.index)}};function d(e,t=Uint16Array){if(typeof e!=`string`)return e;let n=null;for(let r=0,i=0;r<e.length;){let a=0;for(;;){let t=e.charCodeAt(r++),n=!1;if(t==126){a=65535;break}t>=92&&t--,t>=34&&t--;let i=t-32;if(i>=46&&(i-=46,n=!0),a+=i,n)break;a*=46}n?n[i++]=a:n=new t(a)}return n}var f=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},p=new f,m=class{constructor(e,t){this.input=e,this.ranges=t,this.chunk=``,this.chunkOff=0,this.chunk2=``,this.chunk2Pos=0,this.next=-1,this.token=p,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,r=this.rangeIndex,i=this.pos+e;for(;i<n.from;){if(!r)return null;let e=this.ranges[--r];i-=n.from-e.to,n=e}for(;t<0?i>n.to:i>=n.to;){if(r==this.ranges.length-1)return null;let e=this.ranges[++r];i+=e.from-n.to,n=e}return i}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let t of this.ranges)if(t.to>e)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,r;if(t>=0&&t<this.chunk.length)n=this.pos+e,r=this.chunk.charCodeAt(t);else{let t=this.resolveOffset(e,1);if(t==null)return-1;if(n=t,n>=this.chunk2Pos&&n<this.chunk2Pos+this.chunk2.length)r=this.chunk2.charCodeAt(n-this.chunk2Pos);else{let e=this.rangeIndex,t=this.range;for(;t.to<=n;)t=this.ranges[++e];this.chunk2=this.input.chunk(this.chunk2Pos=n),n+this.chunk2.length>t.to&&(this.chunk2=this.chunk2.slice(0,t.to-n)),r=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),r}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n<this.token.start)throw RangeError(`Token end out of bounds`);this.token.value=e,this.token.end=n}acceptTokenTo(e,t){this.token.value=e,this.token.end=t}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:t}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=t,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),t=this.pos+e.length;this.chunk=t>this.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.next=this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?-1:this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk=``,this.next=-1}reset(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=p,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;e>=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e<this.chunkPos+this.chunk.length?this.chunkOff=e-this.chunkPos:(this.chunk=``,this.chunkOff=0),this.readNext()}return this}read(e,t){if(e>=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n=``;for(let r of this.ranges){if(r.from>=t)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return n}},h=class{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;v(this.data,e,t,this.id,n.data,n.tokenPrecTable)}};h.prototype.contextual=h.prototype.fallback=h.prototype.extend=!1;var g=class{constructor(e,t,n){this.precTable=t,this.elseToken=n,this.data=typeof e==`string`?d(e):e}token(e,t){let n=e.pos,r=0;for(;;){let n=e.next<0,i=e.resolveOffset(1,1);if(v(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(n||r++,i==null)break;e.reset(i,e.token)}r&&(e.reset(n,e.token),e.acceptToken(this.elseToken,r))}};g.prototype.contextual=h.prototype.fallback=h.prototype.extend=!1;var _=class{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}};function v(e,t,n,r,i,a){let o=0,s=1<<r,{dialect:c}=n.p.parser;scan:for(;(s&e[o])!=0;){let n=e[o+1];for(let r=o+3;r<n;r+=2)if((e[r+1]&s)>0){let n=e[r];if(c.allows(n)&&(t.token.value==-1||t.token.value==n||b(n,t.token.value,i,a))){t.acceptToken(n);break}}let r=t.next,l=0,u=e[o+2];if(t.next<0&&u>l&&e[n+u*3-3]==65535){o=e[n+u*3-1];continue scan}for(;l<u;){let i=l+u>>1,a=n+i+(i<<1),s=e[a],c=e[a+1]||65536;if(r<s)u=i;else if(r>=c)l=i+1;else{o=e[a+2],t.advance();continue scan}}break}}function y(e,t,n){for(let r=t,i;(i=e[r])!=65535;r++)if(i==n)return r-t;return-1}function b(e,t,n,r){let i=y(n,r,t);return i<0||y(n,r,e)<i}var x=typeof process<`u`&&/\bparse\b/.test({}.LOG),S=null;function C(e,t,n){let r=e.cursor(i.IncludeAnonymous);for(r.moveTo(t);;)if(!(n<0?r.childBefore(t):r.childAfter(t)))for(;;){if((n<0?r.to<t:r.from>t)&&!r.type.isError)return n<0?Math.max(0,Math.min(r.to-1,t-25)):Math.min(e.length,Math.max(r.from+1,t+25));if(n<0?r.prevSibling():r.nextSibling())break;if(!r.parent())return n<0?0:e.length}}var w=class{constructor(e,t){this.fragments=e,this.minRepeat=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.lastRepeat=null,this.lastRepeatPos=-1,this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?C(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?C(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(e<this.nextStart)return null;for(;this.fragment&&this.safeTo<=e;)this.nextFragment();if(!this.fragment)return null;for(;;){let t=this.trees.length-1;if(t<0)return this.nextFragment(),null;let n=this.trees[t],i=this.index[t];if(i==n.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let a=n.children[i],s=this.start[t]+n.positions[i];if(s>e)return this.nextStart=s,null;if(a instanceof o){let n=s>this.lastRepeatPos&&a.type.id>=this.minRepeat;if(s==e||n){let t=s+a.length,i;if(s>=this.safeFrom&&t<=this.safeTo&&(!(i=a.prop(r.lookAhead))||t+i<this.fragment.to)){if(n&&(this.lastRepeat=a,this.lastRepeatPos=s),s==e)return a}else if(s==e)return null}this.index[t]++,s+a.length>=Math.max(this.safeFrom,e)&&(this.trees.push(a),this.start.push(s),this.index.push(0))}else this.index[t]++,this.nextStart=s+a.length}}},T=class{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(e=>new f)}getActions(e){let t=0,n=null,{parser:r}=e.p,{tokenizers:i}=r,a=r.stateSlot(e.state,3),o=e.curContext?e.curContext.hash:0,s=0;for(let r=0;r<i.length;r++){if(!(1<<r&a))continue;let c=i[r],l=this.tokens[r];if((!n||c.fallback)&&((c.contextual||l.start!=e.pos||l.mask!=a||l.context!=o)&&(this.updateCachedToken(l,c,e),l.mask=a,l.context=o),l.lookAhead>l.end+25&&(s=Math.max(l.lookAhead,s)),l.value!=0)){let r=t;if(l.extended>-1&&(t=this.addActions(e,l.extended,l.end,t)),t=this.addActions(e,l.value,l.end,t),!c.extend&&(n=l,t>r))break}}for(;this.actions.length>t;)this.actions.pop();return s&&e.setLookAhead(s),!n&&e.pos==this.stream.end&&(n=new f,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new f,{pos:n,p:r}=e;return t.start=n,t.end=Math.min(n+1,r.stream.end),t.value=n==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,n){let r=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(r,e),n),e.value>-1){let{parser:t}=n.p;for(let r=0;r<t.specialized.length;r++)if(t.specialized[r]==e.value){let i=t.specializers[r](this.stream.read(e.start,e.end),n);if(i>=0&&n.p.parser.dialect.allows(i>>1)){i&1?e.extended=i>>1:e.value=i>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,t,n,r){for(let t=0;t<r;t+=3)if(this.actions[t]==e)return r;return this.actions[r++]=e,this.actions[r++]=t,this.actions[r++]=n,r}addActions(e,t,n,r){let{state:i}=e,{parser:a}=e.p,{data:o}=a;for(let e=0;e<2;e++)for(let s=a.stateSlot(i,e?2:1);;s+=3){if(o[s]==65535){if(o[s+1]==1)s=M(o,s+2);else{r==0&&o[s+1]==2&&(r=this.putAction(M(o,s+2),t,n,r));break}}o[s]==t&&(r=this.putAction(M(o,s+1),t,n,r))}return r}},E=class{constructor(e,t,n,r){this.parser=e,this.input=t,this.ranges=r,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new m(t,r),this.tokens=new T(e,this.stream),this.topTerm=e.top[1];let{from:i}=r[0];this.stacks=[s.start(this,e.top[0],i)],this.fragments=n.length&&this.stream.end-i>e.bufferLength*4?new w(n,e.minRepeatTerm):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],r,i;if(this.bigReductionCount>300&&e.length==1){let[t]=e;for(;t.forceReduce()&&t.stack.length&&t.stack[t.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let a=0;a<e.length;a++){let o=e[a];for(;;){if(this.tokens.mainToken=null,o.pos>t)n.push(o);else if(this.advanceStack(o,n,e))continue;else{r||(r=[],i=[]),r.push(o);let e=this.tokens.getMainToken(o);i.push(e.value,e.end)}break}}if(!n.length){let e=r&&N(r);if(e)return x&&console.log(`Finish with `+this.stackID(e)),this.stackToTree(e);if(this.parser.strict)throw x&&r&&console.log(`Stuck with token `+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):`none`)),SyntaxError(`No parse at `+t);this.recovering||=5}if(this.recovering&&r){let e=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,i,n);if(e)return x&&console.log(`Force-finish `+this.stackID(e)),this.stackToTree(e.forceAll())}if(this.recovering){let e=this.recovering==1?1:this.recovering*3;if(n.length>e)for(n.sort((e,t)=>t.score-e.score);n.length>e;)n.pop();n.some(e=>e.reducePos>t)&&this.recovering--}else if(n.length>1){outer:for(let e=0;e<n.length-1;e++){let t=n[e];for(let r=e+1;r<n.length;r++){let i=n[r];if(t.sameState(i)||t.buffer.length>500&&i.buffer.length>500){if((t.score-i.score||t.buffer.length-i.buffer.length)>0)n.splice(r--,1);else{n.splice(e--,1);continue outer}}}}n.length>12&&(n.sort((e,t)=>t.score-e.score),n.splice(12,n.length-12))}this.minStackPos=n[0].pos;for(let e=1;e<n.length;e++)n[e].pos<this.minStackPos&&(this.minStackPos=n[e].pos);return null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw RangeError(`Can't move stoppedAt forward`);this.stoppedAt=e}tryReuse(e,t,n,i){if(!n)return null;let a=e.curContext&&e.curContext.tracker.strict,s=a?e.curContext.hash:0;for(;n;){let c=this.parser.nodeSet.types[n.type.id]==n.type?this.parser.getGoto(e.state,n.type.id):-1;if(c>-1&&n.length&&(!a||(n.prop(r.contextHash)||0)==s))return e.useNode(n,c,t),n;if(n.children.length==0||n.positions[0]>0)break;let l=n.children[0];if(l instanceof o&&(!i||l.type.id>=this.parser.minRepeatTerm))n=l;else break}return null}advanceStack(e,t,n){let r=e.pos,{parser:i}=this,a=x?this.stackID(e)+` -> `:``;if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let t=e.reducePos<r&&e.buffer.length&&e.buffer[e.buffer.length-2]<=e.reducePos&&this.fragments.lastRepeatPos==e.reducePos&&this.tryReuse(e,e.reducePos,this.fragments.lastRepeat,!0)||this.tryReuse(e,r,this.fragments.nodeAt(r),!1);if(t)return x&&console.log(a+this.stackID(e)+` (via reuse of ${i.getName(t.type.id)})`),!0}let o=i.stateSlot(e.state,4);if(o>0)return e.reduce(o),x&&console.log(a+this.stackID(e)+` (via always-reduce ${i.getName(o&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let s=this.tokens.getActions(e);for(let o=0;o<s.length;){let c=s[o++],l=s[o++],u=s[o++],d=o==s.length||!n,f=d?e:e.split(),p=this.tokens.mainToken;if(f.apply(c,l,p?p.start:f.pos,u),x&&console.log(a+this.stackID(f)+` (via ${c&65536?`reduce of ${i.getName(c&65535)}`:`shift`} for ${i.getName(l)} @ ${r}${f==e?``:`, split`})`),d)return!0;f.pos>r?t.push(f):n.push(f)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return D(e,t),!0}}runRecovery(e,t,n){let r=null,i=!1;for(let a=0;a<e.length;a++){let o=e[a],s=t[a<<1],c=t[(a<<1)+1],l=x?this.stackID(o)+` -> `:``;if(o.deadEnd&&(i||(i=!0,o.restart(),x&&console.log(l+this.stackID(o)+` (restarted)`),this.advanceFully(o,n))))continue;let u=o.split(),d=l;for(let e=0;e<10&&u.forceReduce()&&(x&&console.log(d+this.stackID(u)+` (via force-reduce)`),!this.advanceFully(u,n));e++)x&&(d=this.stackID(u)+` -> `);for(let e of o.recoverByInsert(s))x&&console.log(l+this.stackID(e)+` (via recover-insert)`),this.advanceFully(e,n);this.stream.end>o.pos?(c==o.pos&&(c++,s=0),o.recoverByDelete(s,c),x&&console.log(l+this.stackID(o)+` (via recover-delete ${this.parser.getName(s)})`),D(o,n)):(!r||r.score<u.score)&&(r=u)}return r}stackToTree(e){return e.close(),o.build({buffer:u.create(e),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:e.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(e){let t=(S||=new WeakMap).get(e);return t||S.set(e,t=String.fromCodePoint(this.nextStackID++)),t+e}};function D(e,t){for(let n=0;n<t.length;n++){let r=t[n];if(r.pos==e.pos&&r.sameState(e)){t[n].score<e.score&&(t[n]=e);return}}t.push(e)}var O=class{constructor(e,t,n){this.source=e,this.flags=t,this.disabled=n}allows(e){return!this.disabled||this.disabled[e]==0}},k=e=>e,A=class{constructor(e){this.start=e.start,this.shift=e.shift||k,this.reduce=e.reduce||k,this.reuse=e.reuse||k,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}},j=class i extends a{constructor(i){if(super(),this.wrappers=[],i.version!=14)throw RangeError(`Parser version (${i.version}) doesn't match runtime version (14)`);let a=i.nodeNames.split(` `);this.minRepeatTerm=a.length;for(let e=0;e<i.repeatNodeCount;e++)a.push(``);let o=Object.keys(i.topRules).map(e=>i.topRules[e][1]),s=[];for(let e=0;e<a.length;e++)s.push([]);function c(e,t,n){s[e].push([t,t.deserialize(String(n))])}if(i.nodeProps)for(let e of i.nodeProps){let t=e[0];typeof t==`string`&&(t=r[t]);for(let n=1;n<e.length;){let r=e[n++];if(r>=0)c(r,t,e[n++]);else{let i=e[n+-r];for(let a=-r;a>0;a--)c(e[n++],t,i);n++}}}this.nodeSet=new n(a.map((e,n)=>t.define({name:n>=this.minRepeatTerm?void 0:e,id:n,props:s[n],top:o.indexOf(n)>-1,error:n==0,skipped:i.skippedNodes&&i.skippedNodes.indexOf(n)>-1}))),i.propSources&&(this.nodeSet=this.nodeSet.extend(...i.propSources)),this.strict=!1,this.bufferLength=e;let l=d(i.tokenData);this.context=i.context,this.specializerSpecs=i.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let e=0;e<this.specializerSpecs.length;e++)this.specialized[e]=this.specializerSpecs[e].term;this.specializers=this.specializerSpecs.map(P),this.states=d(i.states,Uint32Array),this.data=d(i.stateData),this.goto=d(i.goto),this.maxTerm=i.maxTerm,this.tokenizers=i.tokenizers.map(e=>typeof e==`number`?new h(l,e):e),this.topRules=i.topRules,this.dialects=i.dialects||{},this.dynamicPrecedences=i.dynamicPrecedences||null,this.tokenPrecTable=i.tokenPrec,this.termNames=i.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let r=new E(this,e,t,n);for(let i of this.wrappers)r=i(r,e,t,n);return r}getGoto(e,t,n=!1){let r=this.goto;if(t>=r[0])return-1;for(let i=r[t+1];;){let t=r[i++],a=t&1,o=r[i++];if(a&&n)return o;for(let n=i+(t>>1);i<n;i++)if(r[i]==e)return o;if(a)return-1}}hasAction(e,t){let n=this.data;for(let r=0;r<2;r++)for(let i=this.stateSlot(e,r?2:1),a;;i+=3){if((a=n[i])==65535){if(n[i+1]==1)a=n[i=M(n,i+2)];else if(n[i+1]==2)return M(n,i+2);else break}if(a==t||a==0)return M(n,i+1)}return 0}stateSlot(e,t){return this.states[e*6+t]}stateFlag(e,t){return(this.stateSlot(e,0)&t)>0}validAction(e,t){return!!this.allActions(e,e=>e==t||null)}allActions(e,t){let n=this.stateSlot(e,4),r=n?t(n):void 0;for(let n=this.stateSlot(e,1);r==null;n+=3){if(this.data[n]==65535){if(this.data[n+1]==1)n=M(this.data,n+2);else break}r=t(M(this.data,n+1))}return r}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(this.data[n]==65535){if(this.data[n+1]==1)n=M(this.data,n+2);else break}if(!(this.data[n+2]&1)){let e=this.data[n+1];t.some((t,n)=>n&1&&t==e)||t.push(this.data[n],e)}}return t}configure(e){let t=Object.assign(Object.create(i.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let n=this.topRules[e.top];if(!n)throw RangeError(`Invalid top rule name ${e.top}`);t.top=n}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(t=>{let n=e.tokenizers.find(e=>e.from==t);return n?n.to:t})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,r)=>{let i=e.specializers.find(e=>e.from==n.external);if(!i)return n;let a=Object.assign(Object.assign({},n),{external:i.to});return t.specializers[r]=P(a),a})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map(()=>!1);if(e)for(let r of e.split(` `)){let e=t.indexOf(r);e>=0&&(n[e]=!0)}let r=null;for(let e=0;e<t.length;e++)if(!n[e])for(let n=this.dialects[t[e]],i;(i=this.data[n++])!=65535;)(r||=new Uint8Array(this.maxTerm+1))[i]=1;return new O(e,n,r)}static deserialize(e){return new i(e)}};function M(e,t){return e[t]|e[t+1]<<16}function N(e){let t=null;for(let n of e){let e=n.p.stoppedAt;(n.pos==n.p.stream.end||e!=null&&n.pos>e)&&n.p.parser.stateFlag(n.state,2)&&(!t||t.score<n.score)&&(t=n)}return t}function P(e){if(e.external){let t=+!!e.extend;return(n,r)=>e.external(n,r)<<1|t}return e.get}export{g as i,_ as n,j as r,A as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t=e(`algorithm and annotation assert block break class connect connector constant constrainedby der discrete each else elseif elsewhen encapsulated end enumeration equation expandable extends external false final flow for function if import impure in initial inner input loop model not operator or outer output package parameter partial protected public pure record redeclare replaceable return stream then true type when while within`),n=e(`abs acos actualStream asin atan atan2 cardinality ceil cos cosh delay div edge exp floor getInstanceName homotopy inStream integer log log10 mod pre reinit rem semiLinear sign sin sinh spatialDistribution sqrt tan tanh`),r=e(`Real Boolean Integer String`),i=[].concat(Object.keys(t),Object.keys(n),Object.keys(r)),a=/[;=\(:\),{}.*<>+\-\/^\[\]]/,o=/(:=|<=|>=|==|<>|\.\+|\.\-|\.\*|\.\/|\.\^)/,s=/[0-9]/,c=/[_a-zA-Z]/;function l(e,t){return e.skipToEnd(),t.tokenize=null,`comment`}function u(e,t){for(var n=!1,r;r=e.next();){if(n&&r==`/`){t.tokenize=null;break}n=r==`*`}return`comment`}function d(e,t){for(var n=!1,r;(r=e.next())!=null;){if(r==`"`&&!n){t.tokenize=null,t.sol=!1;break}n=!n&&r==`\\`}return`string`}function f(e,i){for(e.eatWhile(s);e.eat(s)||e.eat(c););var a=e.current();return i.sol&&(a==`package`||a==`model`||a==`when`||a==`connector`)?i.level++:i.sol&&a==`end`&&i.level>0&&i.level--,i.tokenize=null,i.sol=!1,t.propertyIsEnumerable(a)?`keyword`:n.propertyIsEnumerable(a)?`builtin`:r.propertyIsEnumerable(a)?`atom`:`variable`}function p(e,t){for(;e.eat(/[^']/););return t.tokenize=null,t.sol=!1,e.eat(`'`)?`variable`:`error`}function m(e,t){return e.eatWhile(s),e.eat(`.`)&&e.eatWhile(s),(e.eat(`e`)||e.eat(`E`))&&(e.eat(`-`)||e.eat(`+`),e.eatWhile(s)),t.tokenize=null,t.sol=!1,`number`}var h={name:`modelica`,startState:function(){return{tokenize:null,level:0,sol:!0}},token:function(e,t){if(t.tokenize!=null)return t.tokenize(e,t);if(e.sol()&&(t.sol=!0),e.eatSpace())return t.tokenize=null,null;var n=e.next();if(n==`/`&&e.eat(`/`))t.tokenize=l;else if(n==`/`&&e.eat(`*`))t.tokenize=u;else if(o.test(n+e.peek()))return e.next(),t.tokenize=null,`operator`;else if(a.test(n))return t.tokenize=null,`operator`;else if(c.test(n))t.tokenize=f;else if(n==`'`&&e.peek()&&e.peek()!=`'`)t.tokenize=p;else if(n==`"`)t.tokenize=d;else if(s.test(n))t.tokenize=m;else return t.tokenize=null,`error`;return t.tokenize(e,t)},indent:function(e,t,n){if(e.tokenize!=null)return null;var r=e.level;return/(algorithm)/.test(t)&&r--,/(equation)/.test(t)&&r--,/(initial algorithm)/.test(t)&&r--,/(initial equation)/.test(t)&&r--,/(end)/.test(t)&&r--,r>0?n.unit*r:0},languageData:{commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},autocomplete:i}};export{h as modelica};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t=e(`#end #else #break #stop #[[ #]] #{end} #{else} #{break} #{stop}`),n=e(`#if #elseif #foreach #set #include #parse #macro #define #evaluate #{if} #{elseif} #{foreach} #{set} #{include} #{parse} #{macro} #{define} #{evaluate}`),r=e(`$foreach.count $foreach.hasNext $foreach.first $foreach.last $foreach.topmost $foreach.parent.count $foreach.parent.hasNext $foreach.parent.first $foreach.parent.last $foreach.parent $velocityCount $!bodyContent $bodyContent`),i=/[+\-*&%=<>!?:\/|]/;function a(e,t,n){return t.tokenize=n,n(e,t)}function o(e,o){var u=o.beforeParams;o.beforeParams=!1;var d=e.next();if(d==`'`&&!o.inString&&o.inParams)return o.lastTokenWasBuiltin=!1,a(e,o,s(d));if(d==`"`){if(o.lastTokenWasBuiltin=!1,o.inString)return o.inString=!1,`string`;if(o.inParams)return a(e,o,s(d))}else if(/[\[\]{}\(\),;\.]/.test(d))return d==`(`&&u?o.inParams=!0:d==`)`&&(o.inParams=!1,o.lastTokenWasBuiltin=!0),null;else if(/\d/.test(d))return o.lastTokenWasBuiltin=!1,e.eatWhile(/[\w\.]/),`number`;else if(d==`#`&&e.eat(`*`))return o.lastTokenWasBuiltin=!1,a(e,o,c);else if(d==`#`&&e.match(/ *\[ *\[/))return o.lastTokenWasBuiltin=!1,a(e,o,l);else if(d==`#`&&e.eat(`#`))return o.lastTokenWasBuiltin=!1,e.skipToEnd(),`comment`;else if(d==`$`)return e.eat(`!`),e.eatWhile(/[\w\d\$_\.{}-]/),r&&r.propertyIsEnumerable(e.current())?`keyword`:(o.lastTokenWasBuiltin=!0,o.beforeParams=!0,`builtin`);else if(i.test(d))return o.lastTokenWasBuiltin=!1,e.eatWhile(i),`operator`;else{e.eatWhile(/[\w\$_{}@]/);var f=e.current();return t&&t.propertyIsEnumerable(f)?`keyword`:n&&n.propertyIsEnumerable(f)||e.current().match(/^#@?[a-z0-9_]+ *$/i)&&e.peek()==`(`&&!(n&&n.propertyIsEnumerable(f.toLowerCase()))?(o.beforeParams=!0,o.lastTokenWasBuiltin=!1,`keyword`):o.inString?(o.lastTokenWasBuiltin=!1,`string`):e.pos>f.length&&e.string.charAt(e.pos-f.length-1)==`.`&&o.lastTokenWasBuiltin?`builtin`:(o.lastTokenWasBuiltin=!1,null)}}function s(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){a=!0;break}if(e==`"`&&t.peek()==`$`&&!r){n.inString=!0,a=!0;break}r=!r&&i==`\\`}return a&&(n.tokenize=o),`string`}}function c(e,t){for(var n=!1,r;r=e.next();){if(r==`#`&&n){t.tokenize=o;break}n=r==`*`}return`comment`}function l(e,t){for(var n=0,r;r=e.next();){if(r==`#`&&n==2){t.tokenize=o;break}r==`]`?n++:r!=` `&&(n=0)}return`meta`}var u={name:`velocity`,startState:function(){return{tokenize:o,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:`##`,block:{open:`#*`,close:`*#`}}}};export{u as velocity};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t,n){return t(n),n(e,t)}var t=/[a-z]/,n=/[A-Z]/,r=/[a-zA-Z0-9_]/,i=/[0-9]/,a=/[0-9A-Fa-f]/,o=/[-&*+.\\/<>=?^|:]/,s=/[(),[\]{}]/,c=/[ \v\f]/;function l(){return function(l,h){if(l.eatWhile(c))return null;var g=l.next();if(s.test(g))return g===`{`&&l.eat(`-`)?e(l,h,u(1)):g===`[`&&l.match(`glsl|`)?e(l,h,m):`builtin`;if(g===`'`)return e(l,h,p);if(g===`"`)return l.eat(`"`)?l.eat(`"`)?e(l,h,d):`string`:e(l,h,f);if(n.test(g))return l.eatWhile(r),`type`;if(t.test(g)){var _=l.pos===1;return l.eatWhile(r),_?`def`:`variable`}if(i.test(g)){if(g===`0`){if(l.eat(/[xX]/))return l.eatWhile(a),`number`}else l.eatWhile(i);return l.eat(`.`)&&l.eatWhile(i),l.eat(/[eE]/)&&(l.eat(/[-+]/),l.eatWhile(i)),`number`}return o.test(g)?g===`-`&&l.eat(`-`)?(l.skipToEnd(),`comment`):(l.eatWhile(o),`keyword`):g===`_`?`keyword`:`error`}}function u(e){return e==0?l():function(t,n){for(;!t.eol();){var r=t.next();if(r==`{`&&t.eat(`-`))++e;else if(r==`-`&&t.eat(`}`)&&(--e,e===0))return n(l()),`comment`}return n(u(e)),`comment`}}function d(e,t){for(;!e.eol();)if(e.next()===`"`&&e.eat(`"`)&&e.eat(`"`))return t(l()),`string`;return`string`}function f(e,t){for(;e.skipTo(`\\"`);)e.next(),e.next();return e.skipTo(`"`)?(e.next(),t(l()),`string`):(e.skipToEnd(),t(l()),`error`)}function p(e,t){for(;e.skipTo(`\\'`);)e.next(),e.next();return e.skipTo(`'`)?(e.next(),t(l()),`string`):(e.skipToEnd(),t(l()),`error`)}function m(e,t){for(;!e.eol();)if(e.next()===`|`&&e.eat(`]`))return t(l()),`string`;return`string`}var h={case:1,of:1,as:1,if:1,then:1,else:1,let:1,in:1,type:1,alias:1,module:1,where:1,import:1,exposing:1,port:1},g={name:`elm`,startState:function(){return{f:l()}},copyState:function(e){return{f:e.f}},token:function(e,t){var n=t.f(e,function(e){t.f=e}),r=e.current();return h.hasOwnProperty(r)?`keyword`:n},languageData:{commentTokens:{line:`--`}}};export{g as elm};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e;function t(e){return RegExp(`^(?:`+e.join(`|`)+`)$`,`i`)}t([]);var n=t([`@prefix`,`@base`,`a`]),r=/[*+\-<>=&|]/;function i(t,i){var o=t.next();if(e=null,o==`<`&&!t.match(/^[\s\u00a0=]/,!1))return t.match(/^[^\s\u00a0>]*>?/),`atom`;if(o==`"`||o==`'`)return i.tokenize=a(o),i.tokenize(t,i);if(/[{}\(\),\.;\[\]]/.test(o))return e=o,null;if(o==`#`)return t.skipToEnd(),`comment`;if(r.test(o))return t.eatWhile(r),null;if(o==`:`)return`operator`;if(t.eatWhile(/[_\w\d]/),t.peek()==`:`)return`variableName.special`;var s=t.current();return n.test(s)?`meta`:o>=`A`&&o<=`Z`?`comment`:`keyword`;var s}function a(e){return function(t,n){for(var r=!1,a;(a=t.next())!=null;){if(a==e&&!r){n.tokenize=i;break}r=!r&&a==`\\`}return`string`}}function o(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function s(e){e.indent=e.context.indent,e.context=e.context.prev}var c={name:`turtle`,startState:function(){return{tokenize:i,context:null,indent:0,col:0}},token:function(t,n){if(t.sol()&&(n.context&&n.context.align==null&&(n.context.align=!1),n.indent=t.indentation()),t.eatSpace())return null;var r=n.tokenize(t,n);if(r!=`comment`&&n.context&&n.context.align==null&&n.context.type!=`pattern`&&(n.context.align=!0),e==`(`)o(n,`)`,t.column());else if(e==`[`)o(n,`]`,t.column());else if(e==`{`)o(n,`}`,t.column());else if(/[\]\}\)]/.test(e)){for(;n.context&&n.context.type==`pattern`;)s(n);n.context&&e==n.context.type&&s(n)}else e==`.`&&n.context&&n.context.type==`pattern`?s(n):/atom|string|variable/.test(r)&&n.context&&(/[\}\]]/.test(n.context.type)?o(n,`pattern`,t.column()):n.context.type==`pattern`&&!n.context.align&&(n.context.align=!0,n.context.col=t.column()));return r},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&i.type==`pattern`;)i=i.prev;var a=i&&r==i.type;return i?i.type==`pattern`?i.col:i.align?i.col+ +!a:i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:`#`}}};export{c as turtle};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=0;n<e.length;++n)t[e[n]]=!0;return t}var t=[`NULL`,`NA`,`Inf`,`NaN`,`NA_integer_`,`NA_real_`,`NA_complex_`,`NA_character_`,`TRUE`,`FALSE`],n=[`list`,`quote`,`bquote`,`eval`,`return`,`call`,`parse`,`deparse`],r=[`if`,`else`,`repeat`,`while`,`function`,`for`,`in`,`next`,`break`],i=[`if`,`else`,`repeat`,`while`,`function`,`for`],a=e(t),o=e(n),s=e(r),c=e(i),l=/[+\-*\/^<>=!&|~$:]/,u;function d(e,t){u=null;var n=e.next();if(n==`#`)return e.skipToEnd(),`comment`;if(n==`0`&&e.eat(`x`))return e.eatWhile(/[\da-f]/i),`number`;if(n==`.`&&e.eat(/\d/))return e.match(/\d*(?:e[+\-]?\d+)?/),`number`;if(/\d/.test(n))return e.match(/\d*(?:\.\d+)?(?:e[+\-]\d+)?L?/),`number`;if(n==`'`||n==`"`)return t.tokenize=f(n),`string`;if(n=="`")return e.match(/[^`]+`/),`string.special`;if(n==`.`&&e.match(/.(?:[.]|\d+)/))return`keyword`;if(/[a-zA-Z\.]/.test(n)){e.eatWhile(/[\w\.]/);var r=e.current();return a.propertyIsEnumerable(r)?`atom`:s.propertyIsEnumerable(r)?(c.propertyIsEnumerable(r)&&!e.match(/\s*if(\s+|$)/,!1)&&(u=`block`),`keyword`):o.propertyIsEnumerable(r)?`builtin`:`variable`}return n==`%`?(e.skipTo(`%`)&&e.next(),`variableName.special`):n==`<`&&e.eat(`-`)||n==`<`&&e.match(`<-`)||n==`-`&&e.match(/>>?/)||n==`=`&&t.ctx.argList?`operator`:l.test(n)?(n==`$`||e.eatWhile(l),`operator`):/[\(\){}\[\];]/.test(n)?(u=n,n==`;`?`punctuation`:null):null}function f(e){return function(t,n){if(t.eat(`\\`)){var r=t.next();return r==`x`?t.match(/^[a-f0-9]{2}/i):(r==`u`||r==`U`)&&t.eat(`{`)&&t.skipTo(`}`)?t.next():r==`u`?t.match(/^[a-f0-9]{4}/i):r==`U`?t.match(/^[a-f0-9]{8}/i):/[0-7]/.test(r)&&t.match(/^[0-7]{1,2}/),`string.special`}for(var i;(i=t.next())!=null;){if(i==e){n.tokenize=d;break}if(i==`\\`){t.backUp(1);break}}return`string`}}var p=1,m=2,h=4;function g(e,t,n){e.ctx={type:t,indent:e.indent,flags:0,column:n.column(),prev:e.ctx}}function _(e,t){var n=e.ctx;e.ctx={type:n.type,indent:n.indent,flags:n.flags|t,column:n.column,prev:n.prev}}function v(e){e.indent=e.ctx.indent,e.ctx=e.ctx.prev}var y={name:`r`,startState:function(e){return{tokenize:d,ctx:{type:`top`,indent:-e,flags:m},indent:0,afterIdent:!1}},token:function(e,t){if(e.sol()&&(t.ctx.flags&3||(t.ctx.flags|=m),t.ctx.flags&h&&v(t),t.indent=e.indentation()),e.eatSpace())return null;var n=t.tokenize(e,t);return n!=`comment`&&(t.ctx.flags&m)==0&&_(t,p),(u==`;`||u==`{`||u==`}`)&&t.ctx.type==`block`&&v(t),u==`{`?g(t,`}`,e):u==`(`?(g(t,`)`,e),t.afterIdent&&(t.ctx.argList=!0)):u==`[`?g(t,`]`,e):u==`block`?g(t,`block`,e):u==t.ctx.type?v(t):t.ctx.type==`block`&&n!=`comment`&&_(t,h),t.afterIdent=n==`variable`||n==`keyword`,n},indent:function(e,t,n){if(e.tokenize!=d)return 0;var r=t&&t.charAt(0),i=e.ctx,a=r==i.type;return i.flags&h&&(i=i.prev),i.type==`block`?i.indent+(r==`{`?0:n.unit):i.flags&p?i.column+ +!a:i.indent+(a?0:n.unit)},languageData:{wordChars:`.`,commentTokens:{line:`#`},autocomplete:t.concat(n,r)}};export{y as r};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./DXiLM1-G.js";var t=e({start:[{regex:/#?!.*/,token:`comment`},{regex:/"""/,token:`string`,next:`string3`},{regex:/(STRING:)(\s)/,token:[`keyword`,null],next:`string2`},{regex:/\S*?"/,token:`string`,next:`string`},{regex:/(?:0x[\d,a-f]+)|(?:0o[0-7]+)|(?:0b[0,1]+)|(?:\-?\d+.?\d*)(?=\s)/,token:`number`},{regex:/((?:GENERIC)|\:?\:)(\s+)(\S+)(\s+)(\()/,token:[`keyword`,null,`def`,null,`bracket`],next:`stack`},{regex:/(M\:)(\s+)(\S+)(\s+)(\S+)/,token:[`keyword`,null,`def`,null,`tag`]},{regex:/USING\:/,token:`keyword`,next:`vocabulary`},{regex:/(USE\:|IN\:)(\s+)(\S+)(?=\s|$)/,token:[`keyword`,null,`tag`]},{regex:/(\S+\:)(\s+)(\S+)(?=\s|$)/,token:[`keyword`,null,`def`]},{regex:/(?:;|\\|t|f|if|loop|while|until|do|PRIVATE>|<PRIVATE|\.|\S*\[|\]|\S*\{|\})(?=\s|$)/,token:`keyword`},{regex:/\S+[\)>\.\*\?]+(?=\s|$)/,token:`builtin`},{regex:/[\)><]+\S+(?=\s|$)/,token:`builtin`},{regex:/(?:[\+\-\=\/\*<>])(?=\s|$)/,token:`keyword`},{regex:/\S+/,token:`variable`},{regex:/\s+|./,token:null}],vocabulary:[{regex:/;/,token:`keyword`,next:`start`},{regex:/\S+/,token:`tag`},{regex:/\s+|./,token:null}],string:[{regex:/(?:[^\\]|\\.)*?"/,token:`string`,next:`start`},{regex:/.*/,token:`string`}],string2:[{regex:/^;/,token:`keyword`,next:`start`},{regex:/.*/,token:`string`}],string3:[{regex:/(?:[^\\]|\\.)*?"""/,token:`string`,next:`start`},{regex:/.*/,token:`string`}],stack:[{regex:/\)/,token:`bracket`,next:`start`},{regex:/--/,token:`bracket`},{regex:/\S+/,token:`meta`},{regex:/\s+|./,token:null}],languageData:{name:`factor`,dontIndentStates:[`start`,`vocabulary`,`string`,`string3`,`stack`],commentTokens:{line:`!`}}});export{t as factor};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={PRE_SUBJECT:0,WRITING_SUB_URI:1,WRITING_BNODE_URI:2,PRE_PRED:3,WRITING_PRED_URI:4,PRE_OBJ:5,WRITING_OBJ_URI:6,WRITING_OBJ_BNODE:7,WRITING_OBJ_LITERAL:8,WRITING_LIT_LANG:9,WRITING_LIT_TYPE:10,POST_OBJ:11,ERROR:12};function t(t,n){var r=t.location;t.location=r==e.PRE_SUBJECT&&n==`<`?e.WRITING_SUB_URI:r==e.PRE_SUBJECT&&n==`_`?e.WRITING_BNODE_URI:r==e.PRE_PRED&&n==`<`?e.WRITING_PRED_URI:r==e.PRE_OBJ&&n==`<`?e.WRITING_OBJ_URI:r==e.PRE_OBJ&&n==`_`?e.WRITING_OBJ_BNODE:r==e.PRE_OBJ&&n==`"`?e.WRITING_OBJ_LITERAL:r==e.WRITING_SUB_URI&&n==`>`||r==e.WRITING_BNODE_URI&&n==` `?e.PRE_PRED:r==e.WRITING_PRED_URI&&n==`>`?e.PRE_OBJ:r==e.WRITING_OBJ_URI&&n==`>`||r==e.WRITING_OBJ_BNODE&&n==` `||r==e.WRITING_OBJ_LITERAL&&n==`"`||r==e.WRITING_LIT_LANG&&n==` `||r==e.WRITING_LIT_TYPE&&n==`>`?e.POST_OBJ:r==e.WRITING_OBJ_LITERAL&&n==`@`?e.WRITING_LIT_LANG:r==e.WRITING_OBJ_LITERAL&&n==`^`?e.WRITING_LIT_TYPE:n==` `&&(r==e.PRE_SUBJECT||r==e.PRE_PRED||r==e.PRE_OBJ||r==e.POST_OBJ)?r:r==e.POST_OBJ&&n==`.`?e.PRE_SUBJECT:e.ERROR}var n={name:`ntriples`,startState:function(){return{location:e.PRE_SUBJECT,uris:[],anchors:[],bnodes:[],langs:[],types:[]}},token:function(e,n){var r=e.next();if(r==`<`){t(n,r);var i=``;return e.eatWhile(function(e){return e!=`#`&&e!=`>`&&(i+=e,!0)}),n.uris.push(i),e.match(`#`,!1)||(e.next(),t(n,`>`)),`variable`}if(r==`#`){var a=``;return e.eatWhile(function(e){return e!=`>`&&e!=` `&&(a+=e,!0)}),n.anchors.push(a),`url`}if(r==`>`)return t(n,`>`),`variable`;if(r==`_`){t(n,r);var o=``;return e.eatWhile(function(e){return e!=` `&&(o+=e,!0)}),n.bnodes.push(o),e.next(),t(n,` `),`builtin`}if(r==`"`)return t(n,r),e.eatWhile(function(e){return e!=`"`}),e.next(),e.peek()!=`@`&&e.peek()!=`^`&&t(n,`"`),`string`;if(r==`@`){t(n,`@`);var s=``;return e.eatWhile(function(e){return e!=` `&&(s+=e,!0)}),n.langs.push(s),e.next(),t(n,` `),`string.special`}if(r==`^`){e.next(),t(n,`^`);var c=``;return e.eatWhile(function(e){return e!=`>`&&(c+=e,!0)}),n.types.push(c),e.next(),t(n,`>`),`variable`}r==` `&&t(n,r),r==`.`&&t(n,r)}};export{n as ntriples};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`,`i`)}var t=`package.message.import.syntax.required.optional.repeated.reserved.default.extensions.packed.bool.bytes.double.enum.float.string.int32.int64.uint32.uint64.sint32.sint64.fixed32.fixed64.sfixed32.sfixed64.option.service.rpc.returns`.split(`.`),n=e(t),r=RegExp(`^[_A-Za-z¡-][_A-Za-z0-9¡-]*`);function i(e){return e.eatSpace()?null:e.match(`//`)?(e.skipToEnd(),`comment`):e.match(/^[0-9\.+-]/,!1)&&(e.match(/^[+-]?0x[0-9a-fA-F]+/)||e.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?/)||e.match(/^[+-]?\d+([EeDd][+-]?\d+)?/))?`number`:e.match(/^"([^"]|(""))*"/)||e.match(/^'([^']|(''))*'/)?`string`:e.match(n)?`keyword`:e.match(r)?`variable`:(e.next(),null)}var a={name:`protobuf`,token:i,languageData:{autocomplete:t}};export{a as protobuf};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`)}var t=RegExp(`^[\\+\\-\\*/&|\\^~<>!@'\\\\]`),n=RegExp(`^[\\(\\[\\{\\},:=;\\.]`),r=RegExp(`^((==)|(~=)|(<=)|(>=)|(<<)|(>>)|(\\.[\\+\\-\\*/\\^\\\\]))`),i=RegExp(`^((!=)|(\\+=)|(\\-=)|(\\*=)|(/=)|(&=)|(\\|=)|(\\^=))`),a=RegExp(`^((>>=)|(<<=))`),o=RegExp(`^[\\]\\)]`),s=RegExp(`^[_A-Za-z¡-][_A-Za-z0-9¡-]*`),c=e(`error.eval.function.abs.acos.atan.asin.cos.cosh.exp.log.prod.sum.log10.max.min.sign.sin.sinh.sqrt.tan.reshape.break.zeros.default.margin.round.ones.rand.syn.ceil.floor.size.clear.zeros.eye.mean.std.cov.det.eig.inv.norm.rank.trace.expm.logm.sqrtm.linspace.plot.title.xlabel.ylabel.legend.text.grid.meshgrid.mesh.num2str.fft.ifft.arrayfun.cellfun.input.fliplr.flipud.ismember`.split(`.`)),l=e(`return.case.switch.else.elseif.end.endif.endfunction.if.otherwise.do.for.while.try.catch.classdef.properties.events.methods.global.persistent.endfor.endwhile.printf.sprintf.disp.until.continue.pkg`.split(`.`));function u(e,t){return!e.sol()&&e.peek()===`'`?(e.next(),t.tokenize=f,`operator`):(t.tokenize=f,f(e,t))}function d(e,t){return e.match(/^.*%}/)?(t.tokenize=f,`comment`):(e.skipToEnd(),`comment`)}function f(p,m){if(p.eatSpace())return null;if(p.match(`%{`))return m.tokenize=d,p.skipToEnd(),`comment`;if(p.match(/^[%#]/))return p.skipToEnd(),`comment`;if(p.match(/^[0-9\.+-]/,!1)){if(p.match(/^[+-]?0x[0-9a-fA-F]+[ij]?/))return p.tokenize=f,`number`;if(p.match(/^[+-]?\d*\.\d+([EeDd][+-]?\d+)?[ij]?/)||p.match(/^[+-]?\d+([EeDd][+-]?\d+)?[ij]?/))return`number`}if(p.match(e([`nan`,`NaN`,`inf`,`Inf`])))return`number`;var h=p.match(/^"(?:[^"]|"")*("|$)/)||p.match(/^'(?:[^']|'')*('|$)/);return h?h[1]?`string`:`error`:p.match(l)?`keyword`:p.match(c)?`builtin`:p.match(s)?`variable`:p.match(t)||p.match(r)?`operator`:p.match(n)||p.match(i)||p.match(a)?null:p.match(o)?(m.tokenize=u,null):(p.next(),`error`)}var p={name:`octave`,startState:function(){return{tokenize:f}},token:function(e,t){var n=t.tokenize(e,t);return(n===`number`||n===`variable`)&&(t.tokenize=u),n},languageData:{commentTokens:{line:`%`}}};export{p as octave};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{_ as e,a as t,f as n,i as r,l as i,o as a,r as o,u as s,x as c}from"./CX-xckzu.js";import{t as l}from"./DciMwFJ1.js";import{a as u,s as d}from"./DECNRCf2.js";import{c as f,d as p,g as m,h,i as g,n as _,o as v,p as y,r as b,s as x,t as S}from"./BunrC_8P.js";import{n as C,r as w,t as T}from"./BrqJKzQU.js";import{t as E}from"./CEufJyoj.js";import{PeleError as D,d as O,o as k,u as A}from"./8wVGBFSs.js";var j=new Map([[`ui`,`ui`],[`pcr`,`processor`],[`processor`,`processor`],[`rmo`,`readmodel`],[`readmodel`,`readmodel`],[`cmd`,`command`],[`command`,`command`],[`evt`,`event`],[`event`,`event`]]),M=new Map([[`trigger`,[0,`UI/Automation`,`UI/A: `]],[`state`,[100,`Command/Read Model`,`C/RM: `]],[`stream`,[200,`Events`,`Stream: `]]]);function N(e){return e===`ui`||e===`processor`?`trigger`:e===`event`?`stream`:`state`}function P(e){let t=e.indexOf(`{`),n=e.lastIndexOf(`}`),r=(t!==-1&&n>t?e.slice(t+1,n):t===-1&&e.length>=2?e.slice(1,-1):``).replace(/\r/g,``).split(`
|
|
2
|
+
`);for(;r.length>0&&r[0].trim()===``;)r.shift();for(;r.length>0&&r[r.length-1].trim()===``;)r.pop();let i=1/0;for(let e of r)e.trim()!==``&&(i=Math.min(i,e.length-e.trimStart().length));return r.map(e=>e.slice(Math.min(i,e.length)).trimEnd()).join(`
|
|
3
|
+
`)}function F(e,t){let n=new Set;for(let t of e.frames){if(n.has(t.name)){let n=k(e.$source,t.$offset).line;throw new D(`Duplicate event modeling frame ID "${t.name}" on line ${n}`,`semantic`,{type:`eventmodeling`,line:n})}n.add(t.name)}let r=new Map;for(let t of e.dataEntities)r.has(t.name)||r.set(t.name,t.dataBlockValue);let i=new Map,a=new Map,o=(e,t)=>{let n=N(e),r=t===void 0?n:`${n} ${t}`,o=i.get(r);if(!o){let[e,s,c]=M.get(n),l=e;t!==void 0&&(l=a.get(n)??e+1,a.set(n,l+1)),o={index:l,label:t===void 0?s:c+t,group:n,namespace:t},i.set(r,o)}return o},s=[],c=new Map,l=[];e.frames.forEach((e,t)=>{let n=e.entityIdentifier.split(`.`),i=n.length===2?n[0]:void 0,a=j.get(e.modelEntityType)??`event`,u=e.dataInlineValue===void 0?void 0:P(e.dataInlineValue);if(e.dataReference){let t=r.get(e.dataReference.$refText);t!==void 0&&(u=P(t))}let d={id:e.name,kind:a,entity:e.entityIdentifier,name:n.length===2?n[1]:e.entityIdentifier,namespace:i,reset:e.$type===`EmResetFrame`,lane:o(a,i),data:u,dataType:e.dataType};if(s.push(d),c.set(d.id,d),e.sourceFrames.length>0){let t=new Set(e.sourceFrames.map(e=>e.$refText));for(let e of s)t.has(e.id)&&l.push({source:e,target:d})}else if(t>0&&!d.reset){for(let e=t-1;e>=0;e--)if(s[e].lane!==d.lane){l.push({source:s[e],target:d});break}}});let u=e=>e.map(e=>e.entityIdentifier.$refText);return{type:`eventmodeling`,title:e.title&&p(e.title)||t,accTitle:e.accTitle?m(e.accTitle).replace(/^\s+/g,``):void 0,accDescr:e.accDescr?f(e.accDescr).replace(/\n\s+/g,`
|
|
4
|
+
`):void 0,boxes:s,lanes:[...i.values()].sort((e,t)=>e.index-t.index),relations:l,notes:e.noteEntities.map(e=>({frame:e.sourceFrame.$refText,text:P(e.dataBlockValue),dataType:e.dataType})),specifications:e.gwtEntities.map(e=>({frame:e.sourceFrame.$refText,given:u(e.givenStatements),when:u(e.whenStatements),then:u(e.thenStatements)})),entities:e.modelEntities.map(e=>e.name)}}var I={name:`EM_ID`,pattern:/[_a-zA-Z][\w_]*/y},L=e=>({name:e,pattern:e,longer:[I]}),R=e=>({name:e,pattern:e}),z=[`resetframe`,`readmodel`,`processor`,`timeframe`,`command`,`entity`,`event`,`jsobj`,`figma`,`given`,`json`,`salt`,`html`,`text`,`data`,`note`,`when`,`then`,`rmo`,`cmd`,`evt`,`pcr`,`uri`],B=[{...g(`eventmodeling`),longer:[I]},...z.map(L),R(`->>`),L(`gwt`),L(`ui`),L(`md`),L(`tf`),R(`[[`),R(`]]`),L(`rf`),R("`"),R(`.`),I,{name:`EM_FID`,pattern:/\d{1,3}/y},{name:`EM_DATA_INLINE`,pattern:/\{(.*)\}|"(.*)"|'(.*)'/y},{name:`EM_DATA_BLOCK`,pattern:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/y},E(`EM_ACC_DESCR`),{...S,name:`EM_ACC_TITLE`},{...y,name:`EM_TITLE`},{name:`EM_WS`,pattern:/\s+/y,hidden:!0},{...b,name:`EM_YAML`},{...v,name:`EM_DIRECTIVE`},{...x,name:`EM_SINGLE_LINE_COMMENT`},{name:`EM_ML_COMMENT`,pattern:/\/\*[\s\S]*?\*\//y,hidden:!0},{name:`EM_SL_COMMENT`,pattern:/\/\/[^\n\r]*/y,hidden:!0}],V=e=>B.findIndex(t=>t.name===e),H=e=>new Set(e.map(V)),U={keyword:0,arrow:V(`->>`),open:V(`[[`),close:V(`]]`),tick:V("`"),dot:V(`.`),id:V(`EM_ID`),frameId:V(`EM_FID`),inline:V(`EM_DATA_INLINE`),block:V(`EM_DATA_BLOCK`),accDescr:V(`EM_ACC_DESCR`),accTitle:V(`EM_ACC_TITLE`),title:V(`EM_TITLE`),entity:V(`entity`),data:V(`data`),note:V(`note`),gwt:V(`gwt`),given:V(`given`),when:V(`when`),then:V(`then`)},W=H([`tf`,`timeframe`]),G=H([`rf`,`resetframe`]),K=H([`rmo`,`readmodel`,`ui`,`cmd`,`command`,`evt`,`event`,`pcr`,`processor`]),q=H([`json`,`jsobj`,`figma`,`salt`,`uri`,`md`,`html`,`text`]);function J(e){let t=new h(_(e,B,`eventmodeling`),B,`eventmodeling`),n={$type:`EventModel`,modelEntities:[],frames:[],dataEntities:[],noteEntities:[],gwtEntities:[],$source:e},r=e=>t.kinds[t.i]===e,i=(e,n)=>e.has(t.kinds[t.i])?t.take():t.fail(n),a=()=>{let e=t.expect(U.id);for(;t.accept(U.dot);)e+=`.`+t.expect(U.id);return e},o=()=>{if(!t.accept(U.tick))return;let e=i(q,`a data type`);return t.expect(U.tick),e},s=()=>{let e=[];do i(K,`an entity type`),e.push({$type:`EmGwtStatement`,entityIdentifier:{$refText:t.expect(U.id)}});while(K.has(t.kinds[t.i]));return e};for(t.expect(U.keyword);!r(-1);){let e=t.kinds[t.i];if(e===U.accDescr)n.accDescr=t.take();else if(e===U.accTitle)n.accTitle=t.take();else if(e===U.title)n.title=t.take();else if(e===U.entity)t.i++,n.modelEntities.push({$type:`EmModelEntity`,name:a()});else if(W.has(e)||G.has(e)){let s={$type:W.has(e)?`EmTimeFrame`:`EmResetFrame`,name:``,modelEntityType:``,entityIdentifier:``,sourceFrames:[],$offset:t.tokens.starts[t.i]};for(t.i++,s.name=t.expect(U.frameId),s.modelEntityType=i(K,`an entity type`),s.entityIdentifier=a();t.accept(U.arrow);)s.sourceFrames.push({$refText:t.expect(U.frameId)});if(t.accept(U.open)&&(s.dataReference={$refText:t.expect(U.id)},t.expect(U.close)),r(U.tick)||r(U.inline)){let e=o();e!==void 0&&(s.dataType=e),s.dataInlineValue=t.expect(U.inline)}n.frames.push(s)}else if(e===U.data){t.i++;let e={$type:`EmDataEntity`,name:t.expect(U.id),dataBlockValue:``},r=o();r!==void 0&&(e.dataType=r),e.dataBlockValue=t.expect(U.block),n.dataEntities.push(e)}else if(e===U.note){t.i++;let e={$type:`EmNoteEntity`,sourceFrame:{$refText:t.expect(U.frameId)},dataBlockValue:``},r=o();r!==void 0&&(e.dataType=r),e.dataBlockValue=t.expect(U.block),n.noteEntities.push(e)}else if(e===U.gwt){t.i++;let e={$type:`EmGwt`,sourceFrame:{$refText:t.expect(U.frameId)},givenStatements:[],whenStatements:[],thenStatements:[]};t.expect(U.given),e.givenStatements=s(),t.accept(U.when)&&(e.whenStatements=s()),t.expect(U.then),e.thenStatements=s(),n.gwtEntities.push(e)}else t.fail(`a frame, an entity, a data block, a note, or a specification`)}return n}var ee=new Map([[`command`,0],[`event`,1],[`readmodel`,2],[`processor`,6]]),Y=12,X=10,te=96,ne=16,re=80,Z=12,ie=8,ae=48,oe=80,se=8;function Q(e,t){let n=[];for(let r of O(e).split(`
|
|
5
|
+
`)){let e=r.length<=t?void 0:Array.from(r);if(e===void 0||e.length<=t)n.push(r);else for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t).join(``))}return n}function $(e,n,r,i,a){let o=``;for(let a=0;a<e.length;a++)e[a]!==``&&(o+=`<tspan x="${c(n)}" y="${c(r+a*i)}">${t(e[a])}</tspan>`);return o===``?``:`<text${a} xml:space="preserve">${o}</text>`}function ce(e,t,n){return l(n,r=>le(e,t,n,r))}function le(t,l,f,p){if(p)return pe(t,f);let m=f.fontSize??16,h=Math.round(m*.875),g=Math.round(m*.8125),_=Math.round(m*.75),v=Math.round(_*1.4),y=Math.round(g*1.5),b=f.measurer??A(f.fontFamily,f.fontFamilyMono),x=f.padding??8,S=(e,t,n)=>{let r=0;for(let i of e)r=Math.max(r,b.width(i,t,n));return r},C=new Map,w=0;for(let e of t.lanes){let t=s(e.label,!1,b,g,4e3,1);w=Math.max(w,t.width),C.set(e,{lane:e,label:t,right:-1/0,y:0,h:0})}w+=2*Z;let T=[],E=new Map,D;for(let e of t.boxes){let t=C.get(e.lane),n=s(e.name,!1,b,h,4e3,1),r=e.data?Q(e.data,ae):[],i=Math.max(te,Math.max(n.width,S(r,_,4))+2*Y),a=2*X+n.height+(r.length>0?6+r.length*v:0),o=0;if(D){let n=D.x+Math.max(D.w/2,D.w-re);o=D.box.lane===e.lane?t.right+ne:Math.max(n,t.right+ne)}let c={box:e,name:n,data:r,x:o,y:0,w:i,h:a};t.right=o+i,t.h=Math.max(t.h,a),T.push(c),E.set(e,c),D=c}let O=0;for(let e of T)O=Math.max(O,e.x+e.w);let k=w+O+Z,j=s(t.title,!1,b,m,4e3,1),M=j.height>0?j.height+12:0,N=x,P=x+M,F=P,I=``;for(let e of C.values())e.y=F,e.h+=2*Z,I+=`<g class="pele-cluster pele-em-lane" data-id="${r(e.lane.label)}"><rect x="${c(N)}" y="${c(F)}" width="${c(k)}" height="${c(e.h)}" fill="var(--_s)"${o}/>`+a(e.label,N+Z+e.label.width/2,F+e.h/2,` class="pele-cluster-label" font-size="${g}" font-weight="var(--_hw)" fill="var(--_m)"`)+`</g>`,F+=e.h+ie;let L=C.size>0?F-ie:P,R=``;for(let e of T){let t=C.get(e.box.lane);e.x+=N+w,e.y=t.y+(t.h-e.h)/2;let s=ee.get(e.box.kind),l=`x="${c(e.x)}" y="${c(e.y)}" width="${c(e.w)}" height="${c(e.h)}"`,u=s===void 0?`<rect ${l} fill="var(--_bg)" stroke="var(--_b)"${o}/>`:`<rect ${l} fill="var(--_bg)"${o}/><rect ${l} fill="${n(s)}" fill-opacity="0.22" stroke="${n(s)}"${o}/>`,d=e.y+X+e.name.height/2,f=a(e.name,e.x+e.w/2,d,` class="pele-label" font-size="${h}" font-weight="var(--_hw)"`)+$(e.data,e.x+Y,e.y+X+e.name.height+6+v/2+_*.35,v,` class="pele-em-data" font-family="${i}" font-size="${_}"`);R+=`<g class="pele-node pele-em-${e.box.kind}${e.box.reset?` pele-em-reset`:``}" data-id="${r(e.box.id)}">${u}${f}</g>`}let z=``,B=u(`arrow_point`);for(let e of t.relations){let t=E.get(e.source),n=E.get(e.target);if(!t||!n||t===n)continue;let i,a;if(t.box.lane===n.box.lane){let e=n.x>=t.x,r=e?t.x+t.w:t.x,o=e?n.x:n.x+n.w,s=t.y+t.h/2,l=n.y+n.h/2,u=o>=r?1:-1;i=`M${c(r)},${c(s)}L${c(o-u*B)},${c(l)}`,a=d(`arrow_point`,o,l,u,0,`var(--_l)`)}else{let e=n.y>t.y,r=Math.max(t.x,n.x),o=Math.min(t.x+t.w,n.x+n.w),s=e=>Math.min(24,e/4),l=o-r>=16?(r+o)/2:n.x>t.x?t.x+t.w-s(t.w):t.x+s(t.w),u=o-r>=16?l:n.x>t.x?n.x+s(n.w):n.x+n.w-s(n.w),f=e?t.y+t.h:t.y,p=e?n.y:n.y+n.h,m=e?1:-1,h=p-m*B,g=(f+h)/2;i=l===u?`M${c(l)},${c(f)}V${c(h)}`:`M${c(l)},${c(f)}C${c(l)},${c(g)} ${c(u)},${c(g)} ${c(u)},${c(h)}`,a=d(`arrow_point`,u,p,0,m,`var(--_l)`)}z+=`<g class="pele-edge" data-id="${r(e.source.id)}-${r(e.target.id)}"><path d="${i}" fill="none" stroke="var(--_l)"/>${a}</g>`}let V=new Map;for(let e of t.boxes)V.set(e.id,e.name);let H=``,U=0,W=(e,t,n,i)=>{let l=s(`${t} · ${n}${V.has(n)?` `+V.get(n):``}`,!1,b,g,4e3,1),u=Math.max(l.width,S(i,g,0))+2*Y,d=2*X+l.height+i.length*y,f=L+(H===``&&C.size===0?0:se);H+=`<g class="pele-em-${e}" data-id="${r(n)}"><rect x="${c(N)}" y="${c(f)}" width="${c(u)}" height="${c(d)}" fill="var(--_bg)" stroke="var(--_b)"${o}/>`+a(l,N+Y+l.width/2,f+X+l.height/2,` font-size="${g}" font-weight="var(--_hw)"`)+$(i,N+Y,f+X+l.height+y/2+g*.35,y,` font-size="${g}"`)+`</g>`,L=f+d,U=Math.max(U,u)};for(let e of t.notes)W(`note`,`Note`,e.frame,Q(e.text,oe));for(let e of t.specifications){let t=[`Given ${e.given.join(`, `)}`];e.when.length>0&&t.push(`When ${e.when.join(`, `)}`),t.push(`Then ${e.then.join(`, `)}`),W(`specification`,`Given / When / Then`,e.frame,t.flatMap(e=>Q(e,oe)))}let G=Math.max(C.size>0?k:0,U,j.width),K=Math.ceil(G+2*x),q=Math.ceil(L+x),J=a(j,K/2,x+j.height/2,` class="pele-title" font-weight="var(--_tw)"`)+I+z+R+H;return{svg:e(`eventmodeling`,K,q,m,f,t,J),width:K,height:q,links:[]}}var ue=8,de=120,fe=20;function pe(l,f){let p=f.fontSize??16,m=Math.round(p*.875),h=Math.round(p*.75),g=f.padding??8,_=f.measurer??A(f.fontFamily,f.fontFamilyMono),v=Math.max(160,(f.maxWidth??320)-2*g),y=new Map(l.boxes.map((e,t)=>[e,t])),b=new Map,x=new Set;for(let e of l.relations){let t=y.get(e.source),n=y.get(e.target);if(t===void 0||n===void 0||t===n)continue;if(Math.abs(t-n)<2){x.add(l.boxes[Math.max(t,n)]);continue}let r=b.get(e.target);r?(r[0]=Math.min(r[0],t),r[1]=Math.max(r[1],t)):b.set(e.target,[Math.min(t,n),Math.max(t,n)])}let S=new Map,E=[];for(let[e,[t,n]]of[...b].sort((e,t)=>e[1][0]-t[1][0])){let r=E.findIndex(e=>e<t);r<0&&(r=E.length),E[r]=n,S.set(e,r)}let D=24+ue*Math.max(0,E.length-1),k=Math.max(de,v-D),j=k-2*Y,M=s(l.title,!1,_,p,v,1),N=g+(M.height?M.height+12:0),P=g+M.height,F=Math.max(M.width,k+D),I=``,L=``,R=``,z=new Map,B=(e,t,n=0)=>T(O(e),_,t,j,n);l.boxes.forEach((e,l)=>{let u=x.has(e)?j-fe:j,d=w(s(e.lane.label,!1,_,m,u,1),_,u),f=s(e.name,!1,_,m,j-36,1),p=e.data?B(e.data,h,4):void 0,v=Math.max(k,d.width+2*Y,f.width+2*Y+36,(p?.width??0)+2*Y),y=d.height+12,b=2*X+f.height+(p?p.height+6:0),S=ee.get(e.kind),T=N+y,E=`x="${c(g)}" y="${c(T)}" width="${c(v)}" height="${c(b)}"`;I+=`<g class="pele-cluster pele-em-lane" data-id="${r(e.lane.label)}">`+C(d,g+Y,N,` class="pele-cluster-label" font-size="${m}" font-weight="var(--_hw)" fill="var(--_m)"`)+`<g class="pele-node pele-em-${e.kind}${e.reset?` pele-em-reset`:``}" data-id="${r(e.id)}"><rect ${E} fill="var(--_bg)" stroke="var(--_b)"${o}/>`+(S===void 0?``:`<rect ${E} fill="${n(S)}" fill-opacity="0.22" stroke="${n(S)}"${o}/>`)+a(f,g+Y+f.width/2,T+X+f.height/2,` class="pele-label" font-size="${m}" font-weight="var(--_hw)"`)+`<text class="pele-em-frame" x="${c(g+v-Y)}" y="${c(T+X+m)}" text-anchor="end" font-size="${h}" fill="var(--_m)">${t(e.id)}</text>`+(p?$(p.lines.map(e=>e.map(e=>e.text).join(``)),g+Y,T+X+f.height+6+p.lineHeight/2+h*.35,p.lineHeight,` class="pele-em-data" font-family="${i}" font-size="${h}"`):``)+`</g></g>`,z.set(e,{y:T,h:b,w:v,index:l,lane:d.width}),F=Math.max(F,v+D),P=T+b,N=P+28});for(let e of l.relations){let t=z.get(e.source),n=z.get(e.target);if(!t||!n||t===n)continue;let i=n.y>t.y,a=i?1:-1,o=i?t.y+t.h:t.y,s=i?n.y:n.y+n.h,l,f;if(Math.abs(t.index-n.index)===1){let e=g+Math.max(Math.min(t.w,n.w)/2,Y+(i?n:t).lane+16);l=`M${c(e)},${c(o)}V${c(s-a*u(`arrow_point`))}`,f=d(`arrow_point`,e,s,0,a,`var(--_l)`)}else{let r=g+F-D+12+ue*(S.get(e.target)??0),i=t.y+t.h/2-5,a=n.y+n.h/2+5;l=`M${c(g+t.w)},${c(i)}H${c(r)}V${c(a)}H${c(g+n.w+u(`arrow_point`))}`,f=d(`arrow_point`,g+n.w,a,-1,0,`var(--_l)`)}L+=`<g class="pele-edge" data-id="${r(e.source.id)}-${r(e.target.id)}"><path d="${l}" fill="none" stroke="var(--_l)"/>${f}</g>`}let V=new Map(l.boxes.map(e=>[e.id,e.name])),H=(e,t,n,i)=>{let l=s(`${t} · ${n}${V.has(n)?` `+V.get(n):``}`,!1,_,m,j,1),u=B(i,m),d=Math.max(k,l.width+2*Y,u.width+2*Y),f=2*X+l.height+u.height;R+=`<g class="pele-em-${e}" data-id="${r(n)}"><rect x="${c(g)}" y="${c(N)}" width="${c(d)}" height="${c(f)}" fill="var(--_bg)" stroke="var(--_b)"${o}/>`+a(l,g+Y+l.width/2,N+X+l.height/2,` font-size="${m}" font-weight="var(--_hw)"`)+$(u.lines.map(e=>e.map(e=>e.text).join(``)),g+Y,N+X+l.height+u.lineHeight/2+m*.35,u.lineHeight,` font-size="${m}"`)+`</g>`,P=N+f,N=P+se,F=Math.max(F,d)};for(let e of l.notes)H(`note`,`Note`,e.frame,e.text);for(let e of l.specifications){let t=[`Given ${e.given.join(`, `)}`];e.when.length&&t.push(`When ${e.when.join(`, `)}`),t.push(`Then ${e.then.join(`, `)}`),H(`specification`,`Given / When / Then`,e.frame,t.join(`
|
|
6
|
+
`))}let U=Math.ceil(F+2*g),W=Math.ceil(P+g),G=a(M,U/2,g+M.height/2,` class="pele-title" font-weight="var(--_tw)"`)+L+I+R;return{svg:e(`eventmodeling`,U,W,p,f,l,G),width:U,height:W,links:[]}}var me={type:`eventmodeling`,keepComments:!0,parse:(e,t,n)=>F(J(e),n),render:ce};export{me as eventmodeling};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={slash:0,parenthesis:1},t={comment:0,_string:1,characterClass:2},n={name:`ebnf`,startState:function(){return{stringType:null,commentType:null,braced:0,lhs:!0,localState:null,stack:[],inDefinition:!1}},token:function(n,r){if(n){switch(r.stack.length===0&&(n.peek()==`"`||n.peek()==`'`?(r.stringType=n.peek(),n.next(),r.stack.unshift(t._string)):n.match(`/*`)?(r.stack.unshift(t.comment),r.commentType=e.slash):n.match(`(*`)&&(r.stack.unshift(t.comment),r.commentType=e.parenthesis)),r.stack[0]){case t._string:for(;r.stack[0]===t._string&&!n.eol();)n.peek()===r.stringType?(n.next(),r.stack.shift()):n.peek()===`\\`?(n.next(),n.next()):n.match(/^.[^\\\"\']*/);return r.lhs?`property`:`string`;case t.comment:for(;r.stack[0]===t.comment&&!n.eol();)r.commentType===e.slash&&n.match(`*/`)||r.commentType===e.parenthesis&&n.match(`*)`)?(r.stack.shift(),r.commentType=null):n.match(/^.[^\*]*/);return`comment`;case t.characterClass:for(;r.stack[0]===t.characterClass&&!n.eol();)n.match(/^[^\]\\]+/)||n.match(`.`)||r.stack.shift();return`operator`}var i=n.peek();switch(i){case`[`:return n.next(),r.stack.unshift(t.characterClass),`bracket`;case`:`:case`|`:case`;`:return n.next(),`operator`;case`%`:if(n.match(`%%`))return`header`;if(n.match(/[%][A-Za-z]+/))return`keyword`;if(n.match(/[%][}]/))return`bracket`;break;case`/`:if(n.match(/[\/][A-Za-z]+/))return`keyword`;case`\\`:if(n.match(/[\][a-z]+/))return`string.special`;case`.`:if(n.match(`.`))return`atom`;case`*`:case`-`:case`+`:case`^`:if(n.match(i))return`atom`;case`$`:if(n.match(`$$`))return`builtin`;if(n.match(/[$][0-9]+/))return`variableName.special`;case`<`:if(n.match(/<<[a-zA-Z_]+>>/))return`builtin`}return n.match(`//`)?(n.skipToEnd(),`comment`):n.match(`return`)?`operator`:n.match(/^[a-zA-Z_][a-zA-Z0-9_]*/)?n.match(/(?=[\(.])/)?`variable`:n.match(/(?=[\s\n]*[:=])/)?`def`:`variableName.special`:[`[`,`]`,`(`,`)`].indexOf(n.peek())==-1?(n.eatSpace()||n.next(),null):(n.next(),`bracket`)}}};export{n as ebnf};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{_ as e,a as t,b as n,d as r,i,o as a,p as o,s,u as c,x as l,y as u}from"./CX-xckzu.js";import{a as d,t as f}from"./DciMwFJ1.js";import{a as p,i as m,l as h,s as g}from"./DECNRCf2.js";import{t as _}from"./CoyQYage.js";import{r as v}from"./B9YLdnR_.js";import{i as y,n as b,r as x,t as ee}from"./vk5Wkr31.js";import{PeleError as S,a as C,b as w,r as T,u as te,v as E,x as D,y as O}from"./8wVGBFSs.js";var k=`EOF USECASE ACTOR SYSTEM_BOUNDARY END DIRECTION TD TB BT LR RL NOTE FOR JSON CLASS_DEF CLASS STYLE INCLUDE EXTEND TRUE FALSE IDENTIFIER NUMBER AT COMMA COLON HASH_COLOR CSS_IDENTIFIER CSS_ESCAPED_COMMA DASH DOT PERCENT CSS_PUNCTUATION LABEL_PUNCTUATION LABEL_SYMBOL PLAIN_STRING MARKDOWN_STRING UNCLOSED_MARKDOWN_STRING COMMENT NEWLINE ACC_DESCR_BLOCK ACC_TITLE_LINE ACC_DESCR_LINE JSON_DECLARATION_START JSON_OBJECT_LITERAL UNCLOSED_JSON_OBJECT_LITERAL GENERALIZATION DEPENDENCY_ARROW STEREOTYPE_START STEREOTYPE_END STEREOTYPE_TEXT UNCLOSED_STEREOTYPE_TEXT CLASS_SEPARATOR FORWARD_SOLID BACKWARD_SOLID FORWARD_CIRCLE BACKWARD_CIRCLE FORWARD_CROSS BACKWARD_CROSS MARKERLESS_SOLID METADATA_START LBRACE RBRACE LBRACKET RBRACKET LPAREN RPAREN`.split(` `),A=1,j=2,M=new Uint8Array(128);for(let e=48;e<=57;e++)M[e]=A;for(let e=65;e<=90;e++)M[e]=M[e+32]=A;M[95]=A;for(let e of`!#$&*+/=?^|~`)M[e.charCodeAt(0)]=j;var ne=[0,12,5,14,3,9,2,2,2,2,2,4,3,4,8,5,5,7,6,4,5];function N(e){return e<128&&(M[e]&A)!==0}function P(e,t,n){for(let r=0;r<n.length;r++)if((e.charCodeAt(t+r)|32)!==n.charCodeAt(r))return!1;return!0}function re(e,t,n){switch(n){case 97:return e.startsWith(`actor`,t)?2:0;case 115:return e.startsWith(`systemBoundary`,t)?3:e.startsWith(`style`,t)?16:0;case 101:return e.startsWith(`end`,t)?4:P(e,t,`extend`)?18:0;case 69:return P(e,t,`extend`)?18:0;case 100:return e.startsWith(`direction`,t)?5:0;case 84:return e.startsWith(`TD`,t)?6:e.startsWith(`TB`,t)?7:0;case 66:return e.startsWith(`BT`,t)?8:0;case 76:return e.startsWith(`LR`,t)?9:0;case 82:return e.startsWith(`RL`,t)?10:0;case 110:return e.startsWith(`note`,t)?11:0;case 102:return e.startsWith(`for`,t)?12:e.startsWith(`false`,t)?20:0;case 106:return e.startsWith(`json`,t)?13:0;case 99:return e.startsWith(`classDef`,t)?14:e.startsWith(`class`,t)?15:0;case 105:case 73:return P(e,t,`include`)?17:0;case 116:return e.startsWith(`true`,t)?19:0;case 117:return+!!e.startsWith(`usecase-beta`,t);default:return 0}}function F(e,t){[e,t]=C(e,t);let n=1,r=0;for(let i=0;i<t;i++){let a=e.charCodeAt(i);a!==10&&a!==13||(a===13&&i+1<t&&e.charCodeAt(i+1)===10&&i++,n++,r=i+1)}return[n,t-r+1]}function ie(e,t,n){let[r,i]=F(e,t);return`line ${r}, column ${i} [${C(e,t)[1]},${C(e,n)[1]})`}function ae(e,t,n){for(let r=t+1;r<e.length;r++){let t=e.charCodeAt(r);if(t===n)return r+1;if(t===10||t===13)return-1}return-1}function oe(e,t){let n=e.charCodeAt(t);return n!==34&&n!==39||n===34&&e.charCodeAt(t+1)===96||ae(e,t,n)!==-1}function se(e,t,n){let[r,i]=F(e,t),[a,o]=[C(e,t)[1],C(e,t+n)[1]];return new S(`Error lexing usecase diagram: unexpected character: ->${e.charAt(t)}<- at offset: ${a}, skipped ${o-a} characters. at line ${r}, column ${i} [${a},${o})`,`syntax`,{type:`usecase`,line:r,column:i})}function ce(e){let t=[],n=[],r=[],i=e.length,a=0,o=!0,s=!1;for(;a<i;){let c=e.charCodeAt(a);if(c===32||c===9){a++;continue}let l,u=a+1,d=!1;if(c<128&&(M[c]&A)!==0){if(l=0,c===97&&o&&e.startsWith(`acc`,a)){let t=e.startsWith(`Descr`,a+3);if(t||e.startsWith(`Title`,a+3)){let n=a+8;for(;E(e.charCodeAt(n));)n++;let r=e.charCodeAt(n);if(r===58)for(l=t?42:41,u=n+1;u<i&&e.charCodeAt(u)!==10&&e.charCodeAt(u)!==13;)u++;else if(r===123&&t&&!s){let t=e.indexOf(`}`,n+1);t===-1?s=!0:(l=40,u=t+1)}}}else if(c===106&&e.startsWith(`json`,a)&&E(e.charCodeAt(a+4))){let s=a+5;for(;E(e.charCodeAt(s));)s++;let c=s;for(;N(e.charCodeAt(s));)s++;if(s>c){for(;E(e.charCodeAt(s));)s++;if(e.charCodeAt(s)===64){for(s++;E(e.charCodeAt(s));)s++;if(e.charCodeAt(s)===123){t.push(43),n.push(a),r.push(s),a=s;let c=0,l=!1,u=!1,d=s;for(;d<i;d++){let t=e.charCodeAt(d);if(l)u?u=!1:t===92?u=!0:t===34&&(l=!1);else if(t===34)l=!0;else if(t===123)c++;else if(t===125&&--c===0)break}t.push(d<i?44:45),n.push(s),a=d<i?d+1:i,r.push(a),o=!1;continue}}}}if(l===0){for(;u<i&&N(e.charCodeAt(u));)u++;let t=re(e,a,c);if(t!==0)t===1||u-a===ne[t]?(l=t,u=a+ne[t]):l=21;else if((c===111||c===120)&&e.charCodeAt(a+1)===45&&e.charCodeAt(a+2)===45)l=c===111?56:58,u=a+3;else if(O(c)){let t=a+1;for(;O(e.charCodeAt(t));)t++;if(e.charCodeAt(t)===46&&O(e.charCodeAt(t+1))){for(l=22,u=t+2;O(e.charCodeAt(u));)u++;for(;w(e.charCodeAt(u));)u++}else l=21}else for(l=21;e.charCodeAt(u)===45&&N(e.charCodeAt(u+1));)for(l=27,u+=2;N(e.charCodeAt(u));)u++}}else if(c===10)l=39,d=!0;else if(c===13)l=39,d=!0,e.charCodeAt(u)===10&&u++;else if(c===34||c===39){if(c===34&&e.charCodeAt(a+1)===96){let t=e.indexOf('`"',a+2);l=t===-1?37:36,u=t===-1?i:t+2}else if(l=35,u=ae(e,a,c),u===-1){let t=a+1;for(;t<i&&!oe(e,t);)t++;throw se(e,a,t-a)}}else if(c===37){if(o&&e.charCodeAt(u)===37)for(l=38;u<i&&e.charCodeAt(u)!==10&&e.charCodeAt(u)!==13;)u++;else l=31}else if(c===45){if(e.charCodeAt(u)!==45)l=29;else{for(;e.charCodeAt(u)===45;)u++;let t=e.charCodeAt(u),n=u-a===2;n&&t===124&&e.charCodeAt(u+1)===62?(l=46,u+=2):t===62?(l=53,u++):n&&(t===111||t===120)?(l=t===111?55:57,u++):l=59}}else if(c===46){let t=e.charCodeAt(u);if(t===46&&e.charCodeAt(u+1)===62)l=47,u+=2;else if(O(t)){for(l=22;O(e.charCodeAt(u));)u++;for(;w(e.charCodeAt(u));)u++}else l=30}else if(c===60){if(e.charCodeAt(u)===60){if(t.push(48),n.push(a),r.push(a+2),o=!1,a+=2,a>=i)break;if(e.charCodeAt(a)===62&&e.charCodeAt(a+1)===62)l=49,u=a+2;else{let o=a,s=!1;for(;o<i;o++){let t=e.charCodeAt(o);if(t===10||t===13)break;if(t===62&&e.charCodeAt(o+1)===62){s=!0;break}}if(s&&e.slice(a,o).trim()!==``)t.push(50),n.push(a),r.push(o),l=49,a=o,u=o+2;else{for(;o<i&&e.charCodeAt(o)!==10&&e.charCodeAt(o)!==13;)o++;if(o===a){for(;o<i&&(e.charCodeAt(o)===10||e.charCodeAt(o)===13);)o++;throw se(e,a,o-a)}l=51,u=o}}}else if(e.charCodeAt(u)===45&&e.charCodeAt(u+1)===45)for(l=54,u+=2;e.charCodeAt(u)===45;)u++;else l=33}else if(c===58)e.charCodeAt(u)===58&&e.charCodeAt(u+1)===58?(l=52,u+=2):l=25;else if(c===64)e.charCodeAt(u)===123?(l=60,u++):l=23;else if(c===123)l=61;else if(c===125)l=62;else if(c===91)l=63;else if(c===93)l=64;else if(c===40)l=65;else if(c===41)l=66;else if(c===44)l=24;else if(c===35){for(;D(e.charCodeAt(u));)u++;l=u>a+1?26:32}else if(c===92)e.charCodeAt(u)===44?(l=28,u++):l=33;else if(c<127&&c>32)l=(M[c]&j)===0?33:32;else for(l=34;u<i;){let t=e.charCodeAt(u);if(t>=32&&t<127||t===9||t===10||t===13)break;u++}t.push(l),n.push(a),r.push(u),a=u,o=d}for(let e=0;e<3;e++)t.push(0),n.push(i),r.push(i);return{types:t,starts:n,ends:r}}function le(){return{type:`usecase`,actors:new Map,useCases:new Map,systemBoundaries:new Map,relationships:[],notes:new Map,jsonNodes:new Map,classDefs:new Map,direction:`LR`,title:void 0,accTitle:``,accDescr:``,accDescription:``,source:``,headerSpan:[0,0],statements:[]}}function ue(){return{elements:[],boundaries:[],jsons:[],relationships:[],notes:[],metadata:[],classes:[],styles:[],classDefs:[],direction:void 0,accTitle:``,accDescription:``}}function I(e,t){if(t.length===0)return;let n=new Set(e);for(let r of t)n.has(r)||(n.add(r),e.push(r))}function de(e){let t=new Set([`actor`,`usecase`,`boundary`,`edge`]);for(let{key:n,value:r}of e)if(n===`icon`)t.clear(),t.add(`actor`);else if(n===`animate`||n===`animation`)t.clear(),t.add(`edge`);else if(n===`type`)t.clear(),r===`rect`||r===`package`?t.add(`boundary`):(r===`normal`||r===`hollow`||r===`awesome`)&&t.add(`actor`);else if(n===`business`)t.delete(`boundary`),t.delete(`edge`);else return;return t.size===1?[...t][0]:void 0}function fe(e,t,n,r,i){let a=le(),{actors:o,useCases:s,systemBoundaries:c}=a,l=new Map,u=new Map,d=new Map,f=new Map,p=new Map,m=t=>ie(e,t[0],t[1]),h=(t,n)=>{let[r,i]=F(e,n[0]);return new S(t,`semantic`,{type:`usecase`,line:r,column:i})},g=(e,t)=>{throw h(`${e} at ${m(t)}`,t)},_=(e,t,n,r,i)=>{let a=e=>e===void 0?``:` (label "${e}")`;throw h(`${e} at ${m(t)}${a(r)}; previous declaration at ${m(n)}${a(i)}`,t)},v=(e,t,n)=>g(`Metadata property '${n.key}' is invalid for ${t} '${e}'`,n.keySpan),y=(e,t)=>{let n=p.get(e);(n===void 0||t<n)&&p.set(e,t)},b=e=>[...e].sort((e,t)=>(p.get(e.id)??0)-(p.get(t.id)??0)),x=(e,t)=>{l.set(e.id,{kind:t,span:e.span,generated:e.generated,label:e.label.text})},ee=(e,t)=>{let n=l.get(e.id);if(!n)return;let r=e.generated?e.label.text:void 0,i=n.generated?n.label:void 0;n.kind!==t&&_(`ID '${e.id}' is declared as both ${n.kind} and ${t}`,e.span,n.span,r,i),(n.generated||e.generated)&&_(`Generated ID '${e.id}' collides with another declaration`,e.span,n.span,r,i)},C=(e,t,n)=>{let r=l.get(e);r&&_(`ID '${e}' is declared more than once (${r.kind} and ${t})`,n,r.span,void 0,r.generated?r.label:void 0),l.set(e,{kind:t,span:n,generated:!1})},w=(e,t,n)=>{let{key:r,value:i}=t,a=a=>{!n&&a!==void 0&&a!==i&&_(`Actor '${e.id}' has conflicting ${r} metadata`,t.keySpan,e.span)};r===`type`&&(i===`normal`||i===`hollow`||i===`awesome`)?(a(e.actorType),e.actorType=i):r===`icon`&&typeof i==`string`?(a(e.icon),e.icon=i):r===`business`&&typeof i==`boolean`?(a(e.business),e.business=i):v(e.id,`actor`,t)},T=(e,t,n)=>{for(let r of t??[])e.kind===`actor`?w(e,r,n):r.key===`business`&&typeof r.value==`boolean`?(!n&&e.business!==void 0&&e.business!==r.value&&_(`Use case '${e.id}' has conflicting business metadata`,r.keySpan,e.span),e.business=r.value):v(e.id,`usecase`,r)},te=e=>{let t;if(e.kind===`actor`){s.delete(e.id);let n={id:e.id,label:e.label.text,labelType:e.label.type,business:e.business??!1,classes:[...e.classes],type:e.icon?`icon`:e.actorType??`normal`,styles:o.get(e.id)?.styles??[]};e.icon&&(n.icon=e.icon),o.set(e.id,n),t=n}else o.delete(e.id),t={id:e.id,label:e.label.text,labelType:e.label.type,business:e.business??!1,classes:[...e.classes],shape:e.shape??`ellipse`,styles:s.get(e.id)?.styles??[]},s.set(e.id,t);e.stereotype&&(t.stereotype=e.stereotype),e.parent?.id&&(t.parentId=e.parent.id)},E=e=>{ee(e,e.kind);let t=e.parent?.id?e.parent:void 0,n=u.get(e.id);if(n)(n.label.text!==e.label.text||n.label.type!==e.label.type)&&_(`ID '${e.id}' has conflicting labels`,e.span,n.span),e.shape&&n.shape&&e.shape!==n.shape&&_(`Use case '${e.id}' has conflicting shapes`,e.span,n.span),t&&n.parent?.id&&t.id!==n.parent.id&&_(`Element '${e.id}' belongs to more than one system boundary`,t.span,n.parent.span),e.stereotype&&n.stereotype&&e.stereotype!==n.stereotype&&_(`Element '${e.id}' has conflicting stereotypes`,e.span,n.stereotypeSpan??n.span),n.shape??=e.shape,n.parent??=e.parent,n.stereotype??=e.stereotype,n.stereotypeSpan??=e.stereotype?e.span:void 0,I(n.classes,e.classes),T(n,e.metadata,!1);else{let n={kind:e.kind,id:e.id,label:e.label,span:e.span,generated:e.generated,classes:[...e.classes],parent:t,shape:e.shape,stereotype:e.stereotype,stereotypeSpan:e.stereotype?e.span:void 0};T(n,e.metadata,!1),u.set(e.id,n),x(e,e.kind)}},D=e=>{ee(e,`boundary`);let t=d.get(e.id);t?((t.label.text!==e.label.text||t.label.type!==e.label.type)&&_(`Boundary '${e.id}' has conflicting titles`,e.span,t.span),I(t.classes,e.classes)):(d.set(e.id,{...e,classes:[...e.classes],members:[]}),x(e,`boundary`))},O=e=>{e.classed&&!e.declares&&g(`Relationship endpoint '${e.id}' uses ::: without declaring the node`,e.span);let t=l.get(e.id);return t?t.kind:(u.set(e.id,{...e,kind:`usecase`,shape:`ellipse`,classes:[]}),x(e,`usecase`),y(e.id,e.span[0]),`usecase`)},k=(e,t)=>{let n=l.get(e)?.kind;return(n===`actor`?o.get(e):n===`usecase`?s.get(e):n===`boundary`?c.get(e):n===`json`?a.jsonNodes.get(e):f.get(e))??g(`Class/style target '${e}' is unresolved or anonymous`,t)},A=[];for(let{source:e,target:n}of t.relationships)y(e.id,e.span[0]),y(n.id,n.span[0]);for(let e of t.elements)y(e.id,e.span[0]),A.push({offset:e.span[0],run:()=>E(e)});for(let e of t.boundaries)y(e.id,e.span[0]),A.push({offset:e.span[0],run:()=>D(e)});for(let e of t.jsons)y(e.id,e.span[0]),A.push({offset:e.span[0],run:()=>C(e.id,`json`,e.span)});for(let{id:e,idSpan:n}of t.relationships)e&&n&&A.push({offset:n[0],run:()=>C(e,`edge`,n)});A.sort((e,t)=>e.offset-t.offset);for(let e of A)e.run();for(let e of b(u.values()))te(e);for(let e of b(d.values()))c.set(e.id,{id:e.id,label:e.label.text,labelType:e.label.type,type:`rect`,members:[],classes:[],styles:[]});for(let e of b(t.jsons))a.jsonNodes.set(e.id,{id:e.id,value:e.value,propertyOrder:e.propertyOrder,classes:[...e.classes],styles:[]});let j=0;for(let e of t.relationships){let{source:t,target:n,type:r}=e,i=O(t),o=O(n),s=e=>e===`actor`||e===`usecase`||e===`json`;s(i)||_(`Relationship source '${t.id}' cannot be ${i}`,t.span,l.get(t.id).span),s(o)||_(`Relationship target '${n.id}' cannot be ${o}`,n.span,l.get(n.id).span),(r===`include`||r===`extend`)&&(i!==`usecase`||o!==`usecase`)&&g(`${r} relationship requires use-case endpoints`,e.span),r===`generalization`&&(i===`json`||i!==o)&&g(`Generalization requires actor-to-actor or use-case-to-use-case endpoints`,e.span),r===`association`&&(i===`json`||o===`json`)&&e.arrowType>2&&g(`JSON relationship '${t.id}' to '${n.id}' permits only point, reversed-point, or markerless solid association`,e.span);let c=e.id??`edge-${j++}`,u={id:c,explicitId:!!e.id,source:t.id,target:n.id,type:r,arrowType:e.arrowType,minlen:e.minlen,classes:[],styles:[],animate:!1};e.label&&(u.label=e.label.text,u.labelType=e.label.type),a.relationships.push(u),f.set(c,u)}let M=new Map(o),ne=new Map(s);o.clear(),s.clear();for(let e of b(u.values())){let t=M.get(e.id),n=ne.get(e.id);t?o.set(e.id,t):n?s.set(e.id,n):te(e)}for(let{target:e,span:n,properties:r,statement:i}of t.metadata){let t=l.get(e);if(!t){let t=de(r);return g(`Metadata target '${e}' is unresolved${t?` (metadata implies ${t})`:``}`,n)}let a=t.kind;a===`actor`||a===`usecase`?T(u.get(e),r,!0):a===`edge`&&(i.kind=`edgeMetadata`,i.edges=[{id:e,span:i.span,idSpan:n,metadata:i.metadata}],delete i.nodes);let o=d.get(e),s=f.get(e);for(let t of a===`actor`||a===`usecase`?[]:r){let{key:n,value:r}=t;a===`boundary`&&o&&n===`type`&&(r===`rect`||r===`package`)?o.type=r:a===`edge`&&s&&n===`animate`&&typeof r==`boolean`?s.animate=r:a===`edge`&&s&&n===`animation`&&(r===`fast`||r===`slow`)?(s.animation=r,s.animate=!0):v(e,a,t)}}for(let e of a.relationships)e.animation&&(e.animate=!0);for(let e of u.values())e.kind===`actor`?(e.icon&&e.actorType&&e.actorType!==`normal`&&g(`Actor '${e.id}' cannot combine icon with type '${e.actorType}'`,e.span),e.business&&(e.icon||e.actorType===`awesome`)&&g(`Business actor '${e.id}' must use normal or hollow geometry`,e.span)):e.shape===`rect`&&e.business&&g(`Rectangular use case '${e.id}' cannot be a business use case`,e.span),te(e);for(let e of[...t.elements].sort((e,t)=>e.span[0]-t.span[0])){if(!e.parent?.id)continue;let t=d.get(e.parent.id).members;t.includes(e.id)||t.push(e.id)}for(let e of d.values()){let t=c.get(e.id);t.type=e.type??`rect`,t.members=e.members,t.classes=[...e.classes]}let N=0;for(let e of t.notes){let t=l.get(e.target);if(!t)return g(`Note target '${e.target}' is unresolved`,e.span);t.kind!==`actor`&&t.kind!==`usecase`&&_(`Note target '${e.target}' must be an actor or use case, not ${t.kind}`,e.span,t.span);let n=`note-${N++}`;a.notes.set(n,{id:n,target:e.target,label:e.label.text,labelType:e.label.type})}for(let e of t.classDefs)for(let t of e.ids)a.classDefs.set(t,{id:t,styles:[...e.styles]});for(let e of t.classes)for(let t of e.targets)I(k(t.id,t.span).classes,e.classes);for(let e of t.styles)k(e.target,e.span).styles.push(...e.styles);return a.direction=t.direction??a.direction,a.title=i,a.accTitle=t.accTitle,a.accDescription=t.accDescription,a.accDescr=t.accDescription.replace(/\n\s+/g,`
|
|
2
|
+
`),a.source=e,a.headerSpan=n,a.statements=r,a}var L=class extends Error{constructor(e){super(`Invalid JSON token`),this.offset=e}offset};function pe(e){let t=new Map,n=[],r=[],i=e.length,a=0,o=``,s=0,c=()=>{for(;a<i;){let t=e.charCodeAt(a);if(t!==32&&t!==9&&t!==10&&t!==13)return;a++}},l=t=>{a++;let n=``;for(;a<i;){let r=a,i=e[a++];if(i===`"`)return n;if(i.charCodeAt(0)<32)throw new L(r);if(i!==`\\`){t&&(n+=i);continue}let o=a,s=e[a++],c;if(s===`"`||s===`\\`||s===`/`)c=s;else if(s===`b`)c=`\b`;else if(s===`f`)c=`\f`;else if(s===`n`)c=`
|
|
3
|
+
`;else if(s===`r`)c=`\r`;else if(s===`t`)c=` `;else if(s===`u`){let t=e.slice(a,a+4);if(!/^[\dA-Fa-f]{4}$/.test(t))throw new L(a);c=String.fromCharCode(parseInt(t,16)),a+=4}else throw new L(o);t&&(n+=c)}throw new L(a)},u=t=>{for(let n=0;n<t.length;n++)if(e[a+n]!==t[n])throw new L(a+n);a+=t.length},d=()=>{if(e.charCodeAt(a)===45&&a++,e.charCodeAt(a)===48)a++;else if(O(e.charCodeAt(a)))for(;O(e.charCodeAt(a));)a++;else throw new L(a);if(e.charCodeAt(a)===46){if(a++,!O(e.charCodeAt(a)))throw new L(a);for(;O(e.charCodeAt(a));)a++}if((e.charCodeAt(a)|32)==101){if(a++,(e.charCodeAt(a)===43||e.charCodeAt(a)===45)&&a++,!O(e.charCodeAt(a)))throw new L(a);for(;O(e.charCodeAt(a));)a++}};for(c();;)if(s===0){c();let i=e.charCodeAt(a);if(s=2,i===123){a++;let i=[];t.set(o,i),n.push(o),c(),e.charCodeAt(a)===125?a++:(r.push({object:!0,pointer:o,keys:i,ranges:new Map,key:``,from:0,index:0}),s=1)}else if(i===91)a++,c(),e.charCodeAt(a)===93?a++:(r.push({object:!1,pointer:o,keys:[],ranges:new Map,key:``,from:0,index:0}),o+=`/0`,s=0);else if(i===34)l(!1);else if(i===116)u(`true`);else if(i===102)u(`false`);else if(i===110)u(`null`);else if(i===45||O(i))d();else throw new L(a)}else if(s===1){let i=r[r.length-1];if(e.charCodeAt(a)!==34)throw new L(a);let u=l(!0),d=i.ranges.get(u);if(d===void 0)i.keys.push(u);else for(let e=d[0];e<d[1];e++)t.delete(n[e]);if(i.key=u,i.from=n.length,c(),e.charCodeAt(a)!==58)throw new L(a);a++,o=`${i.pointer}/${u.replaceAll(`~`,`~0`).replaceAll(`/`,`~1`)}`,s=0}else{let t=r[r.length-1];if(t===void 0)break;t.object?t.ranges.set(t.key,[t.from,n.length]):t.index++,c();let i=e.charCodeAt(a);if(i===(t.object?125:93))a++,r.pop();else{if(i!==44)throw new L(a);a++,c(),o=`${t.pointer}/${t.index}`,s=+!!t.object}}if(c(),a!==i)throw new L(a);return t}function me(e,t,n,r){let i=Math.min(Math.max(t,0),e.length);for(let t=0;t<i;t++){let i=e.charCodeAt(t);i===13?(n++,r=1):i===10?(t===0||e.charCodeAt(t-1)!==13)&&(n++,r=1):r++}return[n,r]}function he(e,t,n,r){let i=/\bposition (\d+)\b/.exec(e);if(i)return me(t,parseInt(i[1],10),n,r);let a=/\bline (\d+) column (\d+)\b/.exec(e);if(a){let e=parseInt(a[1],10),t=parseInt(a[2],10);return[n+e-1,e===1?r+t-1:t]}if(/unexpected end|end of json input/i.test(e))return me(t,t.length,n,r)}function ge(e,t,n){return new S(`${e} (line ${t}, column ${n})`,`syntax`,{type:`usecase`,line:t,column:n})}function _e(e,t){let n;try{n=JSON.parse(e)}catch(n){let r=n instanceof Error?n.message:String(n),i=T(e);if(i!==e)try{JSON.parse(i)}catch(e){e instanceof Error&&(r=e.message)}let[a,o]=t(),s=he(r,i,a,o);if(!s){let e=0;try{pe(i)}catch(t){t instanceof L&&(e=t.offset)}s=me(i,e,a,o)}throw ge(`Invalid JSON: ${r}`,s[0],s[1])}if(typeof n!=`object`||!n||Array.isArray(n)){let[e,n]=t();throw ge(`JSON value must have an object root`,e,n)}return{value:n,propertyOrder:pe(e)}}var ve=1,ye=2,be=4,xe=8,Se=16,Ce=32,we=64,Te=`DEPENDENCY_ARROW|GENERALIZATION|FORWARD_SOLID|BACKWARD_SOLID|MARKERLESS_SOLID|FORWARD_CIRCLE|BACKWARD_CIRCLE|FORWARD_CROSS|BACKWARD_CROSS`,Ee=`IDENTIFIER|PLAIN_STRING|MARKDOWN_STRING`,De=`PLAIN_STRING|MARKDOWN_STRING|LABEL_TEXT`,Oe=`ACC_TITLE_LINE|ACC_DESCR_LINE|ACC_DESCR_BLOCK|DIRECTION|ACTOR|SYSTEM_BOUNDARY|NOTE|JSON_DECLARATION_START|CLASS_DEF|CLASS|STYLE`,ke=`WORD|PLAIN_STRING|NUMBER|HASH_COLOR|CSS_IDENTIFIER|CSS_ESCAPED_COMMA|DASH|DOT|PERCENT|CSS_PUNCTUATION|COLON|LPAREN|RPAREN|LBRACKET|RBRACKET|LBRACE|RBRACE|AT|MARKERLESS_SOLID`,R=new Uint8Array(67);function z(e,t){for(let n of e.split(`|`))if(n===`WORD`)for(let e=1;e<=21;e++)R[e]|=t;else R[k.indexOf(n)]|=t}z(`NEWLINE|COMMENT|${Oe}|${Ee}`,ve),z(`IDENTIFIER|${Te}`,ye),z(ke,be),z(`STEREOTYPE_START|CLASS_SEPARATOR|IDENTIFIER|${Te}|NEWLINE|EOF`,xe),z(`NEWLINE|COMMENT|ACTOR|${Ee}`,Se),z(`FORWARD_SOLID|MARKERLESS_SOLID|FORWARD_CIRCLE|FORWARD_CROSS`,Ce),z(`NEWLINE|IDENTIFIER|PLAIN_STRING|RBRACE`,we);var Ae=new Set([`allowmixing`,`newpage`,`package`,`rectangle`,`skinparam`]),B=``,V=[],H=[],U=[],W=0,je=0,G,Me,Ne=[],Pe=0,Fe=0;function K(e){return B.slice(H[e],U[e])}function q(e){return[H[e],U[e]]}function Ie(e){let[t,n]=F(B,H[W]);throw new S(`Error parsing usecase diagram: ${e} at ${ie(B,H[W],U[W])}`,`syntax`,{type:`usecase`,line:t,column:n})}function Le(e){Ie(`Expecting token of type --> ${e} <-- but found --> '${K(W)}' <--`)}function J(e){return V[W]!==e&&Le(k[e]),W++}function Y(e){Ie(`Expecting: one of these possible Token sequences:
|
|
4
|
+
${e.split(`|`).map((e,t)=>` ${t+1}. [${e}]`).join(`
|
|
5
|
+
`)}
|
|
6
|
+
but found: '${K(W)}'`)}function Re(){let e=Ee.split(`|`),t=e.flatMap(e=>[`NEWLINE`,`IDENTIFIER`,`PLAIN_STRING`,`RBRACE`].map(t=>`${e}, METADATA_START, ${t}`)),n=`STEREOTYPE_START|CLASS_SEPARATOR|IDENTIFIER|${Te}|NEWLINE|EOF`.split(`|`),r=e.flatMap((e,t)=>(t===0?[`LPAREN`,`LBRACKET`,...n]:n).map(t=>`${e}, ${t}`));return[Oe,...t,...r,...t].join(`|`)}function ze(e){return e>=1&&e<=21}function Be(e){return e>=1&&e<=34}function X(){je=U[W-1],V[W]===39?W++:V[W]!==0&&Y(`NEWLINE|EOF`)}function Ve(e){let t=V[e]===36?2:+(V[e]===35);return[H[e]+t,U[e]-t]}function He(e){let t=Ve(e);return{text:B.slice(t[0],t[1]),type:V[e]===36?`markdown`:`text`,span:t}}function Ue(e){return e.replace(/\W/g,`_`)}function We(){let e=V[W];if(e===35||e===36)return He(W++);Be(e)||Y(De);let t=W;for(;Be(V[W]);)W++;let n=[H[t],U[W-1]];return{text:B.slice(n[0],n[1]),type:`text`,span:n}}function Z(e){return e===21||e===35}function Ge(){let e=W;Z(V[W])||Y(`IDENTIFIER|PLAIN_STRING`),W++,J(25);let t=W,n=V[W];!Z(n)&&n!==19&&n!==20&&Y(`IDENTIFIER|PLAIN_STRING|TRUE|FALSE`),W++;let r=Ve(e),i=Ve(t);return{key:B.slice(r[0],r[1]),value:n===19||n!==20&&B.slice(i[0],i[1]),span:[H[e],U[t]],keySpan:r,valueSpan:i}}function Ke(){let e=V[W],t=V[W+1],n=V[W+2];return e===24?Z(t)||t===39&&(n===39||Z(n)):e===39?t===24||Z(t)||t===39&&(n===39||n===24||Z(n)):!1}function qe(){J(60);let e=[];for(;V[W]===39;)W++;if(Z(V[W])){for(e.push(Ge());Ke();){if(V[W]===24)W++;else{for(;V[W]===39;)W++;V[W]===24&&W++}for(;V[W]===39;)W++;e.push(Ge())}for(V[W]===24&&W++;V[W]===39;)W++}return J(62),e}function Je(e){return e.map(({key:e,span:t,keySpan:n,valueSpan:r})=>({key:e,span:t,keySpan:n,valueSpan:r}))}function Ye(e,t){do{W++;let n=J(21);e.push(K(n)),t.push(q(n))}while(V[W]===24)}function Xe(e){let t=W,n=V[W],r={id:``,label:void 0,span:Ve(t),generated:n!==21,classes:[],classSpans:[],explicit:!1,nodeSpan:[0,0]};if(n===21){W++,r.id=K(t);let n=V[W];n===65||e&&n===63?(W++,r.label=We(),J(n===65?66:64),r.shape=n===65?`ellipse`:`rect`):r.label=He(t)}else n===35||n===36?(W++,r.label=He(t),r.id=Ue(r.label.text)):Y(Ee);return r}function Ze(e){let t=W,n=Xe(!e);if(e&&(n.shape=void 0),V[W]===60&&(n.metadata=qe()),V[W]===48){W++;let e=J(50);J(49),n.stereotype=K(e).trim(),n.stereotypeSpan=q(e)}return V[W]===52&&Ye(n.classes,n.classSpans),n.explicit=!!(n.shape||n.metadata||n.stereotype),n.nodeSpan=[H[t],U[W-1]],n}function Qe(e,t){return{id:e.id,kind:t,label:e.label,span:e.span,generated:e.generated,parent:Me,shape:e.shape,metadata:e.metadata,stereotype:e.stereotype,classes:e.classes}}function $e(e,t){return{id:e.id,label:e.label,span:e.span,generated:e.generated,declares:t,classed:e.classes.length>0}}function et(e,t){let n={id:e.id,span:e.nodeSpan,idSpan:e.span,labelSpan:e.label.span};return t&&(n.defines=!0),e.stereotypeSpan&&(n.stereotypeSpan=e.stereotypeSpan),e.metadata&&(n.metadata=Je(e.metadata)),e.classSpans.length>0&&(n.classSpans=e.classSpans),n}function tt(e){if(V[W]<1||V[W]>36)return!1;for(let t=W+1;;t++){let n=V[t];if(n===59||(R[n]&e)!==0)return!0;if(n<1||n>36)return!1}}function nt(e){let t=U[e]-H[e]-(V[e]===59?0:1);return Math.max(1,t-1)}function rt(){let e=W,t={type:`association`,arrowType:0,minlen:1,target:void 0,span:[0,0]};V[W]===21&&V[W+1]===23&&(t.explicitId=K(W),t.explicitIdSpan=q(W),W+=2);let n=W,r=V[W++];if(r===47)J(25),V[W]!==17&&V[W]!==18&&Y(`INCLUDE|EXTEND`),t.type=V[W]===17?`include`:`extend`,t.label={text:t.type,type:`text`,span:q(W)},W++;else if(r===46)t.type=`generalization`;else if(r===53)t.minlen=nt(n);else if(r===54)t.arrowType=1,U[n]-H[n]===3&&tt(0)?(t.label=We(),t.minlen=nt(J(59))):t.minlen=nt(n);else if(r===59){if(t.arrowType=2,U[n]-H[n]===2&&tt(Ce)){t.label=We();let e=V[W];e===53?t.arrowType=0:e===55?t.arrowType=3:e===57?t.arrowType=4:e!==59&&Y(`FORWARD_SOLID|MARKERLESS_SOLID|FORWARD_CIRCLE|FORWARD_CROSS`),(t.arrowType===0||t.arrowType===2)&&(t.minlen=nt(W)),W++}else t.minlen=nt(n)}else r===55?t.arrowType=3:r===57?t.arrowType=4:r===56||r===58?(t.arrowType=r===56?5:6,tt(0)&&(t.label=We(),J(59))):(W--,Y(Te));return t.target=Ze(!1),t.span=[H[e],U[W-1]],t}function Q(e){return{kind:e,span:[0,0]}}function it(e,t,n,r){let i=n.target;i.explicit&&G.elements.push(Qe(i,`usecase`)),G.relationships.push({source:$e(e,t),target:$e(i,i.explicit),span:n.span,id:n.explicitId,idSpan:n.explicitIdSpan,type:n.type,arrowType:n.arrowType,label:n.label,minlen:n.minlen}),r.push(et(i,i.explicit));let a=Q(`edge`);return a.nodes=r,a.edges=[{id:n.explicitId??`edge-${Pe++}`,span:a.span}],n.explicitIdSpan&&(a.edges[0].idSpan=n.explicitIdSpan),n.label&&(a.edges[0].labelSpan=n.label.span),a}function at(e){let t=Q(`node`);return t.nodes=e,t}function ot(e){W++;let t=[Ze(!0)],n;if(V[W]===24)do W++,t.push(Ze(!0));while(V[W]===24);else e&&(R[V[W]]&ye)!==0&&(n=rt());X();for(let e of t)G.elements.push(Qe(e,`actor`));let r=t.map(e=>et(e,!0));return n?it(t[0],!0,n,r):at(r)}function st(e){let t=Ze(!1),n=e&&(R[V[W]]&ye)!==0?rt():void 0;X(),n||(t.explicit=!0,t.shape??=`ellipse`),t.explicit&&G.elements.push(Qe(t,`usecase`));let r=[et(t,t.explicit)];return n?it(t,t.explicit,n,r):at(r)}function ct(){W++;let e=Xe(!0),t={id:e.id,label:e.label,span:e.span,generated:e.generated,classes:e.classes},n=V[W]===60?qe():void 0;V[W]===52&&Ye(e.classes,e.classSpans),X(),G.boundaries.push(t),Me=t;let r=[];for(;(R[V[W]]&Se)!==0;)r.push(mt(!1));Me=void 0;let i=J(4);X();let a=Q(`group`);return a.group=t.id,a.idSpan=t.span,a.titleSpan=t.label.span,a.endSpan=q(i),a.classSpans=e.classSpans,r.length>0&&(a.children=r),n&&(a.metadata=Je(n),G.metadata.push({target:t.id,span:t.span,properties:n,statement:a})),a}function lt(){let e=W,t=V[W];for(ze(t)||t===27?W++:t===59?(W++,ze(V[W])||Le(`WORD`),W++):Y(`WORD|CSS_IDENTIFIER|MARKERLESS_SOLID`),J(25),(R[V[W]]&be)===0&&Ie(`Expecting: expecting at least one iteration which starts with one of these possible Token sequences::
|
|
7
|
+
<[${ke.replaceAll(`|`,`] ,[`)}]>
|
|
8
|
+
but found: '${K(W)}'`);(R[V[W]]&be)!==0;)W++;return B.slice(H[e],U[W-1]).replaceAll(`\\,`,`,`)}function ut(){let e=[lt()];for(;V[W]===24;)W++,e.push(lt());return e}function dt(){let e=[J(21)];for(;V[W]===24;)W++,e.push(J(21));return e}function ft(e){let t=Ve(e);return{id:K(e),span:t,idSpan:t}}function pt(){let e=W,t=V[W],n;if(t===41||t===42||t===40){W++;let r=K(e);t===40?G.accDescription=r.slice(r.indexOf(`{`)+1,r.lastIndexOf(`}`)).trim():t===42?G.accDescription=r.slice(r.indexOf(`:`)+1).trim():G.accTitle=r.slice(r.indexOf(`:`)+1).trim(),n=Q(t===41?`accTitle`:`accDescr`)}else if(t===5){W++;let e=V[W];(e<6||e>10)&&Y(`TD|TB|BT|LR|RL`),G.direction=e===6?`TB`:K(W),W++,n=Q(`direction`)}else{if(t===2)return ot(!0);if(t===3)return ct();if(t===11){W++,J(12);let e=J(21),t=We();G.notes.push({target:K(e),span:q(e),label:t}),n=Q(`note`),n.ref=`note-${Fe++}`,n.refSpan=t.span,n.nodes=[ft(e)]}else if(t===43){W++;let t=J(44),r=[],i=[];V[W]===52&&Ye(r,i);let a=H[e]+4;for(;B.charCodeAt(a)===32||B.charCodeAt(a)===9;)a++;let o=a;for(;/\w/.test(B.charAt(o));)o++;let s={id:B.slice(a,o),value:{},propertyOrder:new Map,span:[a,o],classes:r};G.jsons.push(s),Ne.push([s,t]),n=Q(`json`),n.nodes=[{id:s.id,span:s.span,idSpan:s.span,defines:!0,classSpans:i}],n.classSpans=i}else if(t===14){W++;let e=dt();G.classDefs.push({ids:e.map(K),styles:ut()}),n=Q(`classDef`),n.ref=K(e[0]),n.refSpan=q(e[0])}else if(t===15){W++;let e=dt(),t=dt();G.classes.push({targets:e.map(e=>({id:K(e),span:q(e)})),classes:t.map(K)}),n=Q(`classAssign`),n.ref=K(t[0]),n.refSpan=q(t[0]),n.nodes=e.map(ft)}else if(t===16){W++;let e=J(21);G.styles.push({target:K(e),span:q(e),styles:ut()}),n=Q(`style`),n.nodes=[ft(e)]}else{let r=V[W+1];if(r===60){(R[V[W+2]]&we)===0&&Y(Re()),W++;let r=ft(e);t!==21&&(r.id=Ue(B.slice(r.span[0],r.span[1])));let i=qe();n=Q(`metadata`),n.nodes=[r],n.metadata=Je(i),G.metadata.push({target:r.id,span:r.span,properties:i,statement:n})}else return((R[r]&xe)===0&&(t!==21||r!==65&&r!==63)||t===21&&Ae.has(K(e).toLowerCase()))&&Y(Re()),st(!0)}}return X(),n}function mt(e){let t=W,n=V[W];if(n===39)return W++,{kind:`blank`,span:q(t)};if(n===38)return W++,X(),{kind:`comment`,span:q(t)};let r=e?pt():n===2?ot(!1):st(!1);if(r.span=[H[t],je],r.edges)for(let e of r.edges)e.span=r.span;return r}function ht(e,t){B=e,{types:V,starts:H,ends:U}=ce(e),W=0,G=ue(),Me=void 0,Ne=[],Pe=0,Fe=0;try{let n=J(1);X();let r=[];for(;(R[V[W]]&ve)!==0;)r.push(mt(!0));V[W]!==0&&Ie(`Redundant input, expecting EOF but found: ${K(W)}`);for(let[t,n]of Ne){let r=_e(K(n),()=>F(e,H[n]));t.value=r.value,t.propertyOrder=r.propertyOrder}return fe(e,G,q(n),r,t)}finally{B=``,V=H=U=Ne=[]}}var gt={normal:`usecaseActor`,hollow:`usecaseActorHollow`,awesome:`usecaseActorAwesome`,icon:`usecaseActorIcon`},_t=[[`none`,`arrow_point`],[`arrow_point`,`none`],[`none`,`none`],[`none`,`arrow_circle`],[`none`,`arrow_cross`],[`arrow_circle`,`none`],[`arrow_cross`,`none`]];function vt(e){return typeof e==`string`?e:e===null?`null`:String(e)}function yt(e){let t=[],n=[[e.value,``,``]],r=[];for(;n.length>0;){let[i,a,o]=n.pop();if(r.length=0,Array.isArray(i))i.length===0?t.push({key:a,accessibleKey:a,value:`[]`}):i.every(e=>typeof e!=`object`||!e)?i.forEach((e,n)=>t.push({key:n===0?a:``,accessibleKey:a,value:vt(e)})):i.forEach((e,t)=>r.push([e,`${a}[${t}]`,`${o}/${t}`]));else if(typeof i==`object`&&i){let n=i,s=e.propertyOrder.get(o)??Object.keys(n);s.length===0&&t.push({key:a,accessibleKey:a,value:`{}`});for(let e of s)r.push([Object.prototype.hasOwnProperty.call(n,e)?n[e]:void 0,a?`${a}.${e}`:e,`${o}/${e.replaceAll(`~`,`~0`).replaceAll(`/`,`~1`)}`])}else t.push({key:a,accessibleKey:a,value:vt(i)});for(let e=r.length-1;e>=0;e--)n.push(r[e])}return t}function bt(...e){return e.filter(Boolean).join(` `)}function xt(e){return e.type===`generalization`?[`none`,`extension`]:e.type===`association`?_t[e.arrowType]??_t[2]:_t[0]}function St(e){let t=[],n=[],r=t=>{let n=new Map;for(let r of[`default`,...t]){let t=e.classDefs.get(r);if(t)for(let e of t.styles){let t=e.trim(),r=t.indexOf(`:`),i=(r===-1?t:t.slice(0,r)).trim();i&&n.set(i,t)}}return[...n.values()]};for(let n of e.actors.values())t.push({id:n.id,label:n.label,labelType:n.labelType,shape:gt[n.type],isGroup:!1,padding:10,cssClasses:bt(`default`,`usecase-actor`,`usecase-actor-${n.type}`,n.business&&`usecase-business`,...n.classes),cssStyles:[...n.styles],cssCompiledStyles:r(n.classes),actorType:n.type,business:n.business,icon:n.icon||void 0,stereotype:n.stereotype||void 0,parentId:n.parentId||void 0});for(let n of e.useCases.values()){let e=n.shape===`ellipse`;t.push({id:n.id,label:n.label,labelType:n.labelType,shape:e?n.business?`usecaseBusiness`:`usecaseEllipse`:`rect`,isGroup:!1,padding:e?20:10,cssClasses:bt(`default`,`usecase-element`,`usecase-${n.shape}`,n.business&&`usecase-business`,...n.classes),cssStyles:[...n.styles],cssCompiledStyles:r(n.classes),business:n.business,stereotype:n.stereotype||void 0,parentId:n.parentId||void 0})}for(let n of e.notes.values())t.push({id:n.id,label:n.label,labelType:n.labelType,shape:`note`,isGroup:!1,padding:10,cssClasses:`default usecase-note`,cssStyles:[],cssCompiledStyles:r([]),noteTarget:n.target});for(let n of e.jsonNodes.values())t.push({id:n.id,label:n.id,labelType:`text`,shape:`usecaseJsonTable`,isGroup:!1,padding:10,cssClasses:bt(`default`,`usecase-json-table`,...n.classes),cssStyles:[...n.styles],cssCompiledStyles:r(n.classes),jsonRows:yt(n)});for(let n of e.systemBoundaries.values())t.push({id:n.id,label:n.label,labelType:n.labelType,shape:`usecaseSystemBoundary`,isGroup:!0,padding:20,cssClasses:bt(`default`,`system-boundary`,`system-boundary-${n.type}`,...n.classes),cssStyles:[...n.styles],cssCompiledStyles:r(n.classes),boundaryType:n.type});for(let t of e.relationships){let e=t.type===`include`||t.type===`extend`,[i,a]=xt(t),o=t.animate||t.animation!==void 0,s={id:t.id,start:t.source,end:t.target,relationshipType:t.type,pattern:e?`dotted`:`solid`,arrowTypeStart:i,arrowTypeEnd:a,classes:bt(`default`,`relationship`,`relationship-${t.type}`,...t.classes,o&&`edge-animation-${t.animation??`fast`}`),style:[...t.styles],cssCompiledStyles:r(t.classes),animate:t.animate,animation:t.animation,minlen:t.minlen,explicitId:t.explicitId,internal:!1};e?(s.label=t.type,s.labelType=`text`):t.type===`association`&&(t.label&&(s.label=t.label),t.labelType&&(s.labelType=t.labelType)),n.push(s)}for(let t of e.notes.values())n.push({id:`${t.id}-edge`,start:t.id,end:t.target,relationshipType:`note`,pattern:`dotted`,arrowTypeStart:`none`,arrowTypeEnd:`none`,classes:`default relationship relationship-note`,style:[],cssCompiledStyles:r([]),animate:!1,minlen:1,explicitId:!1,internal:!0});return{nodes:t,edges:n}}var Ct=32,wt=16,Tt=72,Et=20,Dt=26,Ot=40,kt=60,At=6,jt=6,Mt=10,Nt=8,Pt=9,Ft=12,It=14,Lt=` fill="var(--_s)" stroke="var(--_b)"`;function Rt(e,t,n){let r=e.usecase?.[t];return typeof r==`number`&&r>0?Math.min(r,2e3):n}function zt(e){return e.replace(/[&<>\\]/g,e=>`&#${e.charCodeAt(0)};`)}function $(e,t,n,r,i,a=0){return c(e&&!t?zt(e):e,t,n,r,i,a)}function Bt(e,t,n,r){let i=n===1||n===2?1:-1,a=n===1||n===3,o=(a?e.w:e.h)/2,s=0;if(e.kind===0)a?(o=Ot/2+3,s=(kt-e.h)/2):o+=2;else if(e.kind===1){let t=(a?e.h:e.w)/2;o*=Math.sqrt(Math.max(1-(r/t)**2,0))}return a?[t.x+i*o,t.y+s+r]:[t.x+r,t.y+i*o]}function Vt(e,t){let n=t===1||t===3;if(e.kind===0)return n?kt*.5:Ot*.6;let r=n?e.h:e.w;return e.kind===1?r*.6:r-16}function Ht(e,t,n){let r=new Map,i=(e,n,i,a)=>{let o=t[e];if(o.isGroup)return;let s=n[i]-o.x,c=n[i+1]-o.y,l;if(Math.abs(Math.abs(c)-o.h/2)<.5)l=c<0?0:2;else if(Math.abs(Math.abs(s)-o.w/2)<.5)l=s<0?3:1;else return;let u=e*4+l,d={route:n,at:i,toward:n[a+(l&1?1:0)]},f=r.get(u);f?f.push(d):r.set(u,[d])};for(let t of e){let e=t.route.length-3;t.src===t.dst||e<3||(i(t.src,t.route,0,3),i(t.dst,t.route,e,e-3))}for(let[e,i]of r){let r=e>>2,a=e&3,o=n[r],s=i.length>1?Math.min(It,Vt(o,a)/(i.length-1)):0;i.sort((e,t)=>e.toward-t.toward);for(let e=0;e<i.length;e++){let[n,c]=Bt(o,t[r],a,(e-(i.length-1)/2)*s);i[e].route[i[e].at]=n,i[e].route[i[e].at+1]=c}}}function Ut(e,t,n,r,i){let a=e-n*Ft,o=t-r*Ft,s=Ft*.5;return`<path class="pele-marker" d="M${l(e)},${l(t)}L${l(a-r*s)},${l(o+n*s)}L${l(a+r*s)},${l(o-n*s)}Z" fill="var(--_bg)" stroke="${i}" stroke-linejoin="round"/>`}function Wt(e){return e===`extension`?Ft:p(e)}function Gt(e,t,n,r,i,a){return e===`extension`?Ut(t,n,r,i,a):g(e,t,n,r,i,a)}function Kt(e,t){let n=e.node,a=e.style.shape,o=` fill="none" stroke="var(--_b)"${e.style.line}`,s=-21,c=9,u;return n.actorType===`hollow`?(c=8,u=`<circle cy="-21" r="8" fill="var(--_bg)" stroke="var(--_b)"${a}/><path d="M-20,-9H20V0H5.5L20,15.5L12,25.5L0,12L-12,25.5L-20,15.5L-5.5,0H-20Z" fill="var(--_bg)" stroke="var(--_b)" stroke-linejoin="round"${a}/>`):n.actorType===`awesome`?u=`<path d="M0,-30A11,11 0 1 1 0,-8A11,11 0 1 1 0,-30ZM-20,25C-20,9 -12,-3 0,-3C12,-3 20,9 20,25C20,28 18,30 15,30H-15C-18,30 -20,28 -20,25Z" fill="var(--_b)"${a}/>`:n.actorType===`icon`?(s=-14,c=12,u=`<rect x="-22" y="-26" width="44" height="44"${r(Lt+a)}/><svg class="pele-icon" data-icon="${i(n.icon??``)}" x="-14" y="-18" width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${t?.(n.icon??``)??``}</svg>`):u=`<circle cy="-21" r="9"${Lt}${a}/><path d="M0,-12V10M-14,-3H14M0,10L-12,30M0,10L12,30"${o}/>`,n.business&&(u+=`<path class="pele-business" d="M${l(.12*c)},${l(s+.99*c)}L${l(.92*c)},${l(s-.39*c)}"${o}/>`),u}function qt(e,t,n){return d(e.direction)?f(n,r=>Jt(e,t,n,r)):Jt(e,t,n,!1)}function Jt(o,c,u,d){let f=St(o),p=u.fontSize??16,g=Math.round(p*.875),S=Math.round(p*.8125),C=u.measurer??te(u.fontFamily,u.fontFamilyMono),w=u.padding??8,T=u.icons,E=d?`TB`:x(o.direction),D=E===`LR`||E===`RL`,O=new Map,k=[],A=[];f.nodes.forEach((e,t)=>O.set(e.id,t));for(let e of f.nodes){let t=s(e.cssStyles.length>0?e.cssCompiledStyles.concat(e.cssStyles):e.cssCompiledStyles),n=+!!t.bold|(t.italic?2:0),r=t.fontSize??p,i=e.labelType===`markdown`,a=$(e.stereotype&&`«${e.stereotype}»`,!1,C,S,200,n),o={node:e,kind:2,style:t,label:a,stereotype:a,w:0,h:0,rows:[],keyW:0,headH:0,loops:0},c;if(e.isGroup){o.kind=4,o.label=$(e.label,i,C,r,4e3,n);let t=o.label.height;c=ee(0,0),c.isGroup=!0,c.padX=Et,c.padBottom=Et,c.padTop=e.boundaryType===`package`?t+2*jt+16:t>0?t+16:Et,c.minW=o.label.width+2*Et}else{if(e.jsonRows){o.kind=3,o.label=$(e.label,!1,C,r,4e3,n|1);let t=0;for(let r of e.jsonRows){let e=$(r.key,!1,C,g,4e3,n),i=$(r.value,!1,C,g,260,n);o.rows.push([e,i]),o.keyW=Math.max(o.keyW,e.width),t=Math.max(t,i.width),o.h+=Math.max(e.height,i.height,Math.round(g*1.5))+Nt}o.keyW>0&&(o.keyW+=2*Mt),o.headH=Math.max(o.label.height,Math.round(r*1.5))+Nt,o.w=Math.max(o.label.width+2*Mt,o.rows.length>0?o.keyW+t+2*Mt:0,72),o.h+=o.headH}else if(e.actorType)o.kind=0,o.label=$(e.label,i,C,r,140,n),o.w=Math.max(Ot,o.label.width,a.width),o.h=kt+At+a.height+o.label.height;else{o.label=$(e.label,i,C,e.shape===`note`?g:r,180,n);let t=Math.max(o.label.width,a.width),s=o.label.height+a.height;e.shape===`usecaseEllipse`||e.shape===`usecaseBusiness`?(o.kind=1,o.w=Math.max(t+2*e.padding+(e.business?16:4),88),o.h=Math.max(s+28,48)):e.shape===`note`?(o.w=t+2*e.padding+6,o.h=s+18):(o.w=Math.max(t+2*e.padding+12,80),o.h=Math.max(s+24,44))}c=ee(o.w,o.h)}c.seq=k.length,k.push(o),A.push(c)}f.nodes.forEach((e,t)=>{A[t].parent=e.parentId===void 0?-1:O.get(e.parentId)??-1});let j=[],M=[],ne=[];for(let e of f.edges){let t=O.get(e.start),n=O.get(e.end);if(t===void 0||n===void 0)continue;let r=$(e.relationshipType===`include`||e.relationshipType===`extend`?`«${e.label}»`:e.label,e.labelType===`markdown`,C,g,200);t===n&&(k[t].loops++,D?A[t].h+=2*(Dt+(r.height>0?r.height+8:0)):A[t].w+=2*(Dt+(r.width>0?r.width+12:0))),ne.push(e),M.push(r),j.push({src:t,dst:n,minlen:e.minlen,labelW:r.width>0?r.width+12:0,labelH:r.height>0?r.height+4:0,route:[],labelX:0,labelY:0})}let N=y(A,j,E,{nodeSep:Rt(c,`nodeSpacing`,Ct),edgeSep:wt,rankSep:Rt(c,`rankSpacing`,Tt),portSep:20}),P=_(o.title,C,p,4e3),re=P.height>0?P.height+12:0,F=Math.max(N.width,P.width),ie=w+(F-N.width)/2,ae=w+re;b(A,j,ie,ae);let oe=Math.ceil(F+2*w),se=Math.ceil(N.height+re+2*w),ce=new Map;for(let e of j)v(ce,e.route);Ht(j,A,k);let le=``,ue=``;for(let e=0;e<k.length;e++){let t=k[e],o=A[e],s=t.node,c=n(s.cssClasses.replace(/^default\s?/,``)),u=i(s.id),d=t.style.text,f=t.style.shape,p=t.w,m=t.h;if(t.kind===4){let e=o.x-o.w/2,n=o.y-o.h/2,i=` fill="var(--_a)" fill-opacity="0.5" stroke="var(--_b)"${f}`,p=` class="pele-cluster-label" fill="var(--_m)"${d}`,m;if(s.boundaryType===`package`){let r=Math.min(t.label.width+2*jt+8,o.w),s=t.label.height+2*jt;m=`<rect class="pele-boundary-tab" x="${l(e)}" y="${l(n)}" width="${l(r)}" height="${l(s)}"${i}/><rect x="${l(e)}" y="${l(n+s)}" width="${l(o.w)}" height="${l(o.h-s)}"${i}/>`+a(t.label,e+r/2,n+s/2,p,T)}else m=`<rect x="${l(e)}" y="${l(n)}" width="${l(o.w)}" height="${l(o.h)}"${r(i)}/>`+a(t.label,Yt(o,t.label.width,ce),n+8+t.label.height/2,p,T);le+=`<g class="pele-cluster pele-boundary${c}" data-id="${u}">${m}</g>`;continue}let h,_;if(t.kind===0){_=`pele-actor`;let e=-m/2,n=e+kt+At+t.stereotype.height/2;h=`<g class="pele-actor-figure" transform="translate(0,${l(e+kt/2)})">${Kt(t,T)}</g>`+a(t.stereotype,0,n,` class="pele-stereotype" font-size="${S}" fill="var(--_m)"`,T)+a(t.label,0,m/2-t.label.height/2,` class="pele-label"${d}`,T)}else if(t.kind===3){_=`pele-json`;let e=-p/2,n=-m/2+t.headH,i=``,o=`M${l(e)},${l(n)}H${l(e+p)}`;t.keyW>0&&(o+=`M${l(e+t.keyW)},${l(n)}V${l(m/2)}`);for(let[r,o]of t.rows){let s=Math.max(r.height,o.height,Math.round(g*1.5))+Nt;i+=a(r,e+Mt+r.width/2,n+s/2,` class="pele-json-key" fill="var(--_m)"`,T)+Xt(o,e+t.keyW+Mt,n+s/2,` class="pele-json-value"${d}`,T),n+=s}h=`<rect x="${l(e)}" y="${l(-m/2)}" width="${l(p)}" height="${l(m)}"${r(Lt+f)}/><path class="pele-json-lines" d="${o}" fill="none" stroke="var(--_b)"${t.style.line}/>`+a(t.label,0,-m/2+t.headH/2,` class="pele-label" font-weight="var(--_hw)"${d}`,T)+`<g font-size="${g}">${i}</g>`}else{let e=t.stereotype.height/2,n;if(t.kind===1){if(_=`pele-usecase`,n=`<ellipse rx="${l(p/2)}" ry="${l(m/2)}"${Lt}${f}/>`,s.business){let e=p/2-15,r=p/2-5,i=e=>m/2*Math.sqrt(1-(e/(p/2))**2);n+=`<path class="pele-business" d="M${l(e)},${l(i(e))}L${l(r)},${l(-i(r))}" fill="none" stroke="var(--_b)"${t.style.line}/>`}}else if(s.shape===`note`){_=`pele-note`;let e=p/2,r=m/2;n=`<path d="M${l(-e)},${l(-r)}H${l(e-Pt)}L${l(e)},${l(Pt-r)}V${l(r)}H${l(-e)}Z" fill="var(--_a)" stroke="var(--_b)" stroke-linejoin="round"${f}/><path d="M${l(e-Pt)},${l(-r)}V${l(Pt-r)}H${l(e)}" fill="none" stroke="var(--_b)" stroke-linejoin="round"${t.style.line}/>`}else _=`pele-usecase`,n=`<rect x="${l(-p/2)}" y="${l(-m/2)}" width="${l(p)}" height="${l(m)}"${r(Lt+f)}/>`;h=n+a(t.stereotype,0,-t.label.height/2,` class="pele-stereotype" font-size="${S}" fill="var(--_m)"`,T)+a(t.label,0,e,` class="pele-label"${s.shape===`note`?` font-size="${g}"`:``}${d}`,T)}ue+=`<g class="pele-node ${_}${c}" data-id="${u}" transform="translate(${l(o.x)},${l(o.y)})">${h}</g>`}let I=``,de=``,fe=new Map;for(let e=0;e<j.length;e++){let r=j[e],a=ne[e],o=M[e],c=a.style.length>0||a.cssCompiledStyles.length>0?s(a.cssCompiledStyles.concat(a.style)):void 0,u=a.arrowTypeStart,d=a.arrowTypeEnd,f;if(r.src===r.dst){let e=A[r.src],t=k[r.src],n=fe.get(r.src)??0;fe.set(r.src,n+1);let i=D?2:1,a=Math.min(Vt(t,i)/2,8+n*6),s=Dt+n*8,[c,p]=Bt(t,e,i,-a),[m,h]=Bt(t,e,i,a),g=Math.hypot(s,a)||1,_=D?a/g:s/g,v=D?s/g:a/g,y=Wt(u),b=Wt(d),x=(e,t,n,r)=>D?`${l(e+n*a*+!!r)},${l(t+r)}`:`${l(e+r)},${l(t+n*a*+!!r)}`,ee=D?c-_*y:c+_*y,S=D?p+v*y:p-v*y,C=m+_*b,w=h+v*b;f={d:`M${l(ee)},${l(S)}C${x(c,p,-1,s)} ${x(m,h,1,s)} ${l(C)},${l(w)}`,sx:c,sy:p,sdx:D?_:-_,sdy:D?-v:v,ex:m,ey:h,edx:-_,edy:-v},D?(r.labelX=e.x,r.labelY=Math.max(p,h)+s*.75+6+o.height/2):(r.labelX=Math.max(c,m)+s*.75+8+o.width/2,r.labelY=e.y)}else{if(r.route.length<6)continue;f=h(r.route,void 0,Wt(u),Wt(d))}let p=c?.stroke?t(c.stroke):`var(--_l)`,g=a.internal?`2 3`:a.pattern===`dotted`?`5 4`:a.animate?`9 5`:``;if(I+=`<g class="pele-edge pele-${a.relationshipType}${n(a.classes.replace(/^default relationship relationship-\S+\s?/,``))}" data-id="${i(a.id)}"${c?.line??``}><path d="${f.d}"${g?` stroke-dasharray="${g}"`:``}/>`+Gt(u,f.sx,f.sy,f.sdx,f.sdy,p)+Gt(d,f.ex,f.ey,f.edx,f.edy,p)+`</g>`,o.width>0){let e=r.labelX,t=r.labelY,n=a.relationshipType===`include`||a.relationshipType===`extend`;de+=m(a.id,o,e,t,(n?` fill="var(--_m)"`:``)+(c?.text??``),T)}}return{svg:e(`usecase`,oe,se,p,u,o,a(P,oe/2,w+P.height/2,` class="pele-title" font-weight="var(--_tw)"`)+(le?`<g class="pele-clusters">${le}</g>`:``)+(I?`<g class="pele-edges" fill="none" stroke="var(--_l)" stroke-linecap="round">${I}</g>`:``)+(de?`<g class="pele-edge-labels" font-size="${g}">${de}</g>`:``)+`<g class="pele-nodes">${ue}</g>`),width:oe,height:se,links:[]}}function Yt(e,t,n){let r=n.get(Math.round(e.y-e.h/2));if(t===0||r===void 0)return e.x;let i=e.x-e.w/2+6,a=e.x+e.w/2-6,o=r.filter(e=>e>i&&e<a).sort((e,t)=>e-t);o.push(a);let s=t/2+6,c=e.x,l=1/0,u=0,d=i;for(let t of o){if(t-d>=2*s){let n=Math.min(Math.max(e.x,d+s),t-s);Math.abs(n-e.x)<l&&(l=Math.abs(n-e.x),c=n)}else l===1/0&&t-d>u&&(u=t-d,c=(d+t)/2);d=t}return c}function Xt(e,t,n,r,i){if(e.lines.length<2)return a(e,t+e.width/2,n,r,i);let s=``;for(let c=0;c<e.lines.length;c++)s+=a(u(e,c),t+e.widths[c]/2,n-e.height/2+o(e,c),r,i);return s}var Zt={type:`usecase`,math:!0,parse:(e,t,n)=>ht(e,n),render:qt};export{Zt as usecase};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`><+-.,[]`.split(``),t={name:`brainfuck`,startState:function(){return{commentLine:!1,left:0,right:0,commentLoop:!1}},token:function(t,n){if(t.eatSpace())return null;t.sol()&&(n.commentLine=!1);var r=t.next().toString();if(e.indexOf(r)!==-1){if(n.commentLine===!0)return t.eol()&&(n.commentLine=!1),`comment`;if(r===`]`||r===`[`)return r===`[`?n.left++:n.right++,`bracket`;if(r===`+`||r===`-`)return`keyword`;if(r===`<`||r===`>`)return`atom`;if(r===`.`||r===`,`)return`def`}else return n.commentLine=!0,t.eol()&&(n.commentLine=!1),`comment`;t.eol()&&(n.commentLine=!1)}};export{t as brainfuck};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`)}var t=[`Clamp`,`Constructor`,`EnforceRange`,`Exposed`,`ImplicitThis`,`Global`,`PrimaryGlobal`,`LegacyArrayClass`,`LegacyUnenumerableNamedProperties`,`LenientThis`,`NamedConstructor`,`NewObject`,`NoInterfaceObject`,`OverrideBuiltins`,`PutForwards`,`Replaceable`,`SameObject`,`TreatNonObjectAsNull`,`TreatNullAs`,`EmptyString`,`Unforgeable`,`Unscopeable`],n=e(t),r=`unsigned.short.long.unrestricted.float.double.boolean.byte.octet.Promise.ArrayBuffer.DataView.Int8Array.Int16Array.Int32Array.Uint8Array.Uint16Array.Uint32Array.Uint8ClampedArray.Float32Array.Float64Array.ByteString.DOMString.USVString.sequence.object.RegExp.Error.DOMException.FrozenArray.any.void`.split(`.`),i=e(r),a=[`attribute`,`callback`,`const`,`deleter`,`dictionary`,`enum`,`getter`,`implements`,`inherit`,`interface`,`iterable`,`legacycaller`,`maplike`,`partial`,`required`,`serializer`,`setlike`,`setter`,`static`,`stringifier`,`typedef`,`optional`,`readonly`,`or`],o=e(a),s=[`true`,`false`,`Infinity`,`NaN`,`null`],c=e(s),l=e([`callback`,`dictionary`,`enum`,`interface`]),u=e([`typedef`]),d=/^[:<=>?]/,f=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,p=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,m=/^_?[A-Za-z][0-9A-Z_a-z-]*/,h=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,g=/^"[^"]*"/,_=/^\/\*.*?\*\//,v=/^\/\*.*/,y=/^.*?\*\//;function b(e,t){if(e.eatSpace())return null;if(t.inComment)return e.match(y)?(t.inComment=!1,`comment`):(e.skipToEnd(),`comment`);if(e.match(`//`))return e.skipToEnd(),`comment`;if(e.match(_))return`comment`;if(e.match(v))return t.inComment=!0,`comment`;if(e.match(/^-?[0-9\.]/,!1)&&(e.match(f)||e.match(p)))return`number`;if(e.match(g))return`string`;if(t.startDef&&e.match(m))return`def`;if(t.endDef&&e.match(h))return t.endDef=!1,`def`;if(e.match(o))return`keyword`;if(e.match(i)){var r=t.lastToken,a=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return r===`:`||r===`implements`||a===`implements`||a===`=`?`builtin`:`type`}return e.match(n)?`builtin`:e.match(c)?`atom`:e.match(m)?`variable`:e.match(d)?`operator`:(e.next(),null)}var x={name:`webidl`,startState:function(){return{inComment:!1,lastToken:``,startDef:!1,endDef:!1}},token:function(e,t){var n=b(e,t);if(n){var r=e.current();t.lastToken=r,n===`keyword`?(t.startDef=l.test(r),t.endDef=t.endDef||u.test(r)):t.startDef=!1}return n},languageData:{autocomplete:t.concat(r).concat(a).concat(s)}};export{x as webIDL};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e;function t(){let e=`4q 0 b 0 5 0 6 m 2 u 2 cp 5 b f 4 8 0 2 0 3m 4 2 1 3 3 9 0 2 2 2 0 2 j 2 2a 2 3u 9 4d a 11 3 0 8 12 21 q 6 2 1a 16 10 1 2 2q 2 0 g 1 8 1 b 2 3 0 h 0 2 t u 2g c 0 p w a 1 5 0 6 l 5 0 a 0 4 0 o o 20 0 2 a 2g 1h 4 0 j 0 8 9 g 6 2 6 6 7 3 1 3 l 2 6 2 0 4 3 4 0 h 0 e 1 2 2 f 1 k 5 5 1 3 l 2 6 2 1 2 1 2 1 w 3 2 0 k 2 h 8 2 2 2 l 2 6 2 1 2 4 4 0 j 0 g 1 10 7 3 1 3 l 2 6 2 1 2 4 4 0 v 1 2 2 g 0 i 0 2 5 4 2 2 3 4 1 2 0 2 1 4 1 4 2 4 b n 0 1h 7 2 2 2 m 2 9 2 4 4 0 r 1 7 1 10 7 2 2 2 m 2 9 2 4 4 0 x 0 2 1 g 1 j 7 2 2 2 14 3 0 h 0 i 1 p 5 6 h 4 n 2 8 2 0 3 6 1n 1b 2 1 d 6 1n 1 2 0 3 1 2 0 3 0 7 3 2 6 2 2 2 0 2 0 3 1 2 3 2 1 a 0 3 4 2 0 m 3 x 0 1s 7 2 z s 4 38 16 l 0 h 5 5 3 4 0 4 1 8 2 5 c d 0 i 11 2 0 6 0 3 16 2 98 2 3 3 6 2 0 2 3 3 14 2 3 3 w 2 3 3 6 2 0 2 3 3 e 2 1k 2 3 3 1u 12 f h 2c d h7 3 g 2 p 6 22 m c 2 3 f h f h f c 2 2 g 1f 10 0 5 0 1w 2f 9 14 2 0 6 1x b s 1g t 3 4 c 17 m 6 1l m a 1g 2b 0 2m 1a i 6 1k t e 1 b 17 r z 16 2 b z 30 3 2 3 4 1 a 5b 1t 7p 3 5 3 11 3 5 3 7 2 0 2 0 2 0 2 u 3 1g 2 6 2 0 4 2 2 6 4 3 3 5 5 c 6 2 2 6 39 0 e 0 h c 2u 0 5 0 3 9 2 0 4 4 7 0 2 0 2 0 2 3 2 a 3 3 6 4 5 0 1h 1 22k 1a 2 1a 2 3o 7 3 4 1 d 11 2 0 6 0 3 1j 8 0 h m a 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 29 0 d2 1 17 4 6 1 5 2d 7 2 2 2h 2 3 6 14 4 2l i q 1i f e9 52t 23 g5o 1g wc 1w 19 3 7g 4 f b 1 l 1a h o 9 1x 1e 8 3 2u 3 3 2 3 d a 26 9 2 2 2 3 2 m u 1f f 1d 1r 5 4 0 f r b m q s 8 1a t 0 1d 14 o 2 2 7 l m 4 0 6 1b 2 0 4 1 3 4 3 0 2 0 p 2 3 a 8 2 d 5 3 5 3 5 a 6 2 6 42 y u 8mb d m 5 1c 6it a5 3 2x 13 6 d 4 6 0 2 9 2 c 2 4 2 0 2 1 2 1 2 2z y a2 j 1r 3 1h 15 b 39 4 2 3q 11 p 7 p c 2g 4 5 3 5 3 5 3 2`.split(` `),t=new Uint16Array(e.length),n=0;for(let r=0;r<e.length;r+=2){let i=n+parseInt(e[r],36);n=i+parseInt(e[r+1],36),t[r]=i,t[r+1]=n}return t}function n(n){if(n<170||n>65500)return!1;let r=e??=t(),i=0,a=(r.length>>1)-1;for(;i<=a;){let e=i+a>>1;if(n<r[e*2])a=e-1;else if(n>r[e*2+1])i=e+1;else return!0}return!1}export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){var t=[];return e.split(` `).forEach(function(e){t.push({name:e})}),t}var t=e(`INVERT AND OR XOR 2* 2/ LSHIFT RSHIFT 0= = 0< < > U< MIN MAX 2DROP 2DUP 2OVER 2SWAP ?DUP DEPTH DROP DUP OVER ROT SWAP >R R> R@ + - 1+ 1- ABS NEGATE S>D * M* UM* FM/MOD SM/REM UM/MOD */ */MOD / /MOD MOD HERE , @ ! CELL+ CELLS C, C@ C! CHARS 2@ 2! ALIGN ALIGNED +! ALLOT CHAR [CHAR] [ ] BL FIND EXECUTE IMMEDIATE COUNT LITERAL STATE ; DOES> >BODY EVALUATE SOURCE >IN <# # #S #> HOLD SIGN BASE >NUMBER HEX DECIMAL FILL MOVE . CR EMIT SPACE SPACES TYPE U. .R U.R ACCEPT TRUE FALSE <> U> 0<> 0> NIP TUCK ROLL PICK 2>R 2R@ 2R> WITHIN UNUSED MARKER I J TO COMPILE, [COMPILE] SAVE-INPUT RESTORE-INPUT PAD ERASE 2LITERAL DNEGATE D- D+ D0< D0= D2* D2/ D< D= DMAX DMIN D>S DABS M+ M*/ D. D.R 2ROT DU< CATCH THROW FREE RESIZE ALLOCATE CS-PICK CS-ROLL GET-CURRENT SET-CURRENT FORTH-WORDLIST GET-ORDER SET-ORDER PREVIOUS SEARCH-WORDLIST WORDLIST FIND ALSO ONLY FORTH DEFINITIONS ORDER -TRAILING /STRING SEARCH COMPARE CMOVE CMOVE> BLANK SLITERAL`),n=e(`IF ELSE THEN BEGIN WHILE REPEAT UNTIL RECURSE [IF] [ELSE] [THEN] ?DO DO LOOP +LOOP UNLOOP LEAVE EXIT AGAIN CASE OF ENDOF ENDCASE`);function r(e,t){for(var n=e.length-1;n>=0;n--)if(e[n].name===t.toUpperCase())return e[n]}var i={name:`forth`,startState:function(){return{state:``,base:10,coreWordList:t,immediateWordList:n,wordList:[]}},token:function(e,t){var n;if(e.eatSpace())return null;if(t.state===``){if(e.match(/^(\]|:NONAME)(\s|$)/i))return t.state=` compilation`,`builtin`;if(n=e.match(/^(\:)\s+(\S+)(\s|$)+/),n)return t.wordList.push({name:n[2].toUpperCase()}),t.state=` compilation`,`def`;if(n=e.match(/^(VARIABLE|2VARIABLE|CONSTANT|2CONSTANT|CREATE|POSTPONE|VALUE|WORD)\s+(\S+)(\s|$)+/i),n)return t.wordList.push({name:n[2].toUpperCase()}),`def`;if(n=e.match(/^(\'|\[\'\])\s+(\S+)(\s|$)+/),n)return`builtin`}else{if(e.match(/^(\;|\[)(\s)/))return t.state=``,e.backUp(1),`builtin`;if(e.match(/^(\;|\[)($)/))return t.state=``,`builtin`;if(e.match(/^(POSTPONE)\s+\S+(\s|$)+/))return`builtin`}if(n=e.match(/^(\S+)(\s+|$)/),n)return r(t.wordList,n[1])===void 0?n[1]===`\\`?(e.skipToEnd(),`comment`):r(t.coreWordList,n[1])===void 0?r(t.immediateWordList,n[1])===void 0?n[1]===`(`?(e.eatWhile(function(e){return e!==`)`}),e.eat(`)`),`comment`):n[1]===`.(`?(e.eatWhile(function(e){return e!==`)`}),e.eat(`)`),`string`):n[1]===`S"`||n[1]===`."`||n[1]===`C"`?(e.eatWhile(function(e){return e!==`"`}),e.eat(`"`),`string`):n[1]-68719476735?`number`:`atom`:`keyword`:`builtin`:`variable`}};export{i as forth};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t){t||={};for(var n=t.prefix===void 0?`^`:t.prefix,r=t.suffix===void 0?`\\b`:t.suffix,i=0;i<e.length;i++)e[i]instanceof RegExp?e[i]=e[i].source:e[i]=e[i].replace(/[-\/\\^$*+?.()|[\]{}]/g,`\\$&`);return RegExp(n+`(`+e.join(`|`)+`)`+r,`i`)}var t=`(?=[^A-Za-z\\d\\-_]|$)`,n=/[\w\-:]/,r={keyword:e([/begin|break|catch|continue|data|default|do|dynamicparam/,/else|elseif|end|exit|filter|finally|for|foreach|from|function|if|in/,/param|process|return|switch|throw|trap|try|until|where|while/],{suffix:t}),number:/^((0x[\da-f]+)|((\d+\.\d+|\d\.|\.\d+|\d+)(e[\+\-]?\d+)?))[ld]?([kmgtp]b)?/i,operator:e([e([`f`,/b?not/,/[ic]?split/,`join`,/is(not)?/,`as`,/[ic]?(eq|ne|[gl][te])/,/[ic]?(not)?(like|match|contains)/,/[ic]?replace/,/b?(and|or|xor)/],{prefix:`-`}),/[+\-*\/%]=|\+\+|--|\.\.|[+\-*&^%:=!|\/]|<(?!#)|(?!#)>/],{suffix:``}),builtin:e([/[A-Z]:|%|\?/i,e([/Add-(Computer|Content|History|Member|PSSnapin|Type)/,/Checkpoint-Computer/,/Clear-(Content|EventLog|History|Host|Item(Property)?|Variable)/,/Compare-Object/,/Complete-Transaction/,/Connect-PSSession/,/ConvertFrom-(Csv|Json|SecureString|StringData)/,/Convert-Path/,/ConvertTo-(Csv|Html|Json|SecureString|Xml)/,/Copy-Item(Property)?/,/Debug-Process/,/Disable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/Disconnect-PSSession/,/Enable-(ComputerRestore|PSBreakpoint|PSRemoting|PSSessionConfiguration)/,/(Enter|Exit)-PSSession/,/Export-(Alias|Clixml|Console|Counter|Csv|FormatData|ModuleMember|PSSession)/,/ForEach-Object/,/Format-(Custom|List|Table|Wide)/,RegExp(`Get-(Acl|Alias|AuthenticodeSignature|ChildItem|Command|ComputerRestorePoint|Content|ControlPanelItem|Counter|Credential|Culture|Date|Event|EventLog|EventSubscriber|ExecutionPolicy|FormatData|Help|History|Host|HotFix|Item|ItemProperty|Job|Location|Member|Module|PfxCertificate|Process|PSBreakpoint|PSCallStack|PSDrive|PSProvider|PSSession|PSSessionConfiguration|PSSnapin|Random|Service|TraceSource|Transaction|TypeData|UICulture|Unique|Variable|Verb|WinEvent|WmiObject)`),/Group-Object/,/Import-(Alias|Clixml|Counter|Csv|LocalizedData|Module|PSSession)/,/ImportSystemModules/,/Invoke-(Command|Expression|History|Item|RestMethod|WebRequest|WmiMethod)/,/Join-Path/,/Limit-EventLog/,/Measure-(Command|Object)/,/Move-Item(Property)?/,RegExp(`New-(Alias|Event|EventLog|Item(Property)?|Module|ModuleManifest|Object|PSDrive|PSSession|PSSessionConfigurationFile|PSSessionOption|PSTransportOption|Service|TimeSpan|Variable|WebServiceProxy|WinEvent)`),/Out-(Default|File|GridView|Host|Null|Printer|String)/,/Pause/,/(Pop|Push)-Location/,/Read-Host/,/Receive-(Job|PSSession)/,/Register-(EngineEvent|ObjectEvent|PSSessionConfiguration|WmiEvent)/,/Remove-(Computer|Event|EventLog|Item(Property)?|Job|Module|PSBreakpoint|PSDrive|PSSession|PSSnapin|TypeData|Variable|WmiObject)/,/Rename-(Computer|Item(Property)?)/,/Reset-ComputerMachinePassword/,/Resolve-Path/,/Restart-(Computer|Service)/,/Restore-Computer/,/Resume-(Job|Service)/,/Save-Help/,/Select-(Object|String|Xml)/,/Send-MailMessage/,RegExp(`Set-(Acl|Alias|AuthenticodeSignature|Content|Date|ExecutionPolicy|Item(Property)?|Location|PSBreakpoint|PSDebug|PSSessionConfiguration|Service|StrictMode|TraceSource|Variable|WmiInstance)`),/Show-(Command|ControlPanelItem|EventLog)/,/Sort-Object/,/Split-Path/,/Start-(Job|Process|Service|Sleep|Transaction|Transcript)/,/Stop-(Computer|Job|Process|Service|Transcript)/,/Suspend-(Job|Service)/,/TabExpansion2/,/Tee-Object/,/Test-(ComputerSecureChannel|Connection|ModuleManifest|Path|PSSessionConfigurationFile)/,/Trace-Command/,/Unblock-File/,/Undo-Transaction/,/Unregister-(Event|PSSessionConfiguration)/,/Update-(FormatData|Help|List|TypeData)/,/Use-Transaction/,/Wait-(Event|Job|Process)/,/Where-Object/,/Write-(Debug|Error|EventLog|Host|Output|Progress|Verbose|Warning)/,/cd|help|mkdir|more|oss|prompt/,/ac|asnp|cat|cd|chdir|clc|clear|clhy|cli|clp|cls|clv|cnsn|compare|copy|cp|cpi|cpp|cvpa|dbp|del|diff|dir|dnsn|ebp/,/echo|epal|epcsv|epsn|erase|etsn|exsn|fc|fl|foreach|ft|fw|gal|gbp|gc|gci|gcm|gcs|gdr|ghy|gi|gjb|gl|gm|gmo|gp|gps/,/group|gsn|gsnp|gsv|gu|gv|gwmi|h|history|icm|iex|ihy|ii|ipal|ipcsv|ipmo|ipsn|irm|ise|iwmi|iwr|kill|lp|ls|man|md/,/measure|mi|mount|move|mp|mv|nal|ndr|ni|nmo|npssc|nsn|nv|ogv|oh|popd|ps|pushd|pwd|r|rbp|rcjb|rcsn|rd|rdr|ren|ri/,/rjb|rm|rmdir|rmo|rni|rnp|rp|rsn|rsnp|rujb|rv|rvpa|rwmi|sajb|sal|saps|sasv|sbp|sc|select|set|shcm|si|sl|sleep|sls/,/sort|sp|spjb|spps|spsv|start|sujb|sv|swmi|tee|trcm|type|where|wjb|write/],{prefix:``,suffix:``}),e([/[$?^_]|Args|ConfirmPreference|ConsoleFileName|DebugPreference|Error|ErrorActionPreference|ErrorView|ExecutionContext/,/FormatEnumerationLimit|Home|Host|Input|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount/,/MaximumHistoryCount|MaximumVariableCount|MyInvocation|NestedPromptLevel|OutputEncoding|Pid|Profile|ProgressPreference/,/PSBoundParameters|PSCommandPath|PSCulture|PSDefaultParameterValues|PSEmailServer|PSHome|PSScriptRoot|PSSessionApplicationName/,/PSSessionConfigurationName|PSSessionOption|PSUICulture|PSVersionTable|Pwd|ShellId|StackTrace|VerbosePreference/,/WarningPreference|WhatIfPreference/,/Event|EventArgs|EventSubscriber|Sender/,/Matches|Ofs|ForEach|LastExitCode|PSCmdlet|PSItem|PSSenderInfo|This/,/true|false|null/],{prefix:`\\$`,suffix:``})],{suffix:t}),punctuation:/[\[\]{},;`\\\.]|@[({]/,variable:/^[A-Za-z\_][A-Za-z\-\_\d]*\b/};function i(e,t){var i=t.returnStack[t.returnStack.length-1];if(i&&i.shouldReturnFrom(t))return t.tokenize=i.tokenize,t.returnStack.pop(),t.tokenize(e,t);if(e.eatSpace())return null;if(e.eat(`(`))return t.bracketNesting+=1,`punctuation`;if(e.eat(`)`))return--t.bracketNesting,`punctuation`;for(var s in r)if(e.match(r[s]))return s;var c=e.next();if(c===`'`)return a(e,t);if(c===`$`)return f(e,t);if(c===`"`)return o(e,t);if(c===`<`&&e.eat(`#`))return t.tokenize=d,d(e,t);if(c===`#`)return e.skipToEnd(),`comment`;if(c===`@`){var l=e.eat(/["']/);if(l&&e.eol())return t.tokenize=m,t.startQuote=l[0],m(e,t);if(e.eol())return`error`;if(e.peek().match(/[({]/))return`punctuation`;if(e.peek().match(n))return f(e,t)}return`error`}function a(e,t){for(var n;(n=e.peek())!=null;)if(e.next(),n===`'`&&!e.eat(`'`))return t.tokenize=i,`string`;return`error`}function o(e,t){for(var n;(n=e.peek())!=null;){if(n===`$`)return t.tokenize=s,`string`;if(e.next(),n==="`")e.next();else if(n===`"`&&!e.eat(`"`))return t.tokenize=i,`string`}return`error`}function s(e,t){return u(e,t,o)}function c(e,t){return t.tokenize=m,t.startQuote=`"`,m(e,t)}function l(e,t){return u(e,t,c)}function u(e,t,n){if(e.match(`$(`)){var r=t.bracketNesting;return t.returnStack.push({shouldReturnFrom:function(e){return e.bracketNesting===r},tokenize:n}),t.tokenize=i,t.bracketNesting+=1,`punctuation`}return e.next(),t.returnStack.push({shouldReturnFrom:function(){return!0},tokenize:n}),t.tokenize=f,t.tokenize(e,t)}function d(e,t){for(var n=!1,r;(r=e.next())!=null;){if(n&&r==`>`){t.tokenize=i;break}n=r===`#`}return`comment`}function f(e,t){var r=e.peek();return e.eat(`{`)?(t.tokenize=p,p(e,t)):r!=null&&r.match(n)?(e.eatWhile(n),t.tokenize=i,`variable`):(t.tokenize=i,`error`)}function p(e,t){for(var n;(n=e.next())!=null;)if(n===`}`){t.tokenize=i;break}return`variable`}function m(e,t){var n=t.startQuote;if(e.sol()&&e.match(RegExp(n+`@`)))t.tokenize=i;else if(n===`"`)for(;!e.eol();){var r=e.peek();if(r===`$`)return t.tokenize=l,`string`;e.next(),r==="`"&&e.next()}else e.skipToEnd();return`string`}var h={name:`powershell`,startState:function(){return{returnStack:[],bracketNesting:0,tokenize:i}},token:function(e,t){return t.tokenize(e,t)},languageData:{commentTokens:{line:`#`,block:{open:`<#`,close:`#>`}}}};export{h as powerShell};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){var t=`error`;function n(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`,`i`)}var r=RegExp(`^[\\+\\-\\*/&\\\\\\^<>=]`),i=RegExp(`^((<>)|(<=)|(>=))`),a=RegExp(`^[\\.,]`),o=RegExp(`^[\\(\\)]`),s=RegExp(`^[A-Za-z][_A-Za-z0-9]*`),c=[`class`,`sub`,`select`,`while`,`if`,`function`,`property`,`with`,`for`],l=[`else`,`elseif`,`case`],u=[`next`,`loop`,`wend`],d=n([`and`,`or`,`not`,`xor`,`is`,`mod`,`eqv`,`imp`]),f=[`dim`,`redim`,`then`,`until`,`randomize`,`byval`,`byref`,`new`,`property`,`exit`,`in`,`const`,`private`,`public`,`get`,`set`,`let`,`stop`,`on error resume next`,`on error goto 0`,`option explicit`,`call`,`me`],p=[`true`,`false`,`nothing`,`empty`,`null`],m=`abs.array.asc.atn.cbool.cbyte.ccur.cdate.cdbl.chr.cint.clng.cos.csng.cstr.date.dateadd.datediff.datepart.dateserial.datevalue.day.escape.eval.execute.exp.filter.formatcurrency.formatdatetime.formatnumber.formatpercent.getlocale.getobject.getref.hex.hour.inputbox.instr.instrrev.int.fix.isarray.isdate.isempty.isnull.isnumeric.isobject.join.lbound.lcase.left.len.loadpicture.log.ltrim.rtrim.trim.maths.mid.minute.month.monthname.msgbox.now.oct.replace.rgb.right.rnd.round.scriptengine.scriptenginebuildversion.scriptenginemajorversion.scriptengineminorversion.second.setlocale.sgn.sin.space.split.sqr.strcomp.string.strreverse.tan.time.timer.timeserial.timevalue.typename.ubound.ucase.unescape.vartype.weekday.weekdayname.year`.split(`.`),h=`vbBlack.vbRed.vbGreen.vbYellow.vbBlue.vbMagenta.vbCyan.vbWhite.vbBinaryCompare.vbTextCompare.vbSunday.vbMonday.vbTuesday.vbWednesday.vbThursday.vbFriday.vbSaturday.vbUseSystemDayOfWeek.vbFirstJan1.vbFirstFourDays.vbFirstFullWeek.vbGeneralDate.vbLongDate.vbShortDate.vbLongTime.vbShortTime.vbObjectError.vbOKOnly.vbOKCancel.vbAbortRetryIgnore.vbYesNoCancel.vbYesNo.vbRetryCancel.vbCritical.vbQuestion.vbExclamation.vbInformation.vbDefaultButton1.vbDefaultButton2.vbDefaultButton3.vbDefaultButton4.vbApplicationModal.vbSystemModal.vbOK.vbCancel.vbAbort.vbRetry.vbIgnore.vbYes.vbNo.vbCr.VbCrLf.vbFormFeed.vbLf.vbNewLine.vbNullChar.vbNullString.vbTab.vbVerticalTab.vbUseDefault.vbTrue.vbFalse.vbEmpty.vbNull.vbInteger.vbLong.vbSingle.vbDouble.vbCurrency.vbDate.vbString.vbObject.vbError.vbBoolean.vbVariant.vbDataObject.vbDecimal.vbByte.vbArray`.split(`.`),g=[`WScript`,`err`,`debug`,`RegExp`],_=[`description`,`firstindex`,`global`,`helpcontext`,`helpfile`,`ignorecase`,`length`,`number`,`pattern`,`source`,`value`,`count`],v=[`clear`,`execute`,`raise`,`replace`,`test`,`write`,`writeline`,`close`,`open`,`state`,`eof`,`update`,`addnew`,`end`,`createobject`,`quit`],y=[`server`,`response`,`request`,`session`,`application`],b=[`buffer`,`cachecontrol`,`charset`,`contenttype`,`expires`,`expiresabsolute`,`isclientconnected`,`pics`,`status`,`clientcertificate`,`cookies`,`form`,`querystring`,`servervariables`,`totalbytes`,`contents`,`staticobjects`,`codepage`,`lcid`,`sessionid`,`timeout`,`scripttimeout`],x=[`addheader`,`appendtolog`,`binarywrite`,`end`,`flush`,`redirect`,`binaryread`,`remove`,`removeall`,`lock`,`unlock`,`abandon`,`getlasterror`,`htmlencode`,`mappath`,`transfer`,`urlencode`],S=v.concat(_);g=g.concat(h),e.isASP&&(g=g.concat(y),S=S.concat(x,b));var C=n(f),w=n(p),T=n(m),E=n(g),D=n(S),O=`"`,k=n(c),A=n(l),j=n(u),M=n([`end`]),N=n([`do`]),P=n([`on error resume next`,`exit`]),F=n([`rem`]);function I(e,t){t.currentIndent++}function L(e,t){t.currentIndent--}function R(e,n){if(e.eatSpace())return null;if(e.peek()===`'`||e.match(F))return e.skipToEnd(),`comment`;if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var c=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(c=!0),c)return e.eat(/J/i),`number`;var l=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?l=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),l=!0):e.match(/^0(?![\dx])/i)&&(l=!0),l)return e.eat(/L/i),`number`}return e.match(O)?(n.tokenize=z(e.current()),n.tokenize(e,n)):e.match(i)||e.match(r)||e.match(d)?`operator`:e.match(a)?null:e.match(o)?`bracket`:e.match(P)?(n.doInCurrentLine=!0,`keyword`):e.match(N)?(I(e,n),n.doInCurrentLine=!0,`keyword`):e.match(k)?(n.doInCurrentLine?n.doInCurrentLine=!1:I(e,n),`keyword`):e.match(A)?`keyword`:e.match(M)?(L(e,n),L(e,n),`keyword`):e.match(j)?(n.doInCurrentLine?n.doInCurrentLine=!1:L(e,n),`keyword`):e.match(C)?`keyword`:e.match(w)?`atom`:e.match(D)?`variableName.special`:e.match(T)||e.match(E)?`builtin`:e.match(s)?`variable`:(e.next(),t)}function z(e){var t=e.length==1,n=`string`;return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=R,n;r.eat(/['"]/)}return t&&(i.tokenize=R),n}}function B(e,n){var r=n.tokenize(e,n),i=e.current();return i===`.`?(r=n.tokenize(e,n),i=e.current(),r&&(r.substr(0,8)===`variable`||r===`builtin`||r===`keyword`)?((r===`builtin`||r===`keyword`)&&(r=`variable`),S.indexOf(i.substr(1))>-1&&(r=`keyword`),r):t):r}return{name:`vbscript`,startState:function(){return{tokenize:R,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,t){e.sol()&&(t.currentIndent+=t.nextLineIndent,t.nextLineIndent=0,t.doInCurrentLine=0);var n=B(e,t);return t.lastToken={style:n,content:e.current()},n===null&&(n=null),n},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,``);return r.match(j)||r.match(M)||r.match(A)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit}}}var t=e({});e({isASP:!0});export{t as vbScript};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`comment`,t=`string`,n=`symbol`,r=`atom`,i=`number`,a=`bracket`;function o(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var s=o(`λ case-lambda call/cc class cond-expand define-class define-values exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax define-macro defmacro delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci<? char-ci=? char-ci>=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char<? char=? char>=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt #f floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci<? string-ci=? string-ci>=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string<? string=? string>=? string>? string? substring symbol->string symbol? #t tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?`),c=o(`define let letrec let* lambda define-macro defmacro let-syntax letrec-syntax let-values let*-values define-syntax syntax-rules define-values when unless`);function l(e,t,n){this.indent=e,this.type=t,this.prev=n}function u(e,t,n){e.indentStack=new l(t,n,e.indentStack)}function d(e){e.indentStack=e.indentStack.prev}var f=new RegExp(/^(?:[-+]i|[-+][01]+#*(?:\/[01]+#*)?i|[-+]?[01]+#*(?:\/[01]+#*)?@[-+]?[01]+#*(?:\/[01]+#*)?|[-+]?[01]+#*(?:\/[01]+#*)?[-+](?:[01]+#*(?:\/[01]+#*)?)?i|[-+]?[01]+#*(?:\/[01]+#*)?)(?=[()\s;"]|$)/i),p=new RegExp(/^(?:[-+]i|[-+][0-7]+#*(?:\/[0-7]+#*)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?@[-+]?[0-7]+#*(?:\/[0-7]+#*)?|[-+]?[0-7]+#*(?:\/[0-7]+#*)?[-+](?:[0-7]+#*(?:\/[0-7]+#*)?)?i|[-+]?[0-7]+#*(?:\/[0-7]+#*)?)(?=[()\s;"]|$)/i),m=new RegExp(/^(?:[-+]i|[-+][\da-f]+#*(?:\/[\da-f]+#*)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?@[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?[-+](?:[\da-f]+#*(?:\/[\da-f]+#*)?)?i|[-+]?[\da-f]+#*(?:\/[\da-f]+#*)?)(?=[()\s;"]|$)/i),h=new RegExp(/^(?:[-+]i|[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)i|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)@[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)|[-+]?(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)[-+](?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*)?i|(?:(?:(?:\d+#+\.?#*|\d+\.\d*#*|\.\d+#*|\d+)(?:[esfdl][-+]?\d+)?)|\d+#*\/\d+#*))(?=[()\s;"]|$)/i);function g(e){return e.match(f)}function _(e){return e.match(p)}function v(e,t){return t===!0&&e.backUp(1),e.match(h)}function y(e){return e.match(m)}function b(e,t){for(var n,r=!1;(n=e.next())!=null;){if(n==t.token&&!r){t.state.mode=!1;break}r=!r&&n==`\\`}}var x={name:`scheme`,startState:function(){return{indentStack:null,indentation:0,mode:!1,sExprComment:!1,sExprQuote:!1}},token:function(o,l){if(l.indentStack==null&&o.sol()&&(l.indentation=o.indentation()),o.eatSpace())return null;var f=null;switch(l.mode){case`string`:b(o,{token:`"`,state:l}),f=t;break;case`symbol`:b(o,{token:`|`,state:l}),f=n;break;case`comment`:for(var p,m=!1;(p=o.next())!=null;){if(p==`#`&&m){l.mode=!1;break}m=p==`|`}f=e;break;case`s-expr-comment`:if(l.mode=!1,o.peek()==`(`||o.peek()==`[`)l.sExprComment=0;else{o.eatWhile(/[^\s\(\)\[\]]/),f=e;break}default:var h=o.next();if(h==`"`)l.mode=`string`,f=t;else if(h==`'`)o.peek()==`(`||o.peek()==`[`?(typeof l.sExprQuote!=`number`&&(l.sExprQuote=0),f=r):(o.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),f=r);else if(h==`|`)l.mode=`symbol`,f=n;else if(h==`#`){if(o.eat(`|`))l.mode=`comment`,f=e;else if(o.eat(/[tf]/i))f=r;else if(o.eat(`;`))l.mode=`s-expr-comment`,f=e;else{var x=null,S=!1,C=!0;o.eat(/[ei]/i)?S=!0:o.backUp(1),o.match(/^#b/i)?x=g:o.match(/^#o/i)?x=_:o.match(/^#x/i)?x=y:o.match(/^#d/i)?x=v:o.match(/^[-+0-9.]/,!1)?(C=!1,x=v):S||o.eat(`#`),x!=null&&(C&&!S&&o.match(/^#[ei]/i),x(o)&&(f=i))}}else if(/^[-+0-9.]/.test(h)&&v(o,!0))f=i;else if(h==`;`)o.skipToEnd(),f=e;else if(h==`(`||h==`[`){for(var w=``,T=o.column(),E;(E=o.eat(/[^\s\(\[\;\)\]]/))!=null;)w+=E;w.length>0&&c.propertyIsEnumerable(w)?u(l,T+2,h):(o.eatSpace(),o.eol()||o.peek()==`;`?u(l,T+1,h):u(l,T+o.current().length,h)),o.backUp(o.current().length-1),typeof l.sExprComment==`number`&&l.sExprComment++,typeof l.sExprQuote==`number`&&l.sExprQuote++,f=a}else h==`)`||h==`]`?(f=a,l.indentStack!=null&&l.indentStack.type==(h==`)`?`(`:`[`)&&(d(l),typeof l.sExprComment==`number`&&--l.sExprComment==0&&(f=e,l.sExprComment=!1),typeof l.sExprQuote==`number`&&--l.sExprQuote==0&&(f=r,l.sExprQuote=!1))):(o.eatWhile(/[\w_\-!$%&*+\.\/:<=>?@\^~]/),f=s&&s.propertyIsEnumerable(o.current())?`builtin`:`variable`)}return typeof l.sExprComment==`number`?e:typeof l.sExprQuote==`number`?r:f},indent:function(e){return e.indentStack==null?e.indentation:e.indentStack.indent},languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`"`]},commentTokens:{line:`;;`}}};export{x as scheme};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t={keywords:e(`DEFINITIONS OBJECTS IF DERIVED INFORMATION ACTION REPLY ANY NAMED CHARACTERIZED BEHAVIOUR REGISTERED WITH AS IDENTIFIED CONSTRAINED BY PRESENT BEGIN IMPORTS FROM UNITS SYNTAX MIN-ACCESS MAX-ACCESS MINACCESS MAXACCESS REVISION STATUS DESCRIPTION SEQUENCE SET COMPONENTS OF CHOICE DistinguishedName ENUMERATED SIZE MODULE END INDEX AUGMENTS EXTENSIBILITY IMPLIED EXPORTS`),cmipVerbs:e(`ACTIONS ADD GET NOTIFICATIONS REPLACE REMOVE`),compareTypes:e(`OPTIONAL DEFAULT MANAGED MODULE-TYPE MODULE_IDENTITY MODULE-COMPLIANCE OBJECT-TYPE OBJECT-IDENTITY OBJECT-COMPLIANCE MODE CONFIRMED CONDITIONAL SUBORDINATE SUPERIOR CLASS TRUE FALSE NULL TEXTUAL-CONVENTION`),status:e(`current deprecated mandatory obsolete`),tags:e(`APPLICATION AUTOMATIC EXPLICIT IMPLICIT PRIVATE TAGS UNIVERSAL`),storage:e(`BOOLEAN INTEGER OBJECT IDENTIFIER BIT OCTET STRING UTCTime InterfaceIndex IANAifType CMIP-Attribute REAL PACKAGE PACKAGES IpAddress PhysAddress NetworkAddress BITS BMPString TimeStamp TimeTicks TruthValue RowStatus DisplayString GeneralString GraphicString IA5String NumericString PrintableString SnmpAdminString TeletexString UTF8String VideotexString VisibleString StringStore ISO646String T61String UniversalString Unsigned32 Integer32 Gauge Gauge32 Counter Counter32 Counter64`),modifier:e(`ATTRIBUTE ATTRIBUTES MANDATORY-GROUP MANDATORY-GROUPS GROUP GROUPS ELEMENTS EQUALITY ORDERING SUBSTRINGS DEFINED`),accessTypes:e(`not-accessible accessible-for-notify read-only read-create read-write`),multiLineStrings:!0};function n(e){var n=e.keywords||t.keywords,r=e.cmipVerbs||t.cmipVerbs,i=e.compareTypes||t.compareTypes,a=e.status||t.status,o=e.tags||t.tags,s=e.storage||t.storage,c=e.modifier||t.modifier,l=e.accessTypes||t.accessTypes,u=e.multiLineStrings||t.multiLineStrings,d=e.indentStatements!==!1,f=/[\|\^]/,p;function m(e,t){var u=e.next();if(u==`"`||u==`'`)return t.tokenize=h(u),t.tokenize(e,t);if(/[\[\]\(\){}:=,;]/.test(u))return p=u,`punctuation`;if(u==`-`&&e.eat(`-`))return e.skipToEnd(),`comment`;if(/\d/.test(u))return e.eatWhile(/[\w\.]/),`number`;if(f.test(u))return e.eatWhile(f),`operator`;e.eatWhile(/[\w\-]/);var d=e.current();return n.propertyIsEnumerable(d)?`keyword`:r.propertyIsEnumerable(d)?`variableName`:i.propertyIsEnumerable(d)?`atom`:a.propertyIsEnumerable(d)?`comment`:o.propertyIsEnumerable(d)?`typeName`:s.propertyIsEnumerable(d)||c.propertyIsEnumerable(d)||l.propertyIsEnumerable(d)?`modifier`:`variableName`}function h(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){var o=t.peek();o&&(o=o.toLowerCase(),(o==`b`||o==`h`||o==`o`)&&t.next()),a=!0;break}r=!r&&i==`\\`}return(a||!(r||u))&&(n.tokenize=null),`string`}}function g(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function _(e,t,n){var r=e.indented;return e.context&&e.context.type==`statement`&&(r=e.context.indented),e.context=new g(r,t,n,null,e.context)}function v(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}return{name:`asn1`,startState:function(){return{tokenize:null,context:new g(-2,0,`top`,!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align??(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;p=null;var r=(t.tokenize||m)(e,t);if(r==`comment`)return r;if(n.align??(n.align=!0),(p==`;`||p==`:`||p==`,`)&&n.type==`statement`)v(t);else if(p==`{`)_(t,e.column(),`}`);else if(p==`[`)_(t,e.column(),`]`);else if(p==`(`)_(t,e.column(),`)`);else if(p==`}`){for(;n.type==`statement`;)n=v(t);for(n.type==`}`&&(n=v(t));n.type==`statement`;)n=v(t)}else p==n.type?v(t):d&&((n.type==`}`||n.type==`top`)&&p!=`;`||n.type==`statement`&&p==`newstatement`)&&_(t,e.column(),`statement`);return t.startOfLine=!1,r},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:`--`}}}}export{n as asn1};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e,o as t,x as n}from"./CX-xckzu.js";function r(e,t,n=0){return{w:e,h:t,kind:n,pin:0,hint:NaN,key:NaN,span:0,x:0,y:0,rank:0}}function i(e,t,n=1,r=0,i=0){return{tail:e,head:t,minlen:n,labelW:r,labelH:i,tailDx:0,headDx:0,tailFixed:!1,headFixed:!1,reversed:!1,points:[],labelX:0,labelY:0}}var a=24,o=2e4,s=16,c=8,l=.125,u=3,d=18,f=10,p=14,m=2,h=28,g=12,_=12,v=8,y=4,b=.5,x=.5,S=12,C=40,w=400,T=16,E=new Float64Array(2*T+2),D=new Float64Array(2*T+2);function O(e){return e===1||e===2}function k(e,t,n,r){for(let i=t+1;i<n;i++){let n=e[i],a=r[n],o=i-1;for(;o>=t&&(r[e[o]]>a||r[e[o]]===a&&e[o]>n);)e[o+1]=e[o],o--;e[o+1]=n}}function A(e,t,n,r,i,a){let o=(e,t)=>n[e]<n[t]||n[e]===n[t]&&(i?r[e]>r[t]:r[e]<r[t]);for(let n=0;n<t;n+=8)for(let r=n+1,i=Math.min(t,n+8);r<i;r++){let t=e[r],i=r-1;for(;i>=n&&o(t,e[i]);)e[i+1]=e[i],i--;e[i+1]=t}let s=e,c=a;for(let e=8;e<t;e*=2){for(let n=0;n<t;n+=2*e){let r=Math.min(t,n+e),i=Math.min(t,n+2*e),a=n,l=r,u=n;for(;a<r&&l<i;)c[u++]=o(s[l],s[a])?s[l++]:s[a++];for(;a<r;)c[u++]=s[a++];for(;l<i;)c[u++]=s[l++]}let n=s;s=c,c=n}if(s!==e)for(let n=0;n<t;n++)e[n]=s[n]}function j(e,t,n){let r=e.length;if(r===0)return{width:0,height:0};let i=t.length;if(r===1&&i===0&&e[0].kind===0){let t=e[0];return t.rank=0,t.x=t.w/2,t.y=t.h/2,{width:t.w,height:t.h}}let a=1;if(i>0){let e=new Set;for(let n of t){let t=Math.min(n.tail,n.head),i=Math.max(n.tail,n.head),o=t*r+i;if(n.labelW>0||e.has(o)){a=2;break}e.add(o)}}M(e,t),N(e,t,a);let s=new Int32Array(i),c=0;for(let n=0;n<i;n++){let r=t[n];s[n]=Math.abs(e[r.head].rank-e[r.tail].rank),s[n]>1&&(c+=s[n]-1)}let _=new Uint8Array(i);if(c>o){let e=[];for(let t=0;t<i;t++)s[t]>1&&e.push(t);e.sort((e,t)=>s[t]-s[e]||e-t);for(let t of e){if(c<=o)break;_[t]=1,c-=s[t]-1}}let v=r+c,y=new Float64Array(v),b=new Float64Array(v),x=new Uint8Array(v),S=new Int32Array(v),C=0;for(let t=0;t<r;t++){let n=e[t];y[t]=n.w,b[t]=n.h,x[t]=n.kind,S[t]=n.rank,n.rank>C&&(C=n.rank)}let w=0;for(let e=0;e<i;e++)_[e]||(w+=s[e]);let T=new Int32Array(w),E=new Int32Array(w),D=new Float64Array(w),O=new Float64Array(w),k=new Int32Array(i).fill(-1),A=new Uint8Array(C+1),j=new Int32Array(i).fill(-1),P=!1;for(let t=0;t<r;t++)e[t].span>0&&e[t].kind===0&&(P=!0);let I=P?new Uint8Array(w):void 0,R=P?new Uint8Array(w):void 0,B=new Int32Array(i).fill(-1),ce=new Int32Array(i).fill(-1),V=new Float64Array(v).fill(NaN);for(let t=0;t<r;t++)V[t]=e[t].key;let H=!1;{let e=r,n=0;for(let r=0;r<i;r++){if(_[r])continue;let i=t[r],o=i.reversed?i.head:i.tail,s=i.reversed?i.tail:i.head,c=i.reversed?i.headDx:i.tailDx,l=i.reversed?i.tailDx:i.headDx;(c!==0||l!==0)&&(H=!0);let u=S[o],d=S[s],f=-1;i.labelW>0&&(f=u+(d-u>>1),a===2&&d-u>=4?(f&1)==1&&(f+=i.reversed?1:-1):a===2&&!(f&1)&&(f+=i.reversed?1:-1));let p=o;d-u>1&&(k[r]=e),B[r]=n,I&&!(i.reversed?i.headFixed:i.tailFixed)&&(I[n]=i.reversed?2:1);for(let t=u+1;t<d;t++){let a=e++;S[a]=t,V[a]=V[o]+(V[s]-V[o])*(t-u)/(d-u),t===f?(y[a]=i.labelW,b[a]=i.labelH,x[a]=2,j[r]=a,A[t]|=i.reversed?2:1):x[a]=1,T[n]=p,E[n]=a,D[n]=p===o?c:0,n++,p=a}T[n]=p,E[n]=s,D[n]=p===o?c:0,O[n]=l,R&&!(i.reversed?i.tailFixed:i.headFixed)&&(R[n]=i.reversed?1:2),ce[r]=n,n++}}let le;if(n.groups){let{of:e,parent:a}=n.groups;le=new Int32Array(v);for(let t=0;t<r;t++)le[t]=e[t];let o=e=>{let t=0;for(;e>=0;e=a[e])t++;return t},c=(e,t)=>{let n=o(e),r=o(t);for(;n>r;n--)e=a[e];for(;r>n;r--)t=a[t];for(;e!==t;)e=a[e],t=a[t];return e};for(let n=0;n<i;n++){if(k[n]<0)continue;let r=t[n],i=c(e[r.tail],e[r.head]);for(let e=k[n],t=e+s[n]-1;e<t;e++)le[e]=i}}let U=new Int32Array(v+1),W=new Int32Array(v+1);for(let e=0;e<w;e++)U[T[e]+1]++,W[E[e]+1]++;for(let e=0;e<v;e++)U[e+1]+=U[e],W[e+1]+=W[e];let ue=new Int32Array(w),de=new Int32Array(w);{let e=U.slice(0,v),t=W.slice(0,v);for(let n=0;n<w;n++)ue[e[T[n]]++]=n,de[t[E[n]]++]=n}let G=new Int32Array(C+2);for(let e=0;e<v;e++)G[S[e]+1]++;for(let e=0;e<=C;e++)G[e+1]+=G[e];let K=new Int32Array(v),fe=new Int32Array(v);{let e=new Int32Array(v),t=G.slice(0,C+1);for(let n=0;n<v;n++)e[t[S[n]]++]=n;for(let e=0;e<=C;e++)t[e]=G[e];let n=new Uint8Array(v),r=[];for(let i=0;i<v;i++)if(!n[e[i]])for(r.push(e[i]);r.length>0;){let e=r.pop();if(!n[e]){n[e]=1,K[t[S[e]]++]=e;for(let t=U[e+1]-1;t>=U[e];t--){let e=E[ue[t]];n[e]||r.push(e)}}}}let pe=(e,t)=>{let n=G[e],r=G[e+1];if(r-n<2)return!1;for(let e=n;e<r;e++)if(Number.isNaN(t(K[e])))return!1;let i=Array.from(K.subarray(n,r)),a=new Map;return i.forEach((e,t)=>a.set(e,t)),i.sort((e,n)=>t(e)-t(n)||a.get(e)-a.get(n)),K.set(i,n),!0};for(let e=0;e<=C;e++)pe(e,e=>V[e]);let me=!1;for(let t=0;t<r;t++)e[t].pin!==0&&(me=!0);if(me)for(let t=0;t<=C;t++){let n=Array.from(K.subarray(G[t],G[t+1])),i=new Map;n.forEach((e,t)=>i.set(e,t));let a=t=>t<r?e[t].pin:0;n.sort((e,t)=>a(e)-a(t)||i.get(e)-i.get(t)),K.set(n,G[t])}let he=new Uint8Array(C+1),ge=t=>t<r&&(e[t].kind===3||e[t].kind===4)?e[t].hint:NaN;for(let e of[0,C])pe(e,ge)&&(he[e]=1);let _e=()=>{for(let e=0;e<=C;e++){let t=G[e];for(let n=t,r=G[e+1];n<r;n++)fe[K[n]]=n-t}};_e();let q={n:v,real:r,maxRank:C,W:y,KIND:x,RANK:S,EF:T,ET:E,EFD:D,ETD:O,succStart:U,succE:ue,predStart:W,predE:de,layerStart:G,order:K,pos:fe,offsets:H,fixed:he,GRP:le,groupParent:n.groups?.parent},ve=0,ye=0;if(w>0&&C>0&&([ve,ye]=oe(q,e),_e()),n.orderOnly){let a=se(q,n);for(let t=0;t<r;t++)e[t].x=a[t];for(let e=0;e<i;e++){let n=t[e],r=n.reversed?n.head:n.tail,i=n.reversed?n.tail:n.head,o=[S[r],a[r]];if(!_[e]&&k[e]>=0)for(let t=k[e],n=t+s[e]-1;t<n;t++)o.push(S[t],a[t]);o.push(S[i],a[i]),n.points=o}return{width:0,height:0,crossings:ve,declared:ye}}I&&R&&F(q,e,I,R);let J=se(q,n),Y=re(q);if(I&&R){let r=L(q,I,R);ee(q,e,J,r,n,Y),te(q,e,J,I,R,r,Y),ne(q,J,Y,n);for(let e=0;e<i;e++){if(_[e])continue;let n=t[e],r=D[B[e]],i=O[ce[e]];n.tailDx=n.reversed?i:r,n.headDx=n.reversed?r:i}}let be=new Uint8Array(v);Y&&!n.tracks&&ie(q,J,Y,k,s,n.apart?0:n.edgeSep,be),n.tracks||ae(q,J,k,s,n.edgeSep,be);let xe=new Int32Array(i+1),X=n.tracks||I&&!n.straight?{from:[],to:[],rank:[],lower:[],track:[],levels:[],wide:[]}:void 0,Se=new Int32Array(C+1);if(X){for(let e=0;e<i;e++){if(xe[e]=X.from.length,_[e])continue;let t=k[e],r=!1;for(let i=t,a=t<0?t:t+s[e]-1;i<a;i++){let e=Y!==void 0&&Y[S[i]]===1;!n.tracks&&e!==(be[i]===1)&&(r=!0)}if(r)continue;let i=J[T[B[e]]]+D[B[e]],a=S[T[B[e]]];for(let n=t,r=t<0?t:t+s[e]-1;n<r;n++)Y&&Y[S[n]]||(X.from.push(i),X.to.push(J[n]),X.rank.push(a),X.lower.push(n),i=J[n],a=S[n]);X.from.push(i),X.to.push(J[E[ce[e]]]+O[ce[e]]),X.rank.push(a),X.lower.push(-1)}xe[i]=X.from.length}let Ce=(e,t)=>{let n=!1;for(let r=G[e];r<G[e+1];r++){let e=x[K[r]];if(e===t)n=!0;else if(e!==1)return!1}return n},we=Ce(0,3)?a:0,Te=Ce(C,4)?a:0,Ee=new Float64Array(C+1);for(let e=0;e<w;e++){let t=Math.abs(J[T[e]]+D[e]-J[E[e]]-O[e]);t>Ee[S[T[e]]]&&(Ee[S[T[e]]]=t)}let Z=new Float64Array(C+1),Q=new Float64Array(C+1),De=e=>(e<we||e>=C-Te?n.portSep:n.rankSep)/a,Oe=new Float64Array(C+1);for(let e=0;e<C;e++)Oe[e]=X?De(e):Math.max(De(e),Math.min(u*n.rankSep/a,Ee[e]*l));let ke=new Uint8Array(C+1).fill(1);for(let e=0;e<r;e++)ke[S[e]]=0;for(let e=1;e<C;e++){if(n.tracks||!ke[e]||A[e]!==1&&A[e]!==2)continue;let t=Math.min((n.headRoom??0)/2,Oe[A[e]===1?e-1:e]/2);Oe[e-1]+=A[e]===1?-t:t,Oe[e]+=A[e]===1?t:-t}let Ae=e=>x[e]===1&&ke[S[e]]&&!n.tracks?(Q[S[e]]-Z[S[e]])/4:0,je=n.tracks?d:h,Me=n.tracks?f:g,Ne=n.tracks?p:g,Pe=new Int32Array(C+1);if(X){let e=new Float64Array(C+1);for(let t=0;t<C;t++){if(Y&&Y[t])continue;let n=t+1;for(e[t]=Oe[t];n<C&&Y&&Y[n];)e[t]+=Oe[n++];Pe[t]=n}for(let t=0;t<X.from.length;t++)X.wide.push(+(Math.abs(X.from[t]-X.to[t])>m*e[X.rank[t]]));let t=new Float64Array(C+1);z(X,Se,!n.tracks,e,t);for(let r=0;r<C;r++)Se[r]>0?Oe[r]+=Math.max(0,2*je+(Se[r]-1)*Me-e[r]):t[r]>0&&(Oe[r]+=Math.max(0,Math.min(u*n.rankSep,t[r])-e[r]))}let Fe=0;for(let e=0;e<=C;e++){let t=0;for(let n=G[e];n<G[e+1];n++)b[K[n]]>t&&(t=b[K[n]]);Z[e]=Fe,Q[e]=Fe+t,Fe+=t+Oe[e]}let Ie=Fe,Le=(e,t=X.track[e])=>{let r=X.rank[e],i=Q[r],a=Z[Pe[r]],o=n.tracks?Se[r]:X.levels[e],s=o>1?Math.min(Ne,(a-i-2*je)/(o-1)):0;return(i+a)/2+(t-(o-1)/2)*s},$=1/0,Re=-1/0;for(let e=0;e<v;e++){let t=y[e]/2;J[e]-t<$&&($=J[e]-t),J[e]+t>Re&&(Re=J[e]+t)}let ze=new Uint8Array(C+1),Be=new Uint8Array(C+1);for(let e=0;e<r;e++)x[e]!==0||!I||(W[e+1]>W[e]&&(ze[S[e]]=1),U[e+1]>U[e]&&(Be[S[e]]=1));for(let t=0;t<r;t++){let n=e[t],r=n.rank;n.x=J[t]-$,n.y=x[t]===0&&Be[r]&&!ze[r]?Q[r]-n.h/2:x[t]===0&&ze[r]&&!Be[r]?Z[r]+n.h/2:(Z[r]+Q[r])/2}for(let r=0;r<i;r++){let i=t[r],a=e[i.reversed?i.head:i.tail],o=e[i.reversed?i.tail:i.head],c=[a.x+(i.reversed?i.headDx:i.tailDx),a.y+a.h/2],l=k[r];if(X&&xe[r+1]>xe[r])for(let e=xe[r];e<xe[r+1];e++){if(X.track[e]>=0&&(n.tracks||X.wide[e]===1)){let t=Le(e);c.push(X.from[e]-$,t,X.to[e]-$,t)}else X.track[e]>0&&c.push(X.from[e]-$,Le(e,X.track[e]-1));let t=X.lower[e];t<0||(c.push(J[t]-$,Z[S[t]]+Ae(t)),Q[S[t]]>Z[S[t]]&&c.push(J[t]-$,Q[S[t]]-Ae(t)))}else if(l>=0)for(let e=l,t=l+s[r]-1;e<t;e++){if(be[e])continue;let t=J[e]-$,n=Z[S[e]],r=Q[S[e]];c.push(t,n+Ae(e)),r>n&&c.push(t,r-Ae(e))}if(c.push(o.x+(i.reversed?i.tailDx:i.headDx),o.y-o.h/2),i.reversed)for(let e=0,t=c.length-2;e<t;e+=2,t-=2){let n=c[e],r=c[e+1];c[e]=c[t],c[e+1]=c[t+1],c[t]=n,c[t+1]=r}i.points=c;let u=j[r];u>=0?(i.labelX=J[u]-$,i.labelY=(Z[S[u]]+Q[S[u]])/2):i.labelW>0&&(i.labelX=(c[0]+c[c.length-2])/2,i.labelY=(c[1]+c[c.length-1])/2)}return{width:Re-$,height:Ie}}function M(e,t){let n=e.length,r=t.length,i=new Int32Array(n+1);for(let n=0;n<r;n++){let r=t[n];r.reversed=e[r.head].kind===3||e[r.tail].kind===4,r.reversed||i[r.tail+1]++}for(let e=0;e<n;e++)i[e+1]+=i[e];let a=new Int32Array(i[n]);{let e=i.slice(0,n);for(let n=0;n<r;n++)t[n].reversed||(a[e[t[n].tail]++]=n)}let o=new Uint8Array(n),s=i.slice(0,n),c=[];for(let e=0;e<n;e++)if(o[e]===0)for(c.push(e),o[e]=1;c.length>0;){let e=c[c.length-1];if(s[e]<i[e+1]){let n=t[a[s[e]++]],r=n.head;o[r]===1?n.reversed=!0:o[r]===0&&(o[r]=1,c.push(r))}else o[e]=2,c.pop()}}function N(e,t,n){let r=e.length,i=t.length,a=new Int32Array(i),o=new Int32Array(i),s=new Int32Array(i),c=new Int32Array(r+1),l=new Int32Array(r+1);for(let e=0;e<i;e++){let r=t[e],i=r.reversed?r.head:r.tail,u=r.reversed?r.tail:r.head;a[e]=i,o[e]=u,s[e]=Math.max(1,r.minlen)*n,c[i+1]++,l[u+1]++}for(let e=0;e<r;e++)c[e+1]+=c[e],l[e+1]+=l[e];let u=new Int32Array(i),d=new Int32Array(i);{let e=c.slice(0,r),t=l.slice(0,r);for(let n=0;n<i;n++)u[e[a[n]]++]=n,d[t[o[n]]++]=n}let f=new Int32Array(r),p=new Int32Array(r);for(let e=0;e<r;e++)p[e]=l[e+1]-l[e];let m=new Int32Array(r),h=0;for(let e=0;e<r;e++)p[e]===0&&(m[h++]=e);for(let e=0;e<h;e++){let t=m[e];for(let e=c[t];e<c[t+1];e++){let n=u[e],r=o[n];f[t]+s[n]>f[r]&&(f[r]=f[t]+s[n]),--p[r]===0&&(m[h++]=r)}}for(let e=0;e<8;e++){let e=!1;for(let t=h-1;t>=0;t--){let n=m[t],r=l[n+1]-l[n],i=c[n+1]-c[n];if(r===0&&i===0)continue;let p=-1/0,h=1/0;for(let e=l[n];e<l[n+1];e++){let t=d[e];p=Math.max(p,f[a[t]]+s[t])}for(let e=c[n];e<c[n+1];e++){let t=u[e];h=Math.min(h,f[o[t]]-s[t])}let g=f[n];i>r&&h!==1/0?g=h:r>i&&p!==-1/0&&(g=p),g!==f[n]&&(f[n]=g,e=!0)}if(!e)break}let g=1/0,_=-1/0,v=!1;for(let t=0;t<r;t++){let n=e[t].kind;n===3&&(v=!0),n!==3&&n!==4&&(f[t]<g&&(g=f[t]),f[t]>_&&(_=f[t]))}g===1/0&&(g=0,_=0);for(let t=0;t<r;t++)e[t].kind===3?f[t]=g-n:e[t].kind===4&&(f[t]=_+n);v&&(g-=n);for(let t=0;t<r;t++)e[t].rank=f[t]-g}function P(e,t,n,r,i,a,o){let l=n===0?e.predStart:e.succStart,u=n===0?e.predE:e.succE,d=n===0?e.EF:e.ET,f=e.pos;for(let e=l[t];e<l[t+1];e++)i[u[e]]!==0&&a.push(u[e]);if(a.length<2)return 0;a.sort((e,t)=>f[d[e]]-f[d[t]]||e-t);let p=e=>{let t=0;o[0]=0;for(let n=1;n<a.length;n++){let r=i[a[n]]===i[a[n-1]];o[n]=e(r&&i[a[n]]===1,r),t+=o[n]}return t},m=p(()=>1);if(r/m<c&&(m=p(e=>e?.5:1)),r/m<c&&(m=p((e,t)=>+!t)),m===0)return 0;let h=Math.min(s,r/m);for(let e=1;e<a.length;e++)o[e]*=h;return m*h}function F(e,t,n,r){let{real:i,W:a,EFD:o,ETD:s}=e;for(let c=0;c<i;c++){let i=Math.min(t[c].span,a[c]);if(!(i<=0||t[c].kind!==0))for(let t=0;t<2;t++){let a=[],l=[],u=P(e,c,t,i,t===0?r:n,a,l);if(u===0)continue;let d=t===0?s:o,f=-u/2;for(let e=0;e<a.length;e++)f+=l[e],d[a[e]]=f}}}function I(e,t,n,r){if(!t)return n;let{KIND:i,RANK:a,EF:o,ET:s,succStart:c,succE:l,predStart:u,predE:d}=e;for(let e=0;e<1e5;e++){let e=r===0?o[n]:s[n];if(i[e]!==1||!t[a[e]])break;n=r===0?d[u[e]]:l[c[e]]}return n}function L(e,t,n){let r=[new Int32Array(e.n),new Int32Array(e.n)];for(let i=0;i<e.EF.length;i++)n[i]!==0&&r[0][e.ET[i]]++,t[i]!==0&&r[1][e.EF[i]]++;return r}function R(e,t){return Math.max(.25,Math.min(.5,4*Math.abs(t)/(Math.abs(e)||1)))}function ee(e,t,n,r,i,a){let o=i.edgeSep,{n:s,real:c,maxRank:l,KIND:u,RANK:d,W:f,EF:p,ET:m,EFD:h,ETD:g,succStart:_,succE:v,predStart:y,predE:b,layerStart:x,order:S,pos:C}=e,w=e=>u[e]===2||u[e]===1&&(a===void 0||a[d[e]]!==1),T=(e,i)=>{let a=i===0?p[e]:m[e];return[i===0?n[a]+h[e]:n[a]+g[e],a<c&&t[a].kind===0?r[1-i][a]:0]},E=e=>{let t=x[d[e]],r=t+C[e],a=t=>f[t]/2+f[e]/2+(u[t]===0?i.nodeSep/2+o/2:u[t]===u[e]?o:o/2);return[r>t?n[S[r-1]]+a(S[r-1]):-1/0,r+1<x[d[e]+1]?n[S[r+1]]-a(S[r+1]):1/0]},D=(e,t,n,r,i)=>{let a=(t[1]===n[1]?Math.abs(t[0]-e)<=Math.abs(n[0]-e):t[1]<n[1])?[t[0],n[0]]:[n[0],t[0]];return a.find(e=>e>=r&&e<=i)??Math.max(r,Math.min(i,a[0]))},k=new Uint8Array(s),A=[];for(let t=1;t<l;t++)for(let r=x[t];r<x[t+1];r++){if(!w(S[r])||k[S[r]])continue;let t=S[r];for(;O(u[p[b[y[t]]]]);)t=p[b[y[t]]];let i=t,o=-1/0,s=1/0;A.length=0;for(let e=t;O(u[e]);e=m[v[_[e]]]){if(i=e,!w(e))continue;k[e]=1,A.push(e);let[t,n]=E(e);t>o&&(o=t),n<s&&(s=n)}if(o<=s){let e=D(n[A[0]],T(b[y[t]],0),T(v[_[i]],1),o,s);for(let t of A)n[t]=e}else for(let t of A){let[r,i]=E(t);r>i||(n[t]=D(n[t],T(I(e,a,b[y[t]],0),0),T(I(e,a,v[_[t]],1),1),r,i))}}}function te(e,t,n,r,i,a,o){let{real:c,W:l,EF:u,ET:d,EFD:f,ETD:p,succStart:m,succE:h,predStart:g,predE:_,pos:v}=e,y=(s,m,h,g,_)=>{if(a[m][h]<2)return 0;s=I(e,o,s,m);let v=m===0?u[s]:d[s],y=m===0?n[v]+f[s]:n[v]+p[s];if(_&&Math.abs(y-n[h])<=g/2+x)return Math.max(-g/2,Math.min(g/2,y-n[h]));let b=y,S=0;v<c&&t[v].kind===0&&(m===0?r:i)[s]!==0&&a[1-m][v]>=2&&(S=Math.max(0,Math.min(t[v].span,l[v])),S>0&&(b=n[v]));let w=Math.max(n[h]-g/2,b-S/2),T=Math.min(n[h]+g/2,b+S/2);if(w>T+x){let e=Math.max(0,g/2-C);return Math.max(-e,Math.min(e,y-n[h]))}let E=(n[h]*S+b*g)/(S+g);return Math.max(w,Math.min(T,E))-n[h]},b=[];for(let n=0;n<c;n++){let a=Math.min(t[n].span,l[n]);if(!(a<=0||t[n].kind!==0))for(let t=0;t<2;t++){let o=t===0?u:d,s=t===0?g:m,c=t===0?_:h,l=[],f=[];if(P(e,n,t,a,t===0?i:r,l,f),l.length===0)continue;l.length===1&&(f[0]=0);let p=[];for(let e=s[n];e<s[n+1];e++)p.push(c[e]);p.sort((e,t)=>v[o[e]]-v[o[t]]||e-t),b.push({v:n,side:t,span:a,ids:l,room:f,all:p})}}for(let e=0,t=!0;t&&e<6;e++){t=!1;for(let{v:n,side:a,span:o,ids:c,room:l,all:u}of b){let d=a===0?i:r,m=a===0?p:f,h=0,g=-o/2;for(let r=0;r<=u.length;r++){let i=r<u.length&&d[u[r]]===0;if(r<u.length&&!i)continue;let f=0;for(let e=r-1;e>=0&&d[u[e]]!==0;e--)f++;let p=i?m[u[r]]-s:o/2;if(f>0){let r=[],i=[],s=0;for(let t=0;t<f;t++){t>0&&(s+=l[h+t]),r.push(y(c[h+t],a,n,o,e>0)-s),i.push(1);let u=t>0&&l[h+t]===0;for(;r.length>1&&(u||r[r.length-2]/i[i.length-2]>r[r.length-1]/i[i.length-1]);){u=!1;let e=r.pop(),t=i.pop();r[r.length-1]+=e,i[i.length-1]+=t}}let u=s,d=0;s=0;for(let e=0;e<r.length;e++){let n=p-u<g?(g+p-u)/2:Math.max(g,Math.min(p-u,r[e]/i[e]));for(let r=0;r<i[e];r++,d++)d>0&&(s+=l[h+d]),Math.abs(m[c[h+d]]-n-s)>.01&&(t=!0),m[c[h+d]]=n+s}h+=f}i&&(g=m[u[r]]+s)}}}}function ne(e,t,n,r){let{n:i,KIND:a,RANK:o,EF:s,ET:c,EFD:l,ETD:u,layerStart:d,order:f,pos:p}=e,m=e=>n!==void 0&&a[e]===1&&n[o[e]]===1,h=[],g=[],_=[],v=[];for(let t=0;t<s.length;t++){if(m(s[t]))continue;let r=I(e,n,t,1);h.push(s[t]),g.push(c[r]),_.push(l[t]),v.push(u[r])}let y=e=>t[g[e]]+v[e]-t[h[e]]-_[e],b=new Int32Array(i),x=[];for(let e=0;e<i;e++)b[e]=e,x.push([e]);let C=(e,t)=>{let n=b[e],r=b[t];if(n!==r){x[n].length<x[r].length&&([n,r]=[r,n]);for(let e of x[r])b[e]=n,x[n].push(e);x[r]=[]}},w=[];for(let e=0;e<h.length;e++){let t=Math.abs(y(e));t<.01?C(h[e],g[e]):t<=S&&w.push(e)}if(w.length===0)return;w.sort((e,t)=>Math.abs(y(e))-Math.abs(y(t))||e-t);let T=t=>B(e,r,t),E=(e,n)=>{for(let r of x[e]){let i=d[o[r]],a=d[o[r]+1],s=i+p[r];if(s>i&&b[f[s-1]]!==e&&t[r]+n-t[f[s-1]]<T(r)+T(f[s-1])-.01||s+1<a&&b[f[s+1]]!==e&&t[f[s+1]]-t[r]-n<T(r)+T(f[s+1])-.01)return!1}return!0};for(let e of w){let n=y(e);if(Math.abs(n)<.01){C(h[e],g[e]);continue}if(Math.abs(n)>S||b[h[e]]===b[g[e]])continue;let r=b[h[e]],i=b[g[e]],a=x[r].length<=x[i].length?r:i;for(let o of[a,a===r?i:r]){let i=o===r?n:-n;if(E(o,i)){for(let e of x[o])t[e]+=i;C(h[e],g[e]);break}}}}function re(e){let{maxRank:t,KIND:n,layerStart:r,order:i}=e,a=new Uint8Array(t+1),o=!1;for(let e=1;e<t;e++){let t=r[e+1]>r[e];for(let a=r[e];t&&a<r[e+1];a++)n[i[a]]!==1&&(t=!1);t&&(a[e]=1,o=!0)}return o?a:void 0}function z(e,t,n,r,i){let{from:a,to:o,rank:s,track:c,levels:l,wide:u}=e,d=a.length,f=new Map;for(let e=0;e<d;e++){if(c.push(-1),l.push(0),Math.abs(a[e]-o[e])<x)continue;let t=f.get(s[e]);t?t.push(e):f.set(s[e],[e])}if(f.size===0)return;let p=new Float64Array(d),m=new Float64Array(d);for(let e=0;e<d;e++)p[e]=Math.min(a[e],o[e]),m[e]=Math.max(a[e],o[e]);let h=(e,t)=>+(e>=p[t]-x&&e<=m[t]+x),g=(e,t)=>Math.abs(a[e]-a[t])<x||Math.abs(o[e]-o[t])<x,S=(e,t)=>p[e]<m[t]-x&&p[t]<m[e]-x,C=(e,t)=>S(e,t)&&!g(e,t),O=(e,t)=>S(e,t)||h(o[e],t)+h(a[t],e)+h(o[t],e)+h(a[e],t)>0,k=(e,t)=>h(o[e],t)+h(a[t],e),A=e=>{let t=e.map((e,t)=>t).sort((t,n)=>p[e[t]]-p[e[n]]),n=[];for(let r=0;r<t.length;r++){let i=t[r],a=m[e[i]]+4*x;for(let o=r+1;o<t.length&&p[e[t[o]]]<=a;o++){let e=t[o];n.push(Math.min(i,e),Math.max(i,e))}}return n},j=e=>{e.sort((e,t)=>m[t]-p[t]-(m[e]-p[e])||p[e]-p[t]||e-t);let t=e.length,r=[],i=e.map((e,t)=>t),a=e=>{for(;i[e]!==e;)e=i[e]=i[i[e]];return e},o=t<=w,s=o?A(e):[],u=o?e.map(()=>[]):[];for(let t=0;t<s.length;t+=2){let n=s[t],r=s[t+1];C(e[n],e[r])&&(u[n].push(r),u[r].push(n))}let d=e.map((e,t)=>t);if(o){let n=new Int32Array(t),o=[];for(let e=0;e<t;e++)r.push([]),o.push([]);for(let t=0;t<s.length;t+=2){let c=s[t],l=s[t+1],u=e[c],d=e[l];if(!O(u,d))continue;i[a(c)]=a(l);let f=k(u,d),p=k(d,u);if(f===p)continue;let m=f<p?c:l,h=f<p?l:c;r[h].push(m),o[m].push(h),n[h]++}let c=new Uint8Array(t);d=[];for(let e=0;e<t;e++){let e=-1;for(let r=0;r<t&&!(!c[r]&&((e<0||n[r]<n[e])&&(e=r),n[r]===0));r++);c[e]=1,d.push(e);for(let t of o[e])n[t]--}}let f=new Set,h=[],g=0;for(let t of d){let n=e[t],i=0;for(let n of r[t]??[])c[e[n]]>=i&&(i=c[e[n]]+1);if(o){f.clear();for(let n of u[t])f.add(c[e[n]]);for(;f.has(i);)i++}else{for(;h[i]?.some(e=>C(n,e));)i++;(h[i]??=[]).push(n)}c[n]=i,i>=g&&(g=i+1)}let _=new Int32Array(t).fill(g),v=new Int32Array(t).fill(-1);for(let n=0;n<t;n++){let t=a(n);_[t]=Math.min(_[t],c[e[n]]),v[t]=Math.max(v[t],c[e[n]])}for(let r=0;r<t;r++){let t=a(r);l[e[r]]=v[t]-_[t]+1,n&&(c[e[r]]-=_[t])}return g},M=(e,t,n)=>{let r=R(o[e]-a[e],t);for(let i=0;i<=T;i++){let s=i/T,c=1-s;n[2*i]=a[e]+(o[e]-a[e])*s*s*(3-2*s),n[2*i+1]=t*(3*r*s*c*c+3*(1-r)*s*s*c+s*s*s)}},N=(e,t,n)=>{let r=n*n*1.000000001;for(let i=0;i<=T;i++){let a=e[2*i],o=e[2*i+1];for(let e=0;e<T;e++){let i=t[2*e+2]-t[2*e],s=t[2*e+3]-t[2*e+1],c=Math.max(0,Math.min(1,((a-t[2*e])*i+(o-t[2*e+1])*s)/(i*i+s*s||1))),l=a-t[2*e]-c*i,u=o-t[2*e+1]-c*s;if(l*l+u*u<r&&Math.hypot(l,u)<n)return!0}}return!1},P=(e,t,n,r)=>{let i=Math.max(n/2,n-2*_);return M(e,i,E),M(t,i,D),N(E,D,r)||N(D,E,r)};for(let[e,s]of f){if(!n){t[e]=j(s);continue}if(s.length>w)continue;let d=s.filter(e=>u[e]===1);j(d);let f=new Set(d.filter(e=>l[e]>1)),h=A(s);for(let t=0;t<h.length;t+=2){let n=s[h[t]],i=s[h[t+1]];f.has(n)&&f.has(i)||!C(n,i)||a[n]<o[n]!=a[i]<o[i]||P(n,i,r[e],u[n]===1||u[i]===1?v:y)&&f.add(n).add(i)}for(let e of d)c[e]=-1,l[e]=0;if(f.size===0)continue;let _=0,x=0,T=new Set;for(let e=0;e<h.length;e+=2){let t=s[h[e]],n=s[h[e+1]];if(f.has(t)&&f.has(n)){if(!S(t,n))continue;a[t]<o[t]==a[n]<o[n]?g(t,n)||x++:_++}else(f.has(t)||f.has(n))&&O(t,n)&&T.add(t).add(n)}if(_>x){for(let t of s)(m[t]-p[t])*b>i[e]&&(i[e]=(m[t]-p[t])*b);continue}let E=s.filter(e=>f.has(e)||u[e]!==1&&T.has(e));j(E);let D=0;for(let e of E)l[e]>D&&(D=l[e]);t[e]=D}}function ie(e,t,n,r,i,a,o){let{maxRank:s,EF:c,ET:l,EFD:u,ETD:d,succStart:f,succE:p,predStart:m,predE:h,layerStart:g,order:_}=e,v=new Float64Array(t.length),y=new Float64Array(t.length),b=new Float64Array(t.length);for(let a=0;a<r.length;a++){let o=r[a];if(o<0)continue;let s=o+i[a]-1,g=e.RANK[o];for(let e=o;e<s;e++){if(!n[g+e-o])continue;let r=e;for(;r+1<s&&n[g+r+1-o];)r++;let i=h[m[e]],a=p[f[r]],_=t[c[i]]+u[i],x=t[l[a]]+d[a],S=r-e+2;for(let t=e;t<=r;t++)v[t]=_+(x-_)*(t-e+1)/S,y[t]=_,b[t]=x;e=r}}let x=[];for(let r=1;r<s;r++){if(!n[r])continue;let i=g[r],s=g[r+1],c=Array.from(_.subarray(i,s)).sort((e,t)=>y[e]-y[t]||b[e]-b[t]||e-t);for(let n=0;n<c.length;){x.length=0;let r=n;for(;r<c.length&&Math.abs(y[c[r]]-y[c[n]])<1&&Math.abs(b[c[r]]-b[c[n]])<1;r++)x.push(c[r]);x.sort((t,n)=>e.pos[t]-e.pos[n]);for(let e=0;e<x.length;e++){let n=x[e];t[n]=v[n]+(e-(x.length-1)/2)*a,(x.length===1||a===0)&&(o[n]=1)}n=r}}}function ae(e,t,n,r,i,a){let{maxRank:o,W:s,KIND:c,RANK:l,EF:u,ET:d,EFD:f,ETD:p,succStart:m,succE:h,predStart:g,predE:_,layerStart:v,order:y}=e,b=new Uint8Array(o+1),x=!1;for(let e=1;e<o;e++){let t=!1,n=!1;for(let r=v[e];r<v[e+1];r++){let e=c[y[r]];e===2?t=!0:e!==1&&(n=!0)}t&&!n&&(b[e]=1,x=!0)}if(x)for(let e=0;e<n.length;e++){let o=n[e];if(!(o<0))for(let n=o,x=o+r[e]-1;n<x;n++){if(c[n]!==1||!b[l[n]])continue;let e=n,r=n;for(;e>o&&a[e-1];)e--;for(;r+1<x&&a[r+1];)r++;let S=_[g[e]],C=h[m[r]],w=t[u[S]]+f[S],T=t[d[C]]+p[C],E=Math.min(w,T)-i,D=Math.max(w,T)+i,O=!0,k=l[n];for(let e=v[k];O&&e<v[k+1];e++){let n=y[e];c[n]===2&&t[n]+s[n]/2>E&&t[n]-s[n]/2<D&&(O=!1)}if(!O)continue;a[n]=1;let A=r-e+2;for(let n=e;n<=r;n++)t[n]=w+(T-w)*(n-e+1)/A}}}function oe(e,t){let{n,real:r,maxRank:i,W:o,EF:s,ET:c,EFD:l,ETD:u,succStart:d,succE:f,predStart:p,predE:m,layerStart:h,order:g,pos:_,offsets:v,fixed:y,GRP:b,groupParent:x}=e,S=0;for(let e=0;e<=i;e++)S=Math.max(S,h[e+1]-h[e]);if(S<2)return[0,0];let C=v?new Int32Array(s.length):void 0,w=new Int32Array(C?s.length:0),T=new Int32Array(C?n:0),E=C?f.slice():f,D=new Uint8Array(C?n:0);if(C){let e=m.slice(),t=(e,t,n,r)=>{for(let i=t+1;i<n;i++)if(r[e[i]]!==r[e[t]])return e.subarray(t,n).sort((e,t)=>r[e]-r[t]),!0;return!1};for(let r=0;r<n;r++){if(T[r]=1,t(e,p[r],p[r+1],u))for(let t=p[r]+1;t<p[r+1];t++)u[e[t]]!==u[e[t-1]]&&T[r]++,w[e[t]]=T[r]-1;t(E,d[r],d[r+1],l)&&(D[r]=1)}}let O=1;for(;O<(C?S+s.length:S);)O<<=1;let k=new Int32Array(2*O),j=new Int32Array(s.length),M=()=>{let e=0;for(let t=0;t<i;t++){let n=h[t+2]-h[t+1];if(C){let e=0;for(let n=h[t+1];n<h[t+2];n++){let t=g[n];for(let n=p[t];n<p[t+1];n++)C[m[n]]=e+w[m[n]];e+=T[t]}n=e}if(n<2)continue;let r=0;for(let e=h[t];e<h[t+1];e++){let t=g[e],n=d[t],i=d[t+1],a=r;for(let e=n;e<i;e++)j[r++]=C?C[E[e]]:_[c[f[e]]];let o=r-a;if(!(o<2)){if(C&&D[t])for(let e=a+1;e<r;e++){let t=j[e],r=l[E[n+e-a]],i=e-1;for(;i>=a&&l[E[n+i-a]]===r&&j[i]>t;)j[i+1]=j[i],i--;j[i+1]=t}else if(o<=12)for(let e=a+1;e<r;e++){let t=j[e],n=e-1;for(;n>=a&&j[n]>t;)j[n+1]=j[n],n--;j[n+1]=t}else j.subarray(a,r).sort()}}if(r<2)continue;let i=1;for(;i<n;)i<<=1;k.fill(0,0,2*i);for(let t=0;t<r;t++){let n=j[t]+i;for(k[n]++;n>1;)!(n&1)&&(e+=k[n+1]),n>>=1,k[n]++}}return e},N=M(),P=new Float64Array(n),F=new Int32Array(S),I=new Int32Array(S),L=x?x.length:0,R=new Int32Array(L);for(let e=0;e<L;e++)for(let t=e;t>=0;t=x[t])R[e]++;let ee=new Float64Array(L),te=new Int32Array(L),ne=new Int32Array(L),re=(e,t)=>{let r=h[e],i=h[e+1];for(let e=r;e<i;e++)for(let t=b[g[e]];t>=0;t=x[t])ee[t]=0,te[t]=0;for(let e=r;e<i;e++){let n=g[e];for(let r=b[n];r>=0;r=x[r])te[r]===0&&(ne[r]=e),ee[r]+=t[n],te[r]++}let a=e=>e>=n?ee[e-n]/te[e-n]:t[e],o=e=>e>=n?ne[e-n]:r+_[e],s=Array.from(g.subarray(r,i)).sort((e,t)=>{let r=e,i=t,s=b[e],c=b[t],l=s<0?0:R[s],u=c<0?0:R[c];for(;l>u;l--)r=n+s,s=x[s];for(;u>l;u--)i=n+c,c=x[c];for(;s!==c;)r=n+s,s=x[s],i=n+c,c=x[c];return a(r)-a(i)||o(r)-o(i)});g.set(s,r);for(let e=r;e<i;e++)_[g[e]]=e-r};if(b){let e=new Float64Array(n);for(let t=0;t<=i;t++){for(let n=h[t];n<h[t+1];n++)e[g[n]]=n-h[t];re(t,e)}}let z=b?M():N;if(z===0)return[0,N];let ie=g.slice(),ae=Math.min(z,N),oe=(e,n)=>{let a=e?p:d,x=e?m:f,S=e?s:c,C=e?l:u;for(let s=1;s<=i;s++){let c=e?s:i-s;if(y[c])continue;let l=h[c],u=h[c+1],d=0;for(let n=l;n<u;n++){let i=g[n],s=i<r?t[i].pin:0;if(s!==0){P[i]=s*1e9,F[d++]=i;continue}let f=a[i],p=a[i+1];if(f===p){if(b){let t=e?h[c]-h[c-1]:h[c+2]-h[c+1];P[i]=(n-l)*t/(u-l);continue}P[i]=-1;continue}let m=0;for(let e=f;e<p;e++){let t=S[x[e]];m+=_[t],v&&o[t]>0&&(m+=C[x[e]]/o[t])}P[i]=m/(p-f),F[d++]=i}if(b){re(c,P);continue}if(d<2)continue;A(F,d,P,_,n,I);let f=0;for(let e=l;e<u;e++)P[g[e]]!==-1&&(g[e]=F[f++]);for(let e=l;e<u;e++)_[g[e]]=e-l}},B=()=>{let e=0;for(let t=0;t<=i;t++)for(let n=h[t];n<h[t+1];n++)if(!(g[n]>=r))for(let r=n+1;r<h[t+1];r++)g[r]<g[n]&&e++;return e},se=()=>{for(let e=0;e<=i;e++)for(let t=h[e];t<h[e+1];t++)_[g[t]]=t-h[e]},ce=e=>e<r?t[e].pin:0,V=(e,t)=>{let n=t?s[e]:c[e];return v&&o[n]>0?_[n]+(t?l[e]:u[e])/o[n]:_[n]},H=(e,t)=>{let n=0;for(let r=p[e];r<p[e+1];r++){let e=V(m[r],!0);for(let r=p[t];r<p[t+1];r++)e>V(m[r],!0)&&n++}for(let r=d[e];r<d[e+1];r++){let e=V(f[r],!1);for(let r=d[t];r<d[t+1];r++)e>V(f[r],!1)&&n++}return n},le=()=>{for(let e=0;e<8;e++){let e=!1;for(let t=0;t<=i;t++){if(y[t])continue;let n=h[t];for(let r=n;r+1<h[t+1];r++){let t=g[r],i=g[r+1];ce(t)!==ce(i)||b&&b[t]!==b[i]||H(i,t)>=H(t,i)||(g[r]=i,g[r+1]=t,_[i]=r-n,_[t]=r+1-n,e=!0)}}if(!e)break}},U=g.slice(),W=n<=600,ue=ie,de=1/0;for(let e=0;e<(W?2:1);e++){e>0&&(g.set(U),se());let t=ae,n=U.slice();for(let r=0,i=0;i<4&&r<a;r++,i++){oe((r+e)%2==0,r%4>=2);let a=M();if(a<t&&(t=a,n.set(g),i=0,a===0))break}if(g.set(n),W&&t>0){se(),le();let e=M();e<t&&(t=e,n.set(g))}let r=W?B():0;(e===0||t<z||t===z&&r<de)&&(z=t,ue=n,de=r)}if(g.set(ue),se(),ie.set(ue),b&&(z=M()),!W)return[z,N];for(let e=0;e<r;e++)if(t[e].pin!==0)return[z,N];if(de===0||y[0]||y[i])return[z,N];for(let e=0;e<=i;e++)g.subarray(h[e],h[e+1]).reverse();return se(),(M()>z||B()>=de)&&g.set(ie),[z,N]}function B(e,t,n){return e.W[n]/2+(e.KIND[n]===0?t.nodeSep:t.edgeSep)/2}function se(e,t){let{n,maxRank:r,W:i,KIND:a,EF:o,ET:s,EFD:c,ETD:l,succStart:u,succE:d,predStart:f,predE:p,layerStart:m,order:h,pos:g}=e,_=o.length,v=new Float64Array(n);for(let r=0;r<n;r++)v[r]=B(e,t,r);let y=new Int32Array(_);for(let e=0;e<_;e++)y[e]=g[s[e]];for(let e=0;e<n;e++)u[e+1]-u[e]>1&&k(d,u[e],u[e+1],y);for(let e=0;e<_;e++)y[e]=g[o[e]];for(let e=0;e<n;e++)f[e+1]-f[e]>1&&k(p,f[e],f[e+1],y);let b=new Uint8Array(_);for(let e=1;e<=r;e++){let t=m[e]-m[e-1],n=m[e],r=m[e+1],i=0,s=n;for(let e=n;e<r;e++){let n=h[e],c=-1;if(O(a[n])){let e=o[p[f[n]]];O(a[e])&&(c=e)}let l=c>=0?g[c]:t;if(c>=0||e===r-1){for(let t=s;t<=e;t++){let e=h[t],n=O(a[e]);for(let t=f[e];t<f[e+1];t++){let e=p[t],r=g[o[e]];(r<i||l<r)&&!(n&&O(a[o[e]]))&&(b[e]=1)}}s=e+1,i=l}}}let x=[],S=new Int32Array(n),C=new Int32Array(n),w=new Float64Array(n),T=new Int32Array(n),E=new Int32Array(n),D=new Float64Array(n),A=new Int32Array(n),j=new Int32Array(n+1),M=new Int32Array(n),N=new Int32Array(n),P=new Int32Array(n),F=new Float64Array(n);for(let e=0;e<4;e++){let t=e<2,i=(e&1)==1,a=t?f:u,_=t?p:d,y=t?o:s,O=t?l:c,k=t?c:l;for(let e=0;e<n;e++)S[e]=e,C[e]=e,w[e]=0,A[e]=0,j[e+1]=0,F[e]=0;for(let e=0;e<=r;e++){let n=t?e:r-e,o=m[n],s=m[n+1],c=t?n-1:n+1,l=c>=0&&c<=r?m[c+1]-m[c]-1:0,u=-1;for(let e=i?s-1:o;i?e>=o:e<s;i?e--:e++){let t=h[e],n=a[t],r=a[t+1]-n;if(r===0)continue;let o=n+(r-1>>1),s=n+(r>>1);for(let e=0;e<2&&(e!==1||o!==s);e++){let n=_[e===0===i?s:o],r=y[n],a=i?l-g[r]:g[r];C[t]===t&&u<a&&b[n]===0&&(C[r]=t,C[t]=S[t]=S[r],w[t]=w[r]+k[n]-O[n],u=a)}}}let I=0;for(let e=0;e<=r;e++){let t=m[e],n=m[e+1];for(let e=t+1;e<n;e++){let t=i?h[e]:h[e-1],n=i?h[e-1]:h[e],r=v[t]+v[n];T[I]=S[t],E[I]=S[n],D[I]=i?r-w[t]+w[n]:r+w[t]-w[n],A[S[n]]++,j[S[t]+1]++,I++}}for(let e=0;e<n;e++)j[e+1]+=j[e];for(let e=0;e<n;e++)N[e]=j[e];for(let e=0;e<I;e++)M[N[T[e]]++]=e;let L=0;for(let e=0;e<n;e++)S[e]===e&&A[e]===0&&(P[L++]=e);for(let e=0;e<L;e++){let t=P[e];for(let e=j[t];e<j[t+1];e++){let n=M[e],r=E[n];F[t]+D[n]>F[r]&&(F[r]=F[t]+D[n]),--A[r]===0&&(P[L++]=r)}}for(let e=L-1;e>=0;e--){let t=P[e],n=1/0;for(let e=j[t];e<j[t+1];e++){let t=M[e],r=F[E[t]]-D[t];r<n&&(n=r)}n!==1/0&&n>F[t]&&(F[t]=n)}let R=new Float64Array(n);for(let e=0;e<n;e++)R[e]=(i?-F[S[e]]:F[S[e]])+w[e];x.push(R)}let I=0,L=1/0,R=[],ee=[];for(let e=0;e<4;e++){let t=1/0,r=-1/0,a=x[e];for(let e=0;e<n;e++){let n=i[e]/2;a[e]-n<t&&(t=a[e]-n),a[e]+n>r&&(r=a[e]+n)}R.push(t),ee.push(r),r-t<L&&(L=r-t,I=e)}for(let e=0;e<4;e++){let t=e&1?ee[I]-ee[e]:R[I]-R[e];if(t!==0){let r=x[e];for(let e=0;e<n;e++)r[e]+=t}}let te=new Float64Array(n);for(let e=0;e<n;e++){let t=x[0][e],n=x[1][e],r=x[2][e],i=x[3][e],a;t>n&&(a=t,t=n,n=a),r>i&&(a=r,r=i,i=a),t>r&&(a=t,t=r,r=a),n>i&&(a=n,n=i,i=a),n>r&&(a=n,n=r,r=a),te[e]=(n+r)/2}return te}var ce=12,V=.62,H=6;function le(){let e=new Map;return{add(t,n,r){let i=W(r);n>=0&&i>0&&i+H>(e.get(t*4+n)??0)&&e.set(t*4+n,i+H)},of:(t,n)=>n>=0?e.get(t*4+n)??0:0}}function U(e,t,r,i,a=r>0?r+H:0,o=i>0?i+H:0){let s=t===`linear`,c=t===`step`||t===`stepBefore`||t===`stepAfter`,l=[],u=[],d=[],f=(e,t,n,r)=>Math.abs(e-n)<.01&&Math.abs(t-r)<.01;for(let n=0;n<e.length;n+=3){let r=e[n],i=e[n+1],a=e[n+2],o=l.length-1;if(c&&o>=0&&Math.abs(r-l[o])>=.01&&Math.abs(i-u[o])>=.01){let e=l[o],n=u[o],s=t===`stepBefore`?n:t===`stepAfter`?i:(n+i)/2,c=t===`stepBefore`?e:t===`stepAfter`?r:(e+r)/2,p=a===0?[e,s,r,s]:[c,n,c,i];for(let t=0;t<4;t+=2)f(p[t],p[t+1],e,n)||f(p[t],p[t+1],r,i)||(l.push(p[t]),u.push(p[t+1]),d.push(a))}l.push(r),u.push(i),d.push(a)}let p=l.length-1,m=e=>Math.abs(l[e]-l[e-1])<.01||Math.abs(u[e]-u[e-1])<.01,h=e=>s||m(e),g=(e,t,n)=>{if(!h(Math.max(e,t)))return n===0?[0,Math.sign(u[t]-u[e])||1]:[Math.sign(l[t]-l[e])||1,0];let r=l[t]-l[e],i=u[t]-u[e],a=Math.hypot(r,i)||1;return[r/a,i/a]},[_,v]=g(0,1,d[1]),[y,b]=g(p-1,p,d[p]),x=l[0],S=u[0],C=l[p],w=u[p];l[0]+=_*r,u[0]+=v*r,l[p]-=y*i,u[p]-=b*i;let T=e=>Math.abs(l[e]-l[e-1])+Math.abs(u[e]-u[e-1]),E=e=>!s&&e>0&&e<p&&m(e)&&m(e+1)&&T(e)>=.01&&T(e+1)>=.01&&Math.abs(l[e]-l[e-1])<.01!=Math.abs(l[e+1]-l[e])<.01,D=(e,t,n)=>Math.abs(l[e]-l[e-1])*Math.abs(t)+Math.abs(u[e]-u[e-1])*Math.abs(n),O=(e,t,n)=>{let r=Math.min(Math.max(0,e-H-t),n/4);return r+Math.min(e-t-r,(n-r)/4)},k=o>i&&(!h(p)||E(p-1))?O(o,i,D(p,y,b)):0,A=a>r&&(!h(1)||E(1))?O(a,r,D(1,_,v)):0;k>=1&&(l.splice(p,0,l[p]-y*k),u.splice(p,0,u[p]-b*k),d.splice(p,0,d[p]),p++),A>=1&&(l.splice(1,0,l[0]+_*A),u.splice(1,0,u[0]+v*A),d.splice(1,0,d[1]),p++);let j=`M${n(l[0])},${n(u[0])}`,M=l[0],N=u[0],P=(e,t)=>{f(e,t,M,N)||(j+=`L${n(e)},${n(t)}`,M=e,N=t)};for(let e=1;e<=p;e++){let t=l[e],r=u[e];if(!h(e)){let i=d[e]===0,a=i?r-N:t-M,o=Math.abs(a)*R(i?t-M:r-N,a),s=i?0:Math.sign(a)*o,c=i?Math.sign(a)*o:0;j+=`C${n(M+s)},${n(N+c)} ${n(t-s)},${n(r-c)} ${n(t)},${n(r)}`,M=t,N=r;continue}if(!E(e)){if(e<p&&m(e)&&m(e+1)&&(t-l[e-1])*(l[e+1]-t)+(r-u[e-1])*(u[e+1]-r)>0)continue;P(t,r);continue}let i=E(e-1)?T(e)/2:T(e),a=E(e+1)?T(e+1)/2:T(e+1);c&&(i=a=Math.min(ce,i,a));let[o,s]=g(e-1,e,d[e]),[f,_]=g(e,e+1,d[e+1]);P(t-o*i,r-s*i),M=t+f*a,N=r+_*a,j+=c?`Q${n(t)},${n(r)} ${n(M)},${n(N)}`:`C${n(t-o*i*(1-V))},${n(r-s*i*(1-V))} ${n(t+f*a*(1-V))},${n(r+_*a*(1-V))} ${n(M)},${n(N)}`}return{d:j,sx:x,sy:S,sdx:-_,sdy:-v,ex:C,ey:w,edx:y,edy:b}}function W(e){return e===`arrow_point`?7:e===`arrow_circle`?8:e===`arrow_cross`?4:0}function ue(e,t,r,i,a,o){let s=-a,c=i;if(e===`arrow_point`){let e=t-i*8,l=r-a*8,u=3.36;return`<path class="pele-marker" d="M${n(t)},${n(r)}L${n(e+s*u)},${n(l+c*u)}L${n(e-s*u)},${n(l-c*u)}Z" fill="${o}" stroke="none"/>`}if(e===`arrow_circle`)return`<circle class="pele-marker" cx="${n(t-i*4)}" cy="${n(r-a*4)}" r="3.5" fill="${o}" stroke="none"/>`;if(e===`arrow_cross`){let e=t-i*4,o=r-a*4,l=3.5,u=(i+s)*l,d=(a+c)*l,f=(i-s)*l,p=(a-c)*l;return`<path class="pele-marker" d="M${n(e-u)},${n(o-d)}L${n(e+u)},${n(o+d)}M${n(e-f)},${n(o-p)}L${n(e+f)},${n(o+p)}"/>`}return``}function de(r,i,a,o,s,c){let l=i.width+8,u=i.height;return`<g class="pele-edge-label" data-id="${e(r)}"><rect x="${n(a-l/2)}" y="${n(o-u/2)}" width="${n(l)}" height="${n(u)}" rx="3" fill="var(--_bg)"/>`+t(i,a,o,s,c)+`</g>`}function G(e,t,r,i,a,o,s,c){let l=(a?t:r)/2,u=Math.min(l-4,8+i*6),d=o+i*8,f=Math.hypot(d,u)||1,p=(i,o)=>a?`${n(e.x+o)},${n(e.y+r/2+i)}`:`${n(e.x+t/2+i)},${n(e.y+o)}`,m=d/f*s,h=u/f*s;return a?(c.labelX=e.x,c.labelY=e.y+r/2+d+4+c.labelH/2):(c.labelX=e.x+t/2+d+4+c.labelW/2,c.labelY=e.y),{d:`M${p(0,-u)}C${p(d,-u*2)} ${p(d,u*2)} ${p(m,u+h)}`,sx:a?e.x-u:e.x+t/2,sy:a?e.y+r/2:e.y-u,sdx:a?0:-1,sdy:a?-1:0,ex:a?e.x+u:e.x+t/2,ey:a?e.y+r/2:e.y+u,edx:a?-u/f:-d/f,edy:a?-d/f:-u/f}}export{W as a,j as c,le as d,M as f,de as i,U as l,N as n,r as o,R as r,ue as s,i as t,G as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`string`,t=`atom`;function n(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var r=n(`TRUE FALSE ZEROES ZEROS ZERO SPACES SPACE LOW-VALUE LOW-VALUES `),i=n(`ACCEPT ACCESS ACQUIRE ADD ADDRESS ADVANCING AFTER ALIAS ALL ALPHABET ALPHABETIC ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALSO ALTER ALTERNATE AND ANY ARE AREA AREAS ARITHMETIC ASCENDING ASSIGN AT ATTRIBUTE AUTHOR AUTO AUTO-SKIP AUTOMATIC B-AND B-EXOR B-LESS B-NOT B-OR BACKGROUND-COLOR BACKGROUND-COLOUR BEEP BEFORE BELL BINARY BIT BITS BLANK BLINK BLOCK BOOLEAN BOTTOM BY CALL CANCEL CD CF CH CHARACTER CHARACTERS CLASS CLOCK-UNITS CLOSE COBOL CODE CODE-SET COL COLLATING COLUMN COMMA COMMIT COMMITMENT COMMON COMMUNICATION COMP COMP-0 COMP-1 COMP-2 COMP-3 COMP-4 COMP-5 COMP-6 COMP-7 COMP-8 COMP-9 COMPUTATIONAL COMPUTATIONAL-0 COMPUTATIONAL-1 COMPUTATIONAL-2 COMPUTATIONAL-3 COMPUTATIONAL-4 COMPUTATIONAL-5 COMPUTATIONAL-6 COMPUTATIONAL-7 COMPUTATIONAL-8 COMPUTATIONAL-9 COMPUTE CONFIGURATION CONNECT CONSOLE CONTAINED CONTAINS CONTENT CONTINUE CONTROL CONTROL-AREA CONTROLS CONVERTING COPY CORR CORRESPONDING COUNT CRT CRT-UNDER CURRENCY CURRENT CURSOR DATA DATE DATE-COMPILED DATE-WRITTEN DAY DAY-OF-WEEK DB DB-ACCESS-CONTROL-KEY DB-DATA-NAME DB-EXCEPTION DB-FORMAT-NAME DB-RECORD-NAME DB-SET-NAME DB-STATUS DBCS DBCS-EDITED DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT DECLARATIVES DEFAULT DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESCRIBED DESTINATION DETAIL DISABLE DISCONNECT DISPLAY DISPLAY-1 DISPLAY-2 DISPLAY-3 DISPLAY-4 DISPLAY-5 DISPLAY-6 DISPLAY-7 DISPLAY-8 DISPLAY-9 DIVIDE DIVISION DOWN DROP DUPLICATE DUPLICATES DYNAMIC EBCDIC EGI EJECT ELSE EMI EMPTY EMPTY-CHECK ENABLE END END. END-ACCEPT END-ACCEPT. END-ADD END-CALL END-COMPUTE END-DELETE END-DISPLAY END-DIVIDE END-EVALUATE END-IF END-INVOKE END-MULTIPLY END-OF-PAGE END-PERFORM END-READ END-RECEIVE END-RETURN END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING END-WRITE END-XML ENTER ENTRY ENVIRONMENT EOP EQUAL EQUALS ERASE ERROR ESI EVALUATE EVERY EXCEEDS EXCEPTION EXCLUSIVE EXIT EXTEND EXTERNAL EXTERNALLY-DESCRIBED-KEY FD FETCH FILE FILE-CONTROL FILE-STREAM FILES FILLER FINAL FIND FINISH FIRST FOOTING FOR FOREGROUND-COLOR FOREGROUND-COLOUR FORMAT FREE FROM FULL FUNCTION GENERATE GET GIVING GLOBAL GO GOBACK GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES HIGHLIGHT I-O I-O-CONTROL ID IDENTIFICATION IF IN INDEX INDEX-1 INDEX-2 INDEX-3 INDEX-4 INDEX-5 INDEX-6 INDEX-7 INDEX-8 INDEX-9 INDEXED INDIC INDICATE INDICATOR INDICATORS INITIAL INITIALIZE INITIATE INPUT INPUT-OUTPUT INSPECT INSTALLATION INTO INVALID INVOKE IS JUST JUSTIFIED KANJI KEEP KEY LABEL LAST LD LEADING LEFT LEFT-JUSTIFY LENGTH LENGTH-CHECK LESS LIBRARY LIKE LIMIT LIMITS LINAGE LINAGE-COUNTER LINE LINE-COUNTER LINES LINKAGE LOCAL-STORAGE LOCALE LOCALLY LOCK MEMBER MEMORY MERGE MESSAGE METACLASS MODE MODIFIED MODIFY MODULES MOVE MULTIPLE MULTIPLY NATIONAL NATIVE NEGATIVE NEXT NO NO-ECHO NONE NOT NULL NULL-KEY-MAP NULL-MAP NULLS NUMBER NUMERIC NUMERIC-EDITED OBJECT OBJECT-COMPUTER OCCURS OF OFF OMITTED ON ONLY OPEN OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW OWNER PACKED-DECIMAL PADDING PAGE PAGE-COUNTER PARSE PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE PREFIX PRESENT PRINTING PRIOR PROCEDURE PROCEDURE-POINTER PROCEDURES PROCEED PROCESS PROCESSING PROGRAM PROGRAM-ID PROMPT PROTECTED PURGE QUEUE QUOTE QUOTES RANDOM RD READ READY REALM RECEIVE RECONNECT RECORD RECORD-NAME RECORDS RECURSIVE REDEFINES REEL REFERENCE REFERENCE-MONITOR REFERENCES RELATION RELATIVE RELEASE REMAINDER REMOVAL RENAMES REPEATED REPLACE REPLACING REPORT REPORTING REPORTS REPOSITORY REQUIRED RERUN RESERVE RESET RETAINING RETRIEVAL RETURN RETURN-CODE RETURNING REVERSE-VIDEO REVERSED REWIND REWRITE RF RH RIGHT RIGHT-JUSTIFY ROLLBACK ROLLING ROUNDED RUN SAME SCREEN SD SEARCH SECTION SECURE SECURITY SEGMENT SEGMENT-LIMIT SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SHARED SIGN SIZE SKIP1 SKIP2 SKIP3 SORT SORT-MERGE SORT-RETURN SOURCE SOURCE-COMPUTER SPACE-FILL SPECIAL-NAMES STANDARD STANDARD-1 STANDARD-2 START STARTING STATUS STOP STORE STRING SUB-QUEUE-1 SUB-QUEUE-2 SUB-QUEUE-3 SUB-SCHEMA SUBFILE SUBSTITUTE SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED SYSIN SYSOUT TABLE TALLYING TAPE TENANT TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TITLE TO TOP TRAILING TRAILING-SIGN TRANSACTION TYPE TYPEDEF UNDERLINE UNEQUAL UNIT UNSTRING UNTIL UP UPDATE UPON USAGE USAGE-MODE USE USING VALID VALIDATE VALUE VALUES VARYING VLR WAIT WHEN WHEN-COMPILED WITH WITHIN WORDS WORKING-STORAGE WRITE XML XML-CODE XML-EVENT XML-NTEXT XML-TEXT ZERO ZERO-FILL `),a=n(`- * ** / + < <= = > >= `),o={digit:/\d/,digit_or_colon:/[\d:]/,hex:/[0-9a-f]/i,sign:/[+-]/,exponent:/e/i,keyword_char:/[^\s\(\[\;\)\]]/,symbol:/[\w*+\-]/};function s(e,t){return e===`0`&&t.eat(/x/i)?(t.eatWhile(o.hex),!0):((e==`+`||e==`-`)&&o.digit.test(t.peek())&&(t.eat(o.sign),e=t.next()),o.digit.test(e)?(t.eat(e),t.eatWhile(o.digit),t.peek()==`.`&&(t.eat(`.`),t.eatWhile(o.digit)),t.eat(o.exponent)&&(t.eat(o.sign),t.eatWhile(o.digit)),!0):!1)}var c={name:`cobol`,startState:function(){return{indentStack:null,indentation:0,mode:!1}},token:function(n,c){if(c.indentStack==null&&n.sol()&&(c.indentation=6),n.eatSpace())return null;var l=null;switch(c.mode){case`string`:for(var u=!1;(u=n.next())!=null;)if((u==`"`||u==`'`)&&!n.match(/['"]/,!1)){c.mode=!1;break}l=e;break;default:var d=n.next(),f=n.column();if(f>=0&&f<=5)l=`def`;else if(f>=72&&f<=79)n.skipToEnd(),l=`header`;else if(d==`*`&&f==6)n.skipToEnd(),l=`comment`;else if(d==`"`||d==`'`)c.mode=`string`,l=e;else if(d==`'`&&!o.digit_or_colon.test(n.peek()))l=t;else if(d==`.`)l=`link`;else if(s(d,n))l=`number`;else{if(n.current().match(o.symbol))for(;f<71&&n.eat(o.symbol)!==void 0;)f++;l=i&&i.propertyIsEnumerable(n.current().toUpperCase())?`keyword`:a&&a.propertyIsEnumerable(n.current().toUpperCase())?`builtin`:r&&r.propertyIsEnumerable(n.current().toUpperCase())?t:null}}return l},indent:function(e){return e.indentStack==null?e.indentation:e.indentStack.indent}};export{c as cobol};
|